Referência/Webhooks/call.upsert
Evento por instância

call.upsert

Atualizacao de chamada de voz ou video.

flag: callUpsert

Requisição

http
POST /webhooks/codechat HTTP/1.1
Content-Type: application/json
x-webhook-event: call.upsert

Payload

json
{
"data": {
"callerPn": "5511999999999",
"chatId": "[email protected]",
"date": "2026-07-04T19:05:00Z",
"from": "[email protected]",
"groupJid": null,
"id": "3EB0C4D0A1",
"isGroup": false,
"isVideo": false,
"latencyMs": null,
"offline": false,
"status": "offer"
},
"event": "call.upsert",
"instance": {
"connectionStatus": "online",
"externalAttributes": {},
"id": 1,
"name": "codechat",
"ownerJid": "[email protected]"
},
"timestamp": "2026-07-04T18:00:00Z"
}
chatIdstring

obrigatório, não aceita `null`. JID do chat da chamada.

fromstring

obrigatório, não aceita `null`. JID de origem.

callerPnstring | null

obrigatório, aceita `null`. Phone number do chamador quando disponivel.

isGroupboolean | null

obrigatório, aceita `null`. Indica chamada em grupo quando o normalizador consegue inferir.

groupJidstring | null

obrigatório, aceita `null`. JID do grupo quando disponivel.

idstring

obrigatório, não aceita `null`. ID da chamada.

datestring

obrigatório, não aceita `null`. Timestamp RFC3339 da chamada/processamento.

isVideoboolean | null

obrigatório, aceita `null`. Indica chamada de video quando o normalizador consegue inferir.

statusstring

obrigatório, não aceita `null`. Status normalizado da chamada. Valores possíveis: `offer`, `ringing`, `preaccept`, `transport`, `relaylatency`, `timeout`, `reject`, `accept`, `terminate`, `unknown`.

offlineboolean

obrigatório, não aceita `null`. Indica se o evento veio como offline.

latencyMsnumber | null

obrigatório, aceita `null`. Latencia em milissegundos quando reportada.

Observações de entrega

  • Sem observações adicionais.
  • Implemente idempotência por chave de negócio e aceite a possibilidade de duplicidades e reordenação.