Primeiros passos

Do zero à primeira mensagem enviada e recebida, em poucos minutos.

1. Crie a instância

No painel, entre em Instâncias → Criar instância e escolha o tipo:

  • API OnZap: conecta qualquer número lendo um QR Code, como no WhatsApp Web.
  • API oficial (Meta): conecta pela WhatsApp Business Platform, com templates e botões.

A primeira instância da conta tem teste grátis.

2. Conecte o número

Na aba Conexão da instância, abra o WhatsApp no celular em Aparelhos conectados → Conectar um aparelho e leia o QR Code. Quando o status mudar para Conectado, a instância está pronta.

Também dá para conectar pela API:

  • GET /qr-code devolve o QR Code (imagem ou texto) enquanto a instância estiver em SCAN_QR_CODE.
  • POST /pairing-code com {"phoneNumber": "5511999999999"} gera um código de 8 caracteres para digitar no celular, sem QR Code (Aparelhos conectados → Conectar aparelho → Conectar com número de telefone). No Brasil, se o celular disser que o número está errado, peça de novo sem o nono dígito.
  • GET / mostra o connectionStatus: as mensagens só saem em WORKING.

3. Pegue as credenciais

Em Credenciais da API, copie o ID da instância e o token. Veja Autenticação.

4. Envie uma mensagem

curl -X POST "https://app.onzap.io/v1/instances/SUA_INSTANCIA/messages/text" \
  -H "X-Instance-Token: SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"chatId": "5511999999999", "text": "Olá! 👋"}'
// Node.js 18+
const res = await fetch(`https://app.onzap.io/v1/instances/${process.env.ONZAP_INSTANCE}/messages/text`, {
  method: "POST",
  headers: { "X-Instance-Token": process.env.ONZAP_TOKEN, "Content-Type": "application/json" },
  body: JSON.stringify({ chatId: "5511999999999", text: "Olá! 👋" }),
});
console.log(res.status, await res.json());

O chatId aceita o número com DDI e DDD (5511999999999); no Brasil o nono dígito é resolvido sozinho. Veja Conversas e números.

5. Receba as mensagens

Cadastre o endereço do seu sistema como webhook da instância:

curl -X POST "https://app.onzap.io/v1/instances/SUA_INSTANCIA/webhooks" \
  -H "X-Instance-Token: SEU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url": "https://seu-sistema.com.br/webhooks/onzap", "events": ["message.any", "message.ack"]}'

A resposta traz o secret do webhook, que você usa para conferir a assinatura de cada evento.

Ainda não tem um servidor? Na aba Inspetor da instância, um clique cria um webhook apontando para um link da própria OnZap. Mande uma mensagem para o número e veja o evento chegar na hora, como conversa ou como JSON cru.