# Chame uma API via HTTP

Toda API do hub é chamada através do mesmo gateway, com a mesma chave e os mesmos headers de resposta.

> Esta página é para desenvolvedores que chamam APIs a partir do próprio código. Está usando um agente de IA? Você não precisa de nada disso: veja [Conectar agentes de IA (MCP)](https://zylalabs.com/pt/docs/mcp).

## Antes da sua primeira chamada

1. Obtenha sua [chave de API](https://zylalabs.com/pt/docs/api-keys).
2. Abra a API no [catálogo](https://zylalabs.com/pt/api-marketplace) e assine um plano (ou inicie o teste gratuito, quando houver um). Chamadas a uma API à qual você não está assinado retornam `401`.

## Formato da URL

```text
https://zylalabs.com/api/{api_id}/{api_name}/{endpoint_id}/{endpoint_name}
```

A página da API monta essa URL para você na seção **Endpoints**, com os parâmetros de cada endpoint e exemplos de código em 15 linguagens de programação (cURL, JavaScript, Node.js, Python, PHP, Java, Go, C# e mais). Copie-a de lá em vez de montá-la manualmente.

## Parâmetros de query (GET)

```bash
curl 'https://zylalabs.com/api/{api_id}/{api_name}/{endpoint_id}/{endpoint_name}?email=john@example.com' \
  -H 'Authorization: Bearer YOUR_API_KEY'
```

```javascript
const res = await fetch(
  'https://zylalabs.com/api/{api_id}/{api_name}/{endpoint_id}/{endpoint_name}?email=john@example.com',
  { headers: { Authorization: `Bearer ${process.env.ZYLA_API_KEY}` } }
);
const data = await res.json();
```

```python
import os, requests

r = requests.get(
    "https://zylalabs.com/api/{api_id}/{api_name}/{endpoint_id}/{endpoint_name}",
    params={"email": "john@example.com"},
    headers={"Authorization": f"Bearer {os.environ['ZYLA_API_KEY']}"},
)
print(r.status_code, r.json())
```

## Corpo JSON (POST)

Use o método mostrado no endpoint. Um método diferente retorna `401` com `Invalid method`.

```bash
curl -X POST 'https://zylalabs.com/api/{api_id}/{api_name}/{endpoint_id}/{endpoint_name}' \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"text": "Hello world"}'
```

## Headers de resposta

Toda resposta bem-sucedida inclui seu uso, para que você possa controlar a taxa do seu lado:

| Cabeçalho | Significado |
|---|---|
| `X-Zyla-API-Calls-Monthly-Used` | Chamadas usadas no ciclo de cobrança atual desta assinatura |
| `X-Zyla-API-Calls-Monthly-Remaining` | Chamadas restantes no ciclo |
| `X-Zyla-API-Calls-Monthly-Limit` | Chamadas incluídas no seu plano |
| `X-Zyla-RateLimit-Remaining` | Requisições restantes no minuto atual |
| `X-Zyla-RateLimit-Reset-Seconds` | Segundos até a janela por minuto ser reiniciada |

O corpo é a resposta do provedor, retornada como está. Para erros levantados pelo próprio gateway (sem assinatura, limites, endpoint desconhecido), veja [Planos, limites e erros](https://zylalabs.com/pt/docs/plans-and-limits).


---
Source: https://zylalabs.com/pt/docs/calling-apis
