Para automatizar em cima de chamadas, você precisa de webhooks de chamadas do WhatsApp: eventos em tempo real de cada ligação (tocando, atendida, encerrada) e o link da gravação. É assim que seu sistema reage — pop-up de tela, log no CRM, follow-up automático. Veja como fazer com o Hasos.
RECORD com a gravação. Valide a assinatura e aja.Quais eventos você recebe
CALLcomtype: ringing— chamada tocando (entrada ou saída).CALLcomtype: answered— chamada atendida.CALLcomtype: ended— encerrada, com duração.RECORD— gravação pronta, com link de download assinado.
Formato do payload
{
"event": "CALL",
"instanceId": "a1b2c3d4",
"phone": "5511988887777",
"timestamp": "2026-07-02T13:14:41Z",
"data": {
"type": "answered",
"direction": "OUTGOING",
"peerPhone": "5511999999999",
"callId": "00ED0D44…",
"durationSec": 23
}
}Validando a assinatura
Toda entrega traz x-webhook-signature: sha256=<HMAC>. Calcule o HMAC do corpo bruto com o seu secret e compare:
import crypto from "node:crypto";
function verify(rawBody, header, secret) {
const expected = "sha256=" + crypto.createHmac("sha256", secret).update(rawBody).digest("hex");
return crypto.timingSafeEqual(Buffer.from(header), Buffer.from(expected));
}Configurando
curl -X POST https://api.hasos.com.br/v1/instances/INSTANCE_ID/webhook \
-H "x-api-key: hs_live_sua_chave" -H "Content-Type: application/json" \
-d '{"url":"https://seu-app.com/webhooks/hasos"}'O endpoint retorna o secret para validar as assinaturas. Veja também o log de entregas na API.
Automatize em cima das suas chamadas
Webhooks assinados de chamada e gravação, prontos para o seu backend.
Criar conta grátisPerguntas frequentes
Recebo evento de chamada recebida também?
Sim — os eventos cobrem chamadas de entrada e de saída, com o campo direction.
Como garanto que o webhook veio mesmo do Hasos?
Validando o header x-webhook-signature (HMAC SHA-256 do corpo bruto com o seu secret).
