Pular para o conteúdo principal

Evento: message.received

Quando e Disparado

Este evento e disparado quando uma nova mensagem e recebida de um contato em qualquer canal conectado. O evento e enviado imediatamente apos o processamento da mensagem pelo sistema.

Isso inclui todos os tipos de mensagem suportados: texto, imagem, video, audio e documento.

Payload

{
"event": "message.received",
"timestamp": "2024-06-10T15:30:45.123Z",
"data": {
"messageId": "665f1a2b3c4d5e6f7a8b9c0d",
"conversationId": "665e0b1a2c3d4e5f6a7b8c9d",
"channelId": "665d9a0b1c2d3e4f5a6b7c8d",
"from": "5511999998888",
"type": "text",
"content": "Ola, gostaria de saber mais sobre os planos disponiveis.",
"mediaUrl": null,
"contact": {
"id": "665c8901a2b3c4d5e6f7a8b9",
"name": "Joao Silva",
"phone": "5511999998888"
}
}
}

Exemplo com Midia (Imagem)

{
"event": "message.received",
"timestamp": "2024-06-10T15:32:10.456Z",
"data": {
"messageId": "665f2b3c4d5e6f7a8b9c0d1e",
"conversationId": "665e0b1a2c3d4e5f6a7b8c9d",
"channelId": "665d9a0b1c2d3e4f5a6b7c8d",
"from": "5511999998888",
"type": "image",
"content": "Segue o comprovante de pagamento",
"mediaUrl": "https://oapi.ogmma.com.br/v1/media/665f2b3c4d5e6f7a8b9c0d1e",
"contact": {
"id": "665c8901a2b3c4d5e6f7a8b9",
"name": "Joao Silva",
"phone": "5511999998888"
}
}
}

Campos do Payload

CampoTipoDescricao
eventstringNome do evento. Sempre message.received.
timestampstringData/hora do evento em formato ISO 8601.
data.messageIdstringIdentificador unico da mensagem.
data.conversationIdstringID da conversa a qual a mensagem pertence.
data.channelIdstringID do canal que recebeu a mensagem.
data.fromstringNumero de telefone do remetente (formato internacional, apenas digitos).
data.typestringTipo da mensagem: text, image, video, audio, document.
data.contentstringConteudo textual da mensagem. Para midias, contem a legenda (caption) se houver.
data.mediaUrlstring | nullURL para download da midia. null para mensagens de texto.
data.contact.idstringIdentificador unico do contato na plataforma.
data.contact.namestringNome do contato.
data.contact.phonestringNumero de telefone do contato.
Dica

Para mensagens com midia, utilize a mediaUrl para baixar o arquivo. A URL requer autenticacao via header Authorization: Bearer {API_KEY}.