Eventos
Os eventos de webhook disponíveis, quando cada um dispara e o formato do envelope.
Configure endpoints de webhook (URL + eventos) no painel; veja
Credenciais no painel. Cada entrega é um POST JSON assinado.
Eventos disponíveis
| Evento | Quando dispara |
|---|---|
ticket.resposta_publica | Um atendente responde publicamente o ticket. |
ticket.resposta_editada | Um atendente edita uma resposta pública existente. |
ticket.status_alterado | O ticket muda de etapa no pipeline. |
ticket.resolvido | O ticket entra numa etapa final (resolvido/fechado). |
ticket.atualizado | Um atendente edita o conteúdo do ticket (assunto e/ou descrição). |
Sem eco: respostas do parceiro não disparam webhook
Respostas enviadas pelo próprio parceiro (via API,
origem cliente_api) não geram ticket.resposta_publica nem
ticket.resposta_editada. Só ações de atendente disparam, então você não recebe de
volta o que enviou.
Cobertura na tela do painel
A API suporta os 5 eventos acima. A tela de criação de webhook no painel hoje expõe um
subconjunto (ticket.resposta_publica, ticket.status_alterado, ticket.resolvido); os
demais podem ser assinados via API de gestão (POST /api/webhooks).
Envelope
{
"id": "9f1c…-delivery-uuid",
"tipo": "ticket.resposta_publica",
"criado_em": "2026-06-23T14:05:00+00:00",
"dados": {
"ticket": {
"id": "…",
"numero": 1024,
"status": { "categoria": "em_andamento" }
},
"resposta": {
"id": "…",
"mensagem": "Já estamos verificando.",
"autor": { "tipo": "agente", "nome": "Ana" }
}
}
}id: UUID da entrega (use para idempotência; estável entre retries).tipo: o evento.criado_em: timestamp ISO-8601.dados: payload específico do evento (ticket,resposta, …).
ticket.atualizado traz os campos alterados
No evento ticket.atualizado, dados.alteracoes lista os campos modificados, por
exemplo ["assunto"] ou ["descricao"].
Em seguida, veja como validar cada entrega em Assinatura e como funcionam entrega e retries em Entrega.