Skip to main content
Os exemplos abaixo mostram o corpo completo recebido no seu endpoint (envelope + payload).

lead.created

Disparado quando um novo lead entra no sistema via WhatsApp ou API.
{
  "event_type": "lead.created",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-20T09:00:00.000Z",
  "payload": {
    "id": "uuid-do-lead",
    "name": "João Silva",
    "customer_phone": "5511999998888",
    "status": "pending",
    "created_at": "2026-06-20T09:00:00.000Z"
  }
}

lead.status_changed

Disparado quando o status do lead muda.
{
  "event_type": "lead.status_changed",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-20T10:30:00.000Z",
  "payload": {
    "id": "uuid-do-lead",
    "status": "converted",
    "previous_status": "in_progress",
    "changed_at": "2026-06-20T10:30:00.000Z"
  }
}
Valores possíveis de status / previous_status
pending · in_progress · converted · lost

message.received

Disparado quando o lead envia uma mensagem via WhatsApp.
{
  "event_type": "message.received",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-20T09:05:00.000Z",
  "payload": {
    "lead_id": "uuid-do-lead",
    "session_id": "uuid-da-sessao",
    "content": "Olá, quero saber o preço",
    "media_type": null,
    "received_at": "2026-06-20T09:05:00.000Z"
  }
}
CampoValores possíveis de media_type
media_typenull (texto) · image · audio · video · document

message.sent

Disparado quando a IA ou um consultor envia uma mensagem ao lead.
{
  "event_type": "message.sent",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-20T09:05:03.000Z",
  "payload": {
    "lead_id": "uuid-do-lead",
    "session_id": "uuid-da-sessao",
    "content": "Olá! O valor é R$ 99/mês.",
    "sent_at": "2026-06-20T09:05:03.000Z"
  }
}

session.started

Disparado quando uma nova sessão de atendimento é aberta para o lead.
{
  "event_type": "session.started",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-20T09:00:00.000Z",
  "payload": {
    "id": "uuid-da-sessao",
    "lead_id": "uuid-do-lead",
    "session_number": 1,
    "channel": "whatsapp_zapi",
    "trigger": "inbound",
    "started_at": "2026-06-20T09:00:00.000Z"
  }
}
CampoValores possíveis
channelwhatsapp_zapi · whatsapp_meta · voice_elevenlabs · manual
triggerinbound · followup · manual_reopen

session.ended

Disparado quando uma sessão de atendimento é encerrada.
{
  "event_type": "session.ended",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-20T14:30:00.000Z",
  "payload": {
    "id": "uuid-da-sessao",
    "lead_id": "uuid-do-lead",
    "session_number": 1,
    "status": "converted",
    "ended_at": "2026-06-20T14:30:00.000Z"
  }
}
Valores possíveis de status
converted · lost · abandoned
abandoned significa que o lead parou de responder e a sessão foi encerrada por inatividade ou após um follow-up sem retorno.

followup.sent

Disparado quando um follow-up automático é enviado ao lead.
{
  "event_type": "followup.sent",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-21T10:00:00.000Z",
  "payload": {
    "followup_id": "uuid-do-followup",
    "lead_id": "uuid-do-lead",
    "session_id": "uuid-da-sessao",
    "message": "Oi! Ainda tem interesse?",
    "sent_at": "2026-06-21T10:00:00.000Z"
  }
}

appointment.created

Disparado quando um agendamento é criado para um lead.
{
  "event_type": "appointment.created",
  "store_id": "uuid-da-loja",
  "occurred_at": "2026-06-20T11:00:00.000Z",
  "payload": {
    "id": "uuid-do-agendamento",
    "lead_id": "uuid-do-lead",
    "title": "Consulta inicial",
    "scheduled_at": "2026-06-25T15:00:00.000Z",
    "duration_minutes": 60,
    "status": "scheduled"
  }
}