Ir para o conteúdo

Formato de mensagem de entrada#

Uma notificação neste formato chega quando uma mensagem é recebida: texto, imagem, vídeo, mensagem de voz, documento, contato, localização.

Formato de notificação#

{
    "type": "notification-type",
    "account": {
        "id": "account-id",
        "wa_id": "account-wa-id"
    },
    "messages": [
        {
            "from": "sender-wa-id",
            "id": "message-id",
            "timestamp": "message-timestamp",
            "type": "text | image | video | voice | document | contacts | location",

            "text": {
                "body": "text-message-content"
            },

            "image": {
                "id": "media-id",
                "mime_type": "media-mime-type",
                "file_extension": "source-file-extension",
                "caption": "image-caption"
            },

            "video": {
                "id": "media-id",
                "mime_type": "media-mime-type",
                "file_extension": "source-file-extension",
                "caption": "video-caption"
            },

            "voice": {
                "id": "media-id",
                "mime_type": "media-mime-type",
                "file_extension": "source-file-extension"
            },

            "document": {
                "id": "media-id",
                "mime_type": "media-mime-type",
                "file_extension": "document-file-extension",
                "filename": "document-file-name"
            },

            "contacts": {
                "vcard": "vcard-data"
            },

            "location": {
                "link": "location-link"
            }

        }
    ],
    "contacts": [
        {
            "profile": {
                "name": "sender-profile-name"
            },
            "wa_id": "sender-wa-id"
        }
    ]
}

O corpo da notificação é mostrado como um exemplo. O exemplo lista todas as opções possíveis para mensagens recebidas. Um corpo de resposta válido pode conter apenas um objeto de mensagem: texto,imagem, vídeo,voz, documento,contatos, localização.Тело уведомления приведено в качестве примера. В примере перечислены все возможные варианты входящих сообщений. Тело действительного ответа может содержать только один объект сообщения: text, image, video, voice, document, contacts, location.

Opções de notificação#

Parâmetro Tipo Descrição
type string O tipo de notificação. Para mensagens recebidas, o campo assume o valor inbound_message
account object Objeto Conta. Contém detalhes da conta que recebeu a notificação
messages object Objeto Mensagem. Contém os dados da mensagem recebida
contacts object Objeto Contato. Contém os dados do remetente da mensagem

Objeto account#

O objeto contém dados da conta no sistema Green-API

Parâmetro Tipo Descrição
id integer Número da Conta
wa_id string Número de telefone da conta; destinatário da notificação recebida

Objetocontacts#

O objeto contém dados de contato do remetente da mensagem

Parâmetro Tipo Descrição
profile object Perfil de contato. Contém o nome do contato no campo name
wa_id string Telefone para contato

Объект messages#

O objeto contém os dados da mensagem recebida. Dependendo do parâmetro type, uma mensagem pode conter vários dados: texto, imagem, vídeo, mensagem de voz, documento, contato, geolocalização.

Parâmetro Tipo Descrição
from string ID de Contato ou Grupo - remetente da mensagem
id string ID de mensagem recebida
timestamp integer Hora da mensagem recebida no formato UNIX
type string O tipo de mensagem recebida. Valores possíveis: texto,imagem, vídeo,voz, documento,contatos, localização
text object Objeto Mensagem de Texto
image object Objeto Mensagem com Imagem
video object Objeto Mensagem com Vídeo
voice object Objeto Mensagem com Áudio
document object Objeto Mensagem com Documento
contacts object Objeto Mensagem com Contatos
location object Ojeto Mensagem com Geoo-localização

Objeto text#

Parâmetro Tipo Descrição
body string O texto da mensagem recebida. Pode conter vários URLs e formatação. O comprimento máximo de uma mensagem de texto é 4096 caracteres. Caracteres emoji são suportados 😃

Objeto image#

Parâmetro Tipo Descrição
id string ID do arquivo de imagem da mídia de armazenamento em nuvem. Use o método Get Media para baixar o arquivo.
mime_type string MIME tipo de arquivo
file_extension string A extensão do arquivo resultante, por exemplo jpeg
caption string Descrição da imagem resultante. Exibido no bate-papo abaixo da imagem

Objeto video#

Parâmetro Tipo Descrição
id string ID do arquivo de imagem da mídia de armazenamento em nuvem. Use o método Get Media para baixar o arquivo.
mime_type string MIME tipo de arquivo
file_extension string A extensão do arquivo resultante, por exemplo mp4
caption string Descrição da imagem resultante. Exibido no bate-papo abaixo da imagem

Objeto voice#

Parâmetro Tipo Descrição
id string ID do arquivo de imagem da mídia de armazenamento em nuvem. Use o método Get Media para baixar o arquivo.
mime_type string MIME tipo de arquivo
file_extension string A extensão do arquivo resultante, por exemplo pgp

Objeto document#

Parâmetro Tipo Descrição
id string ID do arquivo de imagem da mídia de armazenamento em nuvem. Use o método Get Media para baixar o arquivo.
mime_type string MIME tipo de arquivo
file_extension string A extensão do arquivo resultante, por exemplo pdf
filename string Nome completo do arquivo do documento, especificado ao enviar

Objeto contacts#

Parâmetro Tipo Descrição
vcard string Dados do cartão de contato. por exemplo: "\nN:;Green-API\nFN:Green-API\nTEL;WAID=5521985880074:+55 21 98588 0074\nTEL;WAID=552122647968:+55 21 22647968\nX-AB-LABEL:\nX-AB-LABEL:\n"

Objeto location#

Parâmetro Tipo Descrição
link string Link para um objeto geográfico em maps.google.com. por exemplo: https://maps.google.com/maps?q=-22.951916,-43.2126988&z=17&hl=pt-0br

Exemplos#

Mensagem de Texto Recebida#

{
    "type": "inbound_message",
    "account": {
        "id": 22123456,
        "wa_id": "5521912341234"
    },
    "messages": [
        {
            "from": "5521912344321",
            "id": "1234",
            "timestamp": 1603666324,
            "text": {
                "body": "I use Green-API to get this message from you!"
            },
            "type": "text"
        }
    ],
    "contacts": [
        {
            "profile": {
                "name": "Andrew"
            },
            "wa_id": "5521912344321"
        }
    ]
}

Mensagem de imagem recebida#

{
    "type": "inbound_message",
    "account": {
        "id": 22123456,
        "wa_id": "5521912341234"
    },
    "messages": [
        {
            "from": "5521912344321",
            "id": "1234",
            "timestamp": 1603666324,
            "image": {
                "id": "bca567ba-0bd7-4211-8792-0c123fbd2716",
                "mime_type": "image/jpeg",
                "file_extension": "jpeg",
                "caption": "Green-API Logo"
            },
            "type": "image"
        }
    ],
    "contacts": [
        {
            "profile": {
                "name": "Andrew"
            },
            "wa_id": "5521912344321"
        }
    ]
}

Mensagem de documento recebida#

{
    "type": "inbound_message",
    "account": {
        "id": 22123456,
        "wa_id": "5521912341234"
    },
    "messages": [
        {
            "from": "5521912344321",
            "id": "1234",
            "timestamp": 1603666324,
            "document": {
                "id": "bca567ba-0bd7-4211-8792-0c123fbd2716",
                "mime_type": "application/pdf",
                "file_extension": "pdf",
                "filename": "green-api-presentation.pdf"
            },
            "type": "document"
        }
    ],
    "contacts": [
        {
            "profile": {
                "name": "Andrew"
            },
            "wa_id": "5521912344321"
        }
    ]
}