AstraApi Docs
  • 🚀Introdução
  • Integrando
    • Instance
      • Listar Instancias
      • Gerar QRCode
      • Pegar informações da Instância
      • Desconectar Instância
      • Atualizar url de webhook
    • Mensagens
      • Mensagem de texto
      • Responder uma mensagem
      • Mensagem de media
      • Mensagem de localização
      • Reagir a uma mensagem
      • Mensagem de contato
      • Deletar uma mensagem
    • Grupos
      • Criar grupo
      • Listar grupos
      • Informações de um grupo
      • Sair de um grupo
      • Editar participantes do grupo
      • Atualizar descrição do grupo
      • Atualizar nome do grupo
      • Editar configuração do grupo
    • Contatos
      • Listar contatos
      • Pegar foto de perfil de um contato
      • Verificar se determinado número tem WhatsApp
  • Webhooks
    • Envio/Recebimento de mensagens
      • Mensagem de texto
      • Mensagem de imagem
      • Mensagem de vídeo
      • Mensagem de áudio
      • Mensagem de documento
      • Mensagem de localização
      • Mensagem de contato
      • Reação a uma mensagem
      • Responder a uma mensagem
      • Deletando uma mensagem
    • Status de mensagem
    • Conexão
      • Conexão
      • Desconexão
Powered by GitBook
On this page
  1. Webhooks
  2. Envio/Recebimento de mensagens

Mensagem de texto

Exemplo de body recebido no webhook

Envio via Endpoint

{
  "event": "MESSAGE", // Webhooks de envio/recebimento de mensagem vem com esse status
  "data": {
    "message": {
      "key": {
        "remoteJid": "557999070094@s.whatsapp.net",//Número da conversa
        "fromMe": true,// Propriedade que indica se a mensagem foi enviada pelo número conectado na instância
        "id": "BAE5A871E8A0A143"// ID da mensagem no WhatsApp
      },
      "message": {
        "extendedTextMessage": {
          "text": "Hello World 🌎" // String da mensagem de texto enviada
        }
      },
      "messageTimestamp": "1686785122",
      "status": "PENDING" // Webhooks de envio de mensagens via endpoint vem com esse status
    },
    "instanceId": 4 // id da instancia que enviou a mensagem
  }
}

Envio via celular

{
  "event": "MESSAGE",
  "data": {
    "message": {
      "key": {
        "remoteJid": "5799999@s.whatsapp.net",
        "fromMe": true,// Propriedade que indica se a mensagem foi enviada pelo número conectado na instância
        "id": "541AF675B7B0C4C3615D717F969E9FE6"// ID da mensagem no WhatsApp
      },
      "messageTimestamp": 1686785288,
      "pushName": "Amor E Vida",// nome de quem enviou a mensagem
      "status": 2,// Webhooks de envio de mensagens via celular irão chegar com esse status
      "message": {
        "conversation": "Oi" // Diferente do envio via endpoint objeto message virá o campo conversation e não extendedTextMessage.text 
      },
      "verifiedBizName": "Amor E Vida"
    },
    "instanceId": 4
  }
}

Se liga na dica! Resumindo para não passar batido as diferenças:

  • O envio via endpoint o status da mensagem virá como "PENDING", e se for via celular virá como 2.

  • O envio via endpoint o texto da mensagem vem dentro de message.extendedTextMessage.text, já via celular é apenas acessar message.convesation dentro da mensagem. Ou seja quando for uma mensagem de texto recomendamos validar essas duas possibilidades

Recebimento

{
  "event": "MESSAGE",
  "data": {
    "message": {
      "key": {
        "remoteJid": "5595959@s.whatsapp.net",//Número da conversa
        "fromMe": false,// Propriedade que indica se a mensagem foi enviada pelo número conectado na instância
        "id": "3EB0788C1518D8C2422C66"
      },
      "messageTimestamp": 1686786344,
      "pushName": "teste",// nome de quem enviou a mensagem
      "message": {
        "conversation": "Hello World 🌎 de volta",// texto da mensagem
        "messageContextInfo": {
          "deviceListMetadata": {
            "senderKeyHash": "AofW3u2YzeOX8g==",
            "senderTimestamp": "1686702226",
            "recipientKeyHash": "ncAa2ZCPTc5sxA==",
            "recipientTimestamp": "1686681282"
          },
          "deviceListMetadataVersion": 2
        }
      }
    },
    "instanceId": 4
  }
}

Se liga na dica! Como pode ver no recebimento não vem um status, e a mensagem vem em "message.conversations".

PreviousEnvio/Recebimento de mensagensNextMensagem de imagem

Last updated 1 year ago