Webhooks de reação do WhatsApp
whatsapp.reacted é disparado quando um contato reage a uma das suas mensagens, troca o emoji ou remove a reação. Reações enviadas pelo seu número comercial não geram esse evento. Uma assinatura de whatsapp.received não inclui reações, e uma reação não abre uma janela de atendimento ao cliente.
Uma reação é uma anotação em uma mensagem, não uma mensagem própria, então não faz parte da linha do tempo de entrega e não contém os campos que todo evento de mensagem contém.
O payload
whatsapp_id identifica a mensagem que recebeu a reação, não a reação em si, e emoji é a alteração feita pelo usuário. Um usuário que reage, troca o emoji e depois remove a reação produz três eventos naquela mesma mensagem. WhatsApp não envia uma remoção entre os dois primeiros, então uma troca chega como um único evento com o novo emoji.
Exemplo de código
{
"data": {
"emoji": "👍",
"from": { "phone_number": "+14155550100" },
"to": { "phone_number": "+13124495569" },
"whatsapp_id": "wam_01ky8b3xq4gd7pmzn2ka51f7te",
"workspace_id": "ws_01ky7m235keycbnwyajabe1a6b"
},
"timestamp": "2026-07-23T14:52:11.000Z",
"type": "whatsapp.reacted"
}WhatsApp registra o horário da reação com precisão de segundo, então dois desses três eventos podem compartilhar o mesmo timestamp. Ordená-los por esse valor não vai sequenciá-los, e a ordem de entrega também não, já que retentativas a tornam não confiável. Trate a reação que cada evento carrega como a alteração que ele descreve. Não reconstrua a sequência a partir dos eventos nem considere o último a chegar como a reação vigente da mensagem, porque nem os timestamps nem a ordem de chegada sustentam isso. Consulte a mensagem para ver as reações que permanecem: GET /v1/whatsapp/messages/{message_id} retorna uma entrada por remetente em reactions, e o log de reações da mensagem contém todas as alterações.
emoji está presente e é null quando o usuário removeu sua reação, então um null é a remoção em si, não um valor ausente. O emoji é entregue exatamente como WhatsApp o enviou e não é normalizado, então ❤ e ❤️ chegam como strings diferentes.
- from é o contato e to é o seu número WhatsApp. Trate IDs de usuário com escopo de negócio quando o endereço do contato não tiver número de telefone.
Próximos passos
- Eventos de reação: consulte as reações atuais e o log de reações
- Enviar ou remover uma reação
Recursos relacionados
Continue com a documentação, guias e exemplos sobre este tópico. Os recursos estão em inglês.
Assista ao guiaConnecting WhatsApp to Bird: from buying a number to a live channelEntenda o conceitoWhat is the 24-hour customer service window on WhatsApp?Use a ferramentaWhatsApp message builderExplore a funcionalidadeWhatsApp
Experimente na prática e obtenha um resumo de implementação