Atualizações de chats
Evento: chats · Transporte: POST para o seu receptor
Acompanhe mudanças no snapshot de uma conversa: nome disponível, contadores, arquivamento, bloqueio e outros campos atualizados.
Como processar
Correlacione por chat.wa_chatid ou pelo ID local disponível e aplique os campos recebidos. O evento traz um chat, não uma listagem completa. Não recrie uma mensagem apenas porque a prévia do chat mudou.
Snapshots podem refletir processamento posterior de uma mensagem ou atualização de metadados. Para inicialização e reconciliação, use /chat/find.
Habilitar este evento
Adicione chats à lista events do webhook da instância. Preserve os outros eventos de que sua integração precisa.
{
"enabled": true,
"url": "https://seu-sistema.example/hooks/whatsapp",
"events": [
"chats"
]
}
Envie essa configuração para POST /webhook, usando o header token. O JSON acima configura a assinatura; os exemplos de entrega abaixo são o que seu servidor recebe.
Campos do payload
O envelope comum vem na raiz. Campos condicionais podem estar ausentes ou nulos conforme o evento; não use a tabela como obrigação de presença de todos os campos.
| Campo | Tipo | Significado |
|---|---|---|
EventType | string | Obrigatório. Tipo de evento, por exemplo connection ou messages. |
owner | string | Obrigatório. Consulte o objeto ou exemplo correspondente. |
token | string | Obrigatório. Token da instância; dado sensível. |
BaseUrl | string | Obrigatório. Consulte o objeto ou exemplo correspondente. |
instanceName | string | Consulte o objeto ou exemplo correspondente. |
chat | object | Snapshot de chat. Atualize pelos campos recebidos; não trate o evento como lista completa. |
chat.id | string | ID local do chat. |
chat.wa_chatid | string | JID da conversa. |
chat.name | string | Nome disponível. |
chat.wa_isGroup | boolean | Conversa de grupo. |
chat.wa_isBlocked | boolean | Estado de bloqueio no snapshot. |
chat.wa_archived | boolean | Estado de arquivamento. |
chat.wa_unreadCount | integer | Quantidade de mensagens não lidas disponível. |
chat.wa_label | variável | Etiquetas associadas, conforme a projeção do chat. Pode ser texto JSON; normalize antes de usar. |
Exemplos de entrega
Exemplos ilustrativos com identificadores fictícios. O conteúdo específico e os campos opcionais variam.
Snapshot atualizado
{
"EventType": "chats",
"owner": "5511999999999",
"token": "INSTANCE_TOKEN",
"BaseUrl": "https://seu-servidor.example",
"instanceName": "Atendimento",
"chat": {
"id": "r0123456789abcd",
"wa_chatid": "5511888888888@s.whatsapp.net",
"name": "Contato de exemplo",
"wa_isGroup": false,
"wa_isBlocked": false,
"wa_archived": false,
"wa_unreadCount": 2
}
}
Responder ao webhook
Seu receptor deve aceitar o POST JSON e devolver uma resposta 2xx rapidamente, após validar e registrar o recebimento. O corpo da resposta não é um comando para a API. Processe trabalho demorado separadamente.
O worker não repete automaticamente uma entrega HTTP malsucedida. Consulte diagnóstico de webhooks e implemente a reconciliação necessária. Eventos repetidos ou fora de ordem ainda precisam ser tolerados pelo receptor.