Ao receber
Conceituação#
Esse é o webhook de retorno de mensagens recebidas, também é executada quando a sua instância está configurada para notificar também mensagens enviadas por você mesmo.
Qual o prazo de validade dos arquivos do z-api?
Todos os arquivos de midia recebidos do z-api através do seu webhook tem o prazo de expiração de 30 dias. Após esse período todos os arquivos, seja audio, pdf, imagem, etc, serão excluídos do storage.
Atenção
O Z-API não aceita webhooks que não sejam HTTPS
Atualizando Webhook#
Para atualizar a rota do webhook é possível fazer isso pela API ou pelo painel administrativo.
API#
/update-webhook-received#
PUT
https://api.z-api.io/instances/SUA_INSTANCIA/token/SEU_TOKEN/update-webhook-received
Ou#
Também é possível atualizar a rota com a opção "enviadas por mim" habilitada.
/update-webhook-received-delivery#
PUT
https://api.z-api.io/instances/SUA_INSTANCIA/token/SEU_TOKEN/update-webhook-received-delivery
Header#
Key | Value |
---|---|
Client-Token | TOKEN DE SEGURANÇA DA CONTA |
Request Body#
Painel Administrativo#
Retornos dos webhooks#
Os possíveis retornos do webhook on-message-received estão cadastrado logo abaixo:
Response#
Atributos | Tipo | Descrição |
---|---|---|
isStatusReply | boolean | Identifica se a mensagem recebida é uma resposta de status |
senderLid | string | ID do contato no whatsapp |
connectedPhone | string | Número de telefone conectado à API |
waitingMessage | boolean | Identifica se a sua mensagem está com status de "Aguardando a mensagem" |
isEdit | boolean | Identifica se a mensagem recebida foi editada |
isGroup | boolean | Indica se o chat é um grupo |
isNewsletter | boolean | Indica se o chat é um canal |
phone | string | Número de telefone, ou do grupo que enviou a mensagem. |
fromMe | boolean | Indica se a mensagem enviada partiu do número conectado a API |
participantPhone | string | Número de telefone do membro do grupo que enviou a mensagem. |
participantLid | string | ID do contado no whatsapp, do participante que enviou a mensagem dentro de um grupo |
messageId | string | Idetificador da mensagem na conversa. |
status | string | Status que a mensagem se encontra no momento do envio (PENDING, SENT, RECEIVED, READ ou PLAYED). |
referenceMessageId | string | Referência a mensagem que foi respondida para o caso da mensagem recebida ser uma resposta a uma mensagem da conversa. |
momment | integer | Momento em que a mensagem foi recebida ou do erro. |
messageExpirationSeconds | integer | Tempo das mensagens temporárias |
type | string | Tipo do evento da instância, nesse caso será "ReceivedCallBack". |
photo | string | Url da foto do usuário que enviou a mensagem. |
text.message | string | Texto da mensagem. |
image.caption | string | Leganda da foto. |
image.imageUrl | string | Url da foto. |
image.thumbnailUrl | string | Url da thumbnail da foto. |
image.mimeType | string | MimeType da imagem. |
audio.mimeType | string | MimeType do áudio. |
audio.audioUrl | string | Url do áudio. |
video.caption | string | Legenda do vídeo. |
video.videoUrl | string | Url do vídeo. |
video.mimeType | string | MimeType do vídeo. |
contact.displayName | string | Nome do contato. |
contact.vCard | string | VCard contendo as informações do contato. |
document.mimeType | string | MimeType do documento. |
document.fileName | string | Nome do documento. |
document.title | string | Título do documento. |
document.pageCount | string | Número de páginas do documento. |
document.thumbnailUrl | string | Url da thumbnail do documento. |
document.documentUrl | string | Url do documento. |
location.thumbnailUrl | string | Url da thumbnail da localização. |
location.longitude | float | Longitude da localização. |
location.latitude | float | Latitude da localização. |
location.url | string | Url da localização. |
location.name | string | Nome da localização. |
location.address | string | Endereço da localização. |
sticker.mimeType | string | MimeType do sticker. |
sticker.stickerUrl | string | Url do sticker. |
200#
Exemplo de retorno de texto#
Exemplo de retorno de template de texto#
Exemplo de retorno de reação#
Exemplo de retorno de texto (Lista de Botão)#
Exemplo de retorno de template de botão OTP#
Exemplo de retorno de botão com imagem#
Exemplo de retorno de botão com video#
Exemplo de retorno de texto (Lista de Opcão)#
Exemplo de retorno de texto vindos de anúncio#
Exemplo de retorno de imagem#
Exemplo de retorno de template de imagem#
Exemplo de retorno de áudio#
Exemplo de retorno de vídeo#
Exemplo de retorno de template de vídeo#
Exemplo de retorno de PTV#
Exemplo de retorno de contato#
Exemplo de retorno de documento#
Exemplo de retorno de template de documento#
Exemplo de retorno de localização#
Exemplo de retorno de template de localização#
Exemplo de retorno de sticker#
Exemplo de retorno de GIF#
Exemplo de retorno de pagamento feito#
Exemplo de retorno de pedido de pagamento#
Exemplo de retorno de recebimento de pagamento#
Exemplo de retorno de ligação recebida#
Exemplo de retorno de ligação perdida#
Exemplo de solicitação de entrada em grupo#
Exemplo de admin promovido a um canal#
Exemplo de admin removido de um canal#
Exemplo de retorno de produto#
Exemplo de retorno de carrinho#
Exemplo de retorno de enquete#
Exemplo de retorno de resposta de enquete#
Exemplo de retorno de envio de pedido#
Exemplo de retorno de atualização de pedido#
Exemplo de retorno de convite admin de canal#
Exemplo de retorno de fixar mensagem#
Exemplo de retorno de evento#
Exemplo de retorno de resposta de evento#
405#
Neste caso certifique que esteja enviando o corretamente a especificação do método, ou seja verifique se você enviou o POST ou PUT conforme especificado no inicio deste tópico.
415#
Caso você receba um erro 415, certifique de adicionar na headers da requisição o "Content-Type" do objeto que você está enviando, em sua grande maioria "application/json"
Notification Response#
Conceituação#
As notificações são mensagens de WhatsApp que se baseiam em modelos de mensagens prévias do WhatsApp.
Posto dessa forma, aqui estão documentadas as notificações que recebemos, caso não queira receber essas notificações é necessário ignorar a mensagem quando ela chegar com o atributo notification.