Receber notificações#
/v1/notifications
Use o methodo notifications
para receber notificações de entrada. As notificações contêm dados sobre mensagens recebidas, status de mensagens enviadas anteriormente, etc. Depois de receber e processar uma notificação, ela é expirada Excluir Notificação, para obter a próxima notificação.
A tecnologia Long polling é usada para receber notificações. A chamada aguarda uma notificação por 20 segundos. A chamada do método termina com uma resposta vazia se o tempo limite for atingido. Se uma notificação aparecer na fila em 20 segundos, a chamada do método será encerrada e o método retornará uma notificação recebida.
O período de armazenamento para notificações na fila é de 24 horas.
As notificações são enviadas em ordem de chegada FIFO
Request#
Para receber uma notificação, você precisa realizar um request no endereço:
GET https://api.green-api.com/v1/notifications
Resposta#
Se a resposta for bem-sucedida, o código HTTP 200
é retornado
{
"receipt": "notification-receipt-id",
"notifications": [
"notification-body"
]
}
Parâmetros de Resposta#
Campo | Tipo | Descrição |
---|---|---|
receipt | integer | ID de entrega de notificação; é usado para excluir notificação depois de processar. |
notifications | array | Notificação de entrada de acordo com formato de notificação |
Resposta de Exemplo#
200
{
"receipt": 1234567,
"notifications": [
{
"type": "inbound_message",
"account": {
"id": 22123456,
"wa_id": "5521912344321"
},
"messages": [
{
"from": "5521912344322",
"id": "1234",
"timestamp": 1603666324,
"text": {
"body": "I use Green-API to get this message from you!"
},
"type": "text"
}
],
"contacts": [
{
"profile": {
"name": "Andrew"
},
"wa_id": "5521912344322"
}
]
}
]
}
Erros#
Para obter uma lista de erros comuns a todos os métodos, consulte a seção Erros padrão.
Em caso de erro, o código HTTP 400
é retornado com uma descrição detalhada do erro no corpo da resposta.
Exemplo de código Python#
import requests
url = "https://api.green-api.com/v1/notifications"
payload = {}
headers = {
'Authorization': 'Bearer {{AuthToken}}'
}
response = requests.request("GET", url, headers=headers, data = payload)
print(response.text.encode('utf8'))