> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ezapi.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Guia rápido

> Crie uma instância, conecte ao WhatsApp e envie a primeira mensagem com a EZ API.

## Visão geral

Este fluxo mostra o caminho mínimo para criar uma instância, conectar o número e enviar a primeira mensagem usando a EZ API.

<Note>
  Você precisa do seu `Client-Token`, disponível no [Dashboard EZ API](https://app.ezapi.com.br).
</Note>

## 1. Crie a instância

A resposta retorna `instanceId` e `instanceToken`, que serão usados nas rotas seguintes.

```bash theme={null}
curl -X POST 'https://api.ezapi.com.br/instances' \
  -H 'Client-Token: SEU_CLIENT_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "Minha Instância",
    "receivedCallbackUrl": "https://example.com/webhooks/received",
    "deliveryCallbackUrl": "https://example.com/webhooks/delivery",
    "disconnectedCallbackUrl": "https://example.com/webhooks/disconnected",
    "connectedCallbackUrl": "https://example.com/webhooks/connected",
    "antiBanEnabled": false
  }'
```

```json theme={null}
{
  "instanceId": "abc1234567890",
  "instanceToken": "tok_a1b2c3d4e5f6",
  "status": "pending"
}
```

<Warning>
  O `instanceToken` é retornado na criação e deve ser armazenado com segurança. Ele faz parte da URL de todas as rotas da instância.
</Warning>

## 2. Conecte o número

Se preferir exibir o QR Code diretamente no navegador ou no painel, use a versão em PNG:

```bash theme={null}
curl -X GET \
  'https://api.ezapi.com.br/instances/abc1234567890/token/tok_a1b2c3d4e5f6/qr-code/image' \
  -H 'Client-Token: SEU_CLIENT_TOKEN' \
  --output qrcode.png
```

Como alternativa, você pode solicitar um código de pareamento por telefone:

```bash theme={null}
curl -X GET \
  'https://api.ezapi.com.br/instances/abc1234567890/token/tok_a1b2c3d4e5f6/phone-code/5511999999999' \
  -H 'Client-Token: SEU_CLIENT_TOKEN'
```

```json theme={null}
{
  "pairingCode": "AZK7-KH39"
}
```

## 3. Verifique o status da conexão

```bash theme={null}
curl -X GET \
  'https://api.ezapi.com.br/instances/abc1234567890/token/tok_a1b2c3d4e5f6/status' \
  -H 'Client-Token: SEU_CLIENT_TOKEN'
```

```json theme={null}
{
  "connected": true,
  "status": "CONNECTED",
  "instanceId": "abc1234567890"
}
```

## 4. Envie a primeira mensagem

```bash theme={null}
curl -X POST \
  'https://api.ezapi.com.br/instances/abc1234567890/token/tok_a1b2c3d4e5f6/send-text' \
  -H 'Client-Token: SEU_CLIENT_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "phone": "5511999999999",
    "message": "Olá. Esta é minha primeira mensagem com a EZ API.",
    "delayMessage": 15
  }'
```

```json theme={null}
{
  "messageId": "3EB047ED70306656281B34",
  "id": "3EB047ED70306656281B34"
}
```

<Note>
  Os envios de mensagens retornam `202 Accepted` quando entram na fila da instância. Use webhooks para acompanhar confirmação, falha e mudanças de status em tempo real.
</Note>

## 5. Configure um webhook de recebimento

```bash theme={null}
curl -X PUT \
  'https://api.ezapi.com.br/instances/abc1234567890/token/tok_a1b2c3d4e5f6/update-webhook-received' \
  -H 'Client-Token: SEU_CLIENT_TOKEN' \
  -H 'Content-Type: application/json' \
  -d '{
    "value": "https://example.com/webhooks/received"
  }'
```

```json theme={null}
{
  "value": "https://example.com/webhooks/received"
}
```

## Próximos passos

<CardGroup cols={2}>
  <Card title="Referência completa" icon="code" href="/api-reference/introduction">
    Consulte a estrutura da API, autenticação, erros e organização final da documentação.
  </Card>

  <Card title="Webhooks" icon="webhook" href="/api-reference/webhooks/overview">
    Veja todos os eventos disponíveis e exemplos reais de payload.
  </Card>

  <Card title="Mensagens" icon="message" href="/api-reference/messages/overview">
    Explore envios de mídia, interativos, listas, enquetes e diagnósticos.
  </Card>

  <Card title="Grupos" icon="users" href="/api-reference/groups/overview">
    Crie grupos e gerencie participantes, links e permissões.
  </Card>
</CardGroup>
