API oficial (Meta)
Instâncias da WhatsApp Cloud API: conexão, janela de 24 horas, templates e diferenças.
Uma instância da API oficial usa a WhatsApp Business Platform da Meta. As rotas e o formato dos webhooks são os mesmos da API OnZap; o que muda são as regras da Meta.
Conexão
No painel, crie a instância como API oficial (Meta) e conecte de um dos jeitos:
- Com o Facebook: você entra com a conta da empresa na Meta e escolhe o número. Na coexistência, o número continua no app WhatsApp Business do celular e também passa a usar a API.
- Manual: com as credenciais do seu próprio app na Meta (ID da conta do WhatsApp Business, ID do número, token permanente e chave secreta do app).
Janela de 24 horas
Depois da última mensagem do cliente, você tem 24 horas para responder com qualquer tipo de mensagem. Fora dessa janela, a Meta só aceita templates aprovados:
curl -X POST "https://app.onzap.io/v1/instances/SUA_INSTANCIA/messages/template" \
-H "X-Instance-Token: SEU_TOKEN" \
-H "Content-Type: application/json" \
-d '{"chatId": "5511999999999", "template": "pedido_enviado", "language": "pt_BR", "body": ["Maria", "#1234"]}'bodypreenche as variáveis do corpo: lista para{{1}},{{2}}… ou objeto para variáveis nomeadas.headerebuttonspreenchem o cabeçalho e os botões;componentsaceita o formato cru da Cloud API.GET /templateslista os templates da conta;POST /templatescria um novo (a Meta revisa antes de aprovar).- O status da revisão chega no evento
template.status.
Botões e mensagens interativas
POST /messages/buttons: até 3 botões de resposta, ou um único botão de link.POST /messages/list: lista com seções e opções.POST /messages/interactive: o formato interativo da própria Meta, para casos avançados.
O clique do cliente chega como mensagem com type: button_reply ou list_reply, com o botão escolhido em reply.
Diferenças para a API OnZap
- Sem grupos, canais, status e etiquetas. Nessas rotas, a resposta é
501 not_supported_by_provider. - Sem foto de perfil dos contatos: a Meta não fornece.
- BSUID: usuários com nome de usuário podem chegar sem número, como
BR.abc123@bsuid. Responda com o mesmochatId. - Cobrança por mensagem: a Meta cobra as conversas direto na sua conta do WhatsApp Business. O custo de cada
mensagem chega em
payload.pricingno eventomessage.ack. - Qualidade e limites:
GET /phone-numbermostra a qualidade do número e o limite de envio; mudanças chegam no eventophone.quality.