Processamento de campanhas

Evento: sender · Transporte: POST para o seu receptor

Acompanhe início e conclusão do processamento de uma pasta de campanha.

Estados e contadores

statusConteúdo principal
sendingfolderID, folderInfo, messageCount, scheduledFor, startedAt
donefolderID, folderInfo, successCount, failedCount, completedAt

Correlacione pelo folderID dentro da instância. Os timestamps de início/conclusão usam milissegundos Unix. O término do processamento e os contadores da campanha não equivalem à leitura de todas as mensagens pelos destinatários; para isso, acompanhe os eventos de mensagens correspondentes.

A notificação de início ocorre na transição de scheduled para sending; não espere um novo evento de início a cada retomada interna.

Habilitar este evento

Adicione sender à 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": [
    "sender"
  ]
}

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.

CampoTipoSignificado
EventTypestringObrigatório. Tipo de evento, por exemplo connection ou messages.
ownerstringObrigatório. Consulte o objeto ou exemplo correspondente.
tokenstringObrigatório. Token da instância; dado sensível.
BaseUrlstringObrigatório. Consulte o objeto ou exemplo correspondente.
instanceNamestringConsulte o objeto ou exemplo correspondente.
folderIDstringID da pasta de campanha.
folderInfostringInformação descritiva da pasta.
statusstringFase notificada do processamento.
messageCountintegerQuantidade no início do processamento.
scheduledForintegerAgendamento informado pela pasta.
startedAtintegerInício em milissegundos Unix.
successCountintegerContagem de sucesso registrada pelo processamento.
failedCountintegerContagem de falhas registrada pelo processamento.
completedAtintegerConclusão em milissegundos Unix.

Exemplos de entrega

Exemplos ilustrativos com identificadores fictícios. O conteúdo específico e os campos opcionais variam.

Início de processamento

{
  "EventType": "sender",
  "owner": "5511999999999",
  "token": "INSTANCE_TOKEN",
  "BaseUrl": "https://seu-servidor.example",
  "instanceName": "Atendimento",
  "folderID": "r0123456789abcd",
  "folderInfo": "Campanha de exemplo",
  "status": "sending",
  "messageCount": 20,
  "scheduledFor": 1788868800000,
  "startedAt": 1788868800000
}

Processamento concluído

{
  "EventType": "sender",
  "owner": "5511999999999",
  "token": "INSTANCE_TOKEN",
  "BaseUrl": "https://seu-servidor.example",
  "instanceName": "Atendimento",
  "folderID": "r0123456789abcd",
  "folderInfo": "Campanha de exemplo",
  "status": "done",
  "successCount": 19,
  "failedCount": 1,
  "completedAt": 1788868860000
}

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.

Referências