Webhook da Conexão
Nosso Webhook de Conexão envia uma notificação com dados toda vez que essa CONEXÃO:
✅ receber uma mensagem
✅ enviar uma mensagem
✅ alterar uma tag no ticket
✅ alterar o status do ticket (abrir ou fechar)
Sempre que um desses eventos ocorre, nosso webhook envia um payload (dados) para o seu endpoint (URL), notificando automaticamente o sistema receptor.
Como configurar o Endpoint (URL) do sistema receptor
- Configure seu receptor para receber nossas notificações no método POST.
- Copie a URL de destino (do seu sistema receptor).
- Acesse em nosso sistema, o menu → Conexões > Editar Conexão e no campo → Webhook adicione a URL copiada.

📌 Pronto.
Visualize agora as notificações de nossos webhooks chegando em seu enpoint.
Payload Enviado
Um payload diferente é enviado conforme cada tipo de ação. Veja abaixo:
1. Mensagens
{
"body": {
"filaescolhida": "Dep. Entregas",
"filaescolhidaid": 5,
"mensagem": "Mensagem de teste",
"sender": "5511999999999",
"chamadoId": 15321,
"acao": "start",
"name": "José Cliente", // se recebida = nome do cliente | se enviada = cel do cliente (5511999999999)
"companyId": 8,
"defaultWhatsapp_x": 27,
"fromMe": false, // se recebida = false | se enviada = true
"queueId": 5,
"isGroup": false,
"ticketData": {
"id": 15321,
"status": "open",
"unreadMessages": 0,
"lastMessage": "Mensagem anterior ao de teste", // se recebida = mensagem anterior | se enviada = mensagem atual
"protocolo": "54212",
"typebot_sessionId": null,
"typebot_status": null,
"customA": null,
"lastFlowId": null,
"repeatCount": 0,
"fromAds": 24,
"customB": null,
"nextFlowId": null,
"isGroup": false,
"userId": 71,
"contactId": 16991,
"whatsappId": 27,
"queueId": 5,
"chatbot": false,
"isMenu": false,
"variables": null,
"channel": "whatsapp",
"queueOptionId": null,
"companyId": 8,
"uuid": "9165510e-d4b0-1234-8aa4-222cc8b2344a",
"promptId": null,
"createdAt": "2024-12-21T14:06:31.404Z",
"updatedAt": "2025-03-21T17:45:00.575Z",
"contact": {
"id": 16991,
"name": "José Cliente",
"number": "5511999999999",
"email": "",
"profilePicUrl": "https://pps.whatsapp.net/v/t61.24694-24/3653963772_n.jpg?stp=dst-jpg_s96x96_tt6&ccb=11-4&oh=01_Q5AaIWagepE1pi1UEjOTUa4Mf9hyz3bicAoUUMmu068SRl93&oe=67E90699&_nc_sid=5e03e0&_nc_cat=111",
"acceptAudioMessage": true,
"active": true,
"disableBot": false,
"extraInfo": []
},
"user": {
"id": 71,
"name": "João Atendimento",
"restricted": false,
"away": false,
"ausencia": null,
"sigame": false,
"number": "5511987654321"
},
"queue":
{
"id": 5,
"name": "Dep. Entregas",
"color": "#f44e3b",
"typeboturl": "",
"typebotname": "",
"typebotexpire": 5000,
"typebotwait": 1500,
"flowiseKey": "",
"flowiseUrl": "",
"promptId": null,
"invalidMessage": "",
"flowId": null,
"zaiaToken": "",
"zaiaAgent": null,
"isTranscribe": false,
"difyToken": null,
"difyURL": null,
"webhookQueueURL": null,
"prompt": null
},
"whatsapp": {
"name": "Atendimento",
"webhook": "https://go.dominio.com.br/webhook",
"id": 27,
"token": "7ydsa6dahdaksdas9",
"coverImage": null,
"selectedCommentQueueId": null,
"whatsmeowname": null,
"whatsmeowtoken": null,
"whatsmeowurl": null,
"hubtoken": null,
"channel": "whatsapp",
"status": "CONNECTED",
"ignoreNumbers": ""
},
"tags": [
{
"id": 27,
"name": "Atenção",
"color": "#CD0003",
"TicketTag": {
"ticketId": 52,
"tagId": 27,
"disparei": 0,
"createdAt": "2025-03-24T11:51:41.779Z",
"updatedAt": "2025-03-24T11:51:41.779Z"
}
}
],
"company": {
"name": "Atendimento - Minha Empresa"
}
},
"backendURL": "https://backend_url.com.br",
"token_origin": "7ydsa6dahdaksdas9",
"msg": {
"key": {
"remoteJid": "[email protected]",
"fromMe": false,
"id": "3EB46F40017BA9"
},
"message": {
"extendedTextMessage": {
"text": "Mensagem de teste"
}
}
"messageTimestamp": "1742906049",
"status": "PENDING"
}
},
"webhookUrl": "https://go.dominio.com.br/webhook",
"executionMode": "production"
}
Temos alguns tipos de mensagens em "body > msg > message"
São eles:
- conversation (via celular)
- extendedTextMessage (via Web)
- audioMessage
- imageMessage
- videoMessage
- documentMessage
- reactionMessage
- stickerMessage
- contactMessage
- locationMessage
2. Tags
{
"body": {
"action": "tag-sync",
"tags": {
"ticketId": 15321,
"tags": [
{
"id": 71,
"name": "particular",
"color": "#E1A903",
"kanban": 0,
"prioridade": 0,
"automation": 0,
"flowsId": 0,
"conversao": null,
"tagType": "Atendimento",
"companyId": 8,
"createdAt": "2025-03-15T18:56:21.655Z",
"updatedAt": "2025-03-15T18:56:21.655Z"
}
]
},
"contact": {
"id": 16991,
"name": "José Cliente",
"number": "5511999999999",
"email": "",
"profilePicUrl": "https://pps.whatsapp.net/v/t61.24694-24/44599_56578365129263772_n.jpg?stp=dst-jpg_s96x96_tt6&ccb=11-4&oh=01_Q5AaIdaAniZV10jFWDbcoIOlKodMuWHQeZ4C2DV-gJQxQtFx&oe=67E236D9&_nc_sid=5e03e0&_nc_cat=111",
"acceptAudioMessage": true,
"active": true,
"disableBot": false,
"extraInfo": []
},
"connection_token": "7ydsa6dahdaksdas9",
"apiUrl": "https://backend_url.com.br
},
"webhookUrl": "https://go.dominio.com.br/webhook",
"executionMode": "production"
}
3. Abrir ou Fechar Ticket
{
"body": {
"sender": "5511999999999",
"chamadoId": 20956,
"acao": "open", // closed = se for encerramento de ticket
"companyId": 1,
"defaultWhatsapp_x": 1,
"queueId": 16,
"isGroup": false,
"backendURL": "https://backend_url.com.br",
"ticketData": {
"id": 20956,
"status": "pending",
"unreadMessages": 1,
"lastMessage": "olá, tudo bem?",
"protocolo": "29924",
"typebot_sessionId": null,
"typebot_status": null,
"customA": null,
"lastFlowId": "SXG8YYNS5OWesf2oFYvLB89K2ETTeY",
"repeatCount": 0,
"fromAds": 24,
"customB": null,
"nextFlowId": null,
"isGroup": false,
"userId": null,
"contactId": 21019,
"whatsappId": 1,
"queueId": 16,
"chatbot": false,
"isMenu": false,
"variables": null,
"channel": "whatsapp",
"queueOptionId": null,
"companyId": 1,
"uuid": "872b49d0-c009-1234-b640-1c558b69d5bd",
"promptId": null,
"createdAt": "2025-03-25T15:41:55.115Z",
"updatedAt": "2025-03-25T18:43:47.366Z",
"contact": {
"id": 16991,
"name": "José Cliente",
"number": "5511999999999",
"email": "",
"profilePicUrl": "https://pps.whatsapp.net/v/t61.24694-24/3653963772_n.jpg?stp=dst-jpg_s96x96_tt6&ccb=11-4&oh=01_Q5AaIWagepE1pi1UEjOTUa4Mf9hyz3bicAoUUMmu068SRl93&oe=67E90699&_nc_sid=5e03e0&_nc_cat=111",
"acceptAudioMessage": true,
"active": true,
"disableBot": false,
"extraInfo": []
},
"user": null, // estará preenchido se estiver em atendimento
"queue": {
"id": 16,
"name": "Dep. Orçamentos",
"color": "#999999",
"typeboturl": "",
"typebotname": "",
"typebotexpire": 5000,
"typebotwait": 1500,
"flowiseKey": "",
"flowiseUrl": "",
"promptId": null,
"invalidMessage": "",
"flowId": null,
"zaiaToken": "",
"zaiaAgent": null,
"isTranscribe": false,
"difyToken": null,
"difyURL": null,
"webhookQueueURL": null,
"prompt": null
},
"whatsapp": {
"name": "Atendimento",
"webhook": "https://go.dominio.com.br/webhook",
"id": 27,
"token": "7ydsa6dahdaksdas9",
"coverImage": null,
"selectedCommentQueueId": null,
"whatsmeowname": null,
"whatsmeowtoken": null,
"whatsmeowurl": null,
"hubtoken": null,
"channel": "whatsapp",
"status": "CONNECTED",
"ignoreNumbers": ""
},
"tags": [],
"company": {
"name": "Atendimento - Minha Empresa"
}
}
},
"webhookUrl": "https://go.dominio.com.br/webhook",
"executionMode": "production"
}
4. Receber Áudio, Imagem ou Arquivo
O recebimento de áudio, imagem ou arquivo no WhatsApp possui uma particularidade: ele gera dois webhooks seguidos.
O primeiro webhook é parecido com o de "mensagem" porém na propriedade "mensagem" em vez de conter o texto, contém a seguinte informação:
- "mensagem": "Áudio" (se áudio)
- "mensagem": " " (se imagem ou vídeo)
- "mensagem": "nome do arquivo" (se PDF)
Na sequência o segundo webhook é recebido, com o seguinte payload:
{
"body": {
"sender": "5511999999999",
"chamadoId": 20956,
"acao": "fila-data",
"companyId": 1,
"defaultWhatsapp_x": 1,
"fromMe": false,
"queueId": 16,
"isGroup": false,
"ticketData": { ... igual de mensagem ... }
"mediaFolder": "public/company1",
"mediaName": "1742984582802.ogg",
"backendURL": "https://backend_url.com.br",
"token_origin": "7ydsa6dahdaksdas9",
"msg": { ... igual de mensagem ... }
},
"webhookUrl": "https://go.dominio.com.br/webhook",
"executionMode": "production"
}