message.status_updated
Enviado toda vez que o status de uma mensagem muda. Cada transição de status gera um evento independente.
Campos do Payload
Status Possíveis
O campo
failureReason é preenchido apenas quando status = "failed". Em todos os outros eventos (delivered, read, clicked, etc.) o campo é null, independentemente de a mensagem ter falhado anteriormente.Fluxos de Eventos por Cenário
RCS — Bloqueado por duplicidade
Quando uma mensagem é bloqueada antes de ser enviada (ex: número já recebeu a mesma mensagem recentemente).RCS — Entrega normal com leitura
RCS — Destinatário clica em botão de ação (openUrl, call)
RCS — Destinatário responde com botão REPLY
RCS — Destinatário responde com texto livre
clicked é acionado por botões do tipo ACTION (openUrl, call). responded é acionado por botões do tipo REPLY ou quando o destinatário digita texto livre. Para todos os demais status (sent, delivered, read, failed), o campo interaction é null.Campo interaction
Presente somente nos eventos clicked e responded.
RCS → Fallback SMS — Dispositivo sem suporte RCS, SMS entregue
Quando o dispositivo não suporta RCS, o provedor automaticamente reenvia via SMS quando o template utilizado na campanha estiver com fallback ativo. O campochannel muda de rcs para sms a partir do evento de fallback.
RCS → Fallback SMS — SMS não entregue pela operadora
Diferença entre sent e carrier-sended (canal SMS)
Implemente seu handler de webhook de forma idempotente. Uma mesma mensagem pode gerar eventos de
sent e carrier-sended em sequência rápida — ambos são válidos e distintos.Eventos de Resposta do Destinatário
Além de atualizações de status de entrega, eventosresponded e clicked indicam que o destinatário interagiu com a mensagem.
