Webhook para mensagens de Documento
Descrição:
O evento messages.upsert
é acionado sempre que uma mensagem de documento é inserida ou atualizada. Este webhook é vital para empresas e desenvolvedores que necessitam rastrear o envio e recebimento de documentos em tempo real, sejam eles acompanhados de legendas (captions) ou não.
Payload do Webhook:
Documento Sem Legenda:
Quando uma mensagem de documento sem legenda é recebida, o payload enviado ao endpoint do webhook configurado será semelhante ao abaixo, não incluindo o atributo caption
:
{
"eventType": "messages.upsert",
"instance": "ID_DA_INSTANCIA",
"sender": "NUMERO_DO_REMETENTE@s.whatsapp.net",
"recipient": "NUMERO_DO_DESTINATARIO@s.whatsapp.net",
"messageType": "documentMessage",
"owner": "ID_DA_INSTANCIA",
"messageTimestamp": TIMESTAMP,
"pushName": "NOME_PUSH",
"fromMe": BOOLEAN,
"document": {
"url": "URL_DO_DOCUMENTO",
"mimetype": "TIPO_DO_MIME",
"title": "TITULO_DO_DOCUMENTO",
"fileSha256": "HASH_SHA256_DO_ARQUIVO",
"fileLength": "TAMANHO_DO_ARQUIVO",
"pageCount": NUMERO_DE_PAGINAS,
"mediaKey": "CHAVE_DE_MIDIA",
"fileName": "NOME_DO_ARQUIVO",
"fileEncSha256": "HASH_ENC_SHA256_DO_ARQUIVO",
"directPath": "CAMINHO_DIRETO",
"mediaKeyTimestamp": "TIMESTAMP_DA_CHAVE_DE_MIDIA",
"jpegThumbnail": "MINIATURA_JPEG"
}
}
Documento Com Legenda:
Quando uma mensagem de documento com legenda é recebida, o payload terá um atributo caption
adicional, como descrito abaixo:
{
"eventType": "messages.upsert",
"instance": "ID_DA_INSTANCIA",
"sender": "NUMERO_DO_REMETENTE@s.whatsapp.net",
"recipient": "NUMERO_DO_DESTINATARIO@s.whatsapp.net",
"messageType": "documentWithCaptionMessage",
"owner": "ID_DA_INSTANCIA",
"messageTimestamp": TIMESTAMP,
"pushName": "NOME_PUSH",
"fromMe": BOOLEAN,
"document": {
"url": "URL_DO_DOCUMENTO",
"mimetype": "TIPO_DO_MIME",
"title": "TITULO_DO_DOCUMENTO",
"fileSha256": "HASH_SHA256_DO_ARQUIVO",
"fileLength": "TAMANHO_DO_ARQUIVO",
"pageCount": NUMERO_DE_PAGINAS,
"mediaKey": "CHAVE_DE_MIDIA",
"fileName": "NOME_DO_ARQUIVO",
"fileEncSha256": "HASH_ENC_SHA256_DO_ARQUIVO",
"directPath": "CAMINHO_DIRETO",
"mediaKeyTimestamp": "TIMESTAMP_DA_CHAVE_DE_MIDIA",
"jpegThumbnail": "MINIATURA_JPEG",
"caption": "LEGENDA_DO_DOCUMENTO"
}
}
Detalhamento das Propriedades do Payload:
- eventType: (string) Tipo do evento. Será sempre
messages.upsert
para este webhook. - instance: (string) ID da instância que está enviando ou recebendo a mensagem.
- sender: (string) Número de telefone do remetente no formato internacional, seguido por
@s.whatsapp.net
. - recipient: (string) Número de telefone do destinatário no formato internacional, seguido por
@s.whatsapp.net
. - messageType: (string) Tipo da mensagem. Será
documentMessage
para documentos sem legenda edocumentWithCaptionMessage
para documentos com legenda. - messageTimestamp: (number) Timestamp da data e hora da inserção ou atualização da mensagem.
- pushName: (string) Nome exibido do remetente da mensagem.
- fromMe: (boolean)
true
se a mensagem foi enviada pela instância,false
se foi recebida por ela.
Propriedades do Objeto document
:
- url: (string) URL de onde o documento pode ser baixado.
- mimetype: (string) Tipo MIME do documento.
- title: (string) Título do documento.
- fileSha256: (string) Hash SHA-256 do arquivo do documento.
- fileLength: (string) Tamanho do arquivo do documento em bytes.
- pageCount: (number) Número de páginas do documento, se aplicável.
- mediaKey: (string) Chave de mídia do documento.
- fileName: (string) Nome do arquivo do documento.
- fileEncSha256: (string) Hash SHA-256 encriptado do arquivo do documento.
- directPath: (string) Caminho direto para o documento.
- mediaKeyTimestamp: (string) Timestamp da chave de mídia do documento.
- jpegThumbnail: (string) Miniatura JPEG do documento, se disponível.
- caption: (string) Legenda do documento, se disponível.
Conclusão
O webhook messages.upsert
para mensagens de documento permite um monitoramento em tempo real de documentos transmitidos, com ou sem legendas, proporcionando uma integração mais eficiente e detalhada. Para qualquer dúvida ou problema, por favor, contacte o nosso suporte.