📄 Documentação de Webhook - WhatsContábil
Introdução
O sistema pode enviar eventos automaticamente para uma URL configurada nas Configurações de Integração, no campo
Webhook para eventos.
Quando configurado, o sistema fará uma requisição POST para essa URL sempre que alguns eventos da
API Oficial do WhatsApp forem processados.
Formato da Requisição
Endpoint: https://url-do-cliente.com/webhook
Método: POST
Headers
Content-Type: application/json
Corpo
O corpo da requisição sempre será enviado em JSON.
Comportamento do Envio
- Se a URL do webhook não estiver configurada, o sistema ignora o envio.
- Se a URL estiver inválida ou indisponível, o sistema apenas registra um alerta interno e continua o fluxo normal.
- O webhook deve responder com status HTTP
2xxpara ser considerado recebido com sucesso. - Atualmente, não há retentativa automática em caso de falha.
Eventos Enviados
Mensagem recebida
{
"type": "message",
"messageId": "wamid.xxxxx",
"body": "Texto da mensagem",
"messageType": "text"
}
Mensagem de mídia recebida
Para mídias, o campo body recebe a URL ou caminho da mídia.
{
"type": "message",
"messageId": "wamid.xxxxx",
"body": "https://.../arquivo.jpg",
"messageType": "image"
}
Reação em mensagem
{
"type": "reaction",
"messageId": "wamid.xxxxx",
"reaction": "like"
}
Mensagem editada
{
"type": "edit",
"messageId": "wamid.xxxxx",
"editedBody": "Novo texto da mensagem"
}
Mensagem apagada
{
"type": "revoke",
"messageId": "wamid.xxxxx"
}
Atualização de status da mensagem
{
"type": "statuses",
"messageId": "wamid.xxxxx",
"status": "delivered"
}
Tipos e Status
Tipos possíveis em messageType
textbuttonunsupportedsystemdocumentimagevideoaudiosticker
Status possíveis
sentdeliveredreadfailed
Observações Importantes
O envio do webhook não bloqueia o atendimento nem o processamento interno do sistema. Caso o endpoint do cliente esteja fora do ar no momento do evento, o atendimento continuará normalmente.
Recomendamos que o endpoint do cliente retorne rapidamente uma resposta HTTP 2xx após receber o
evento. Qualquer processamento demorado deve ser feito de forma assíncrona do lado do cliente.