Ir para o conteúdo

Como consultar status de envio de mensagens agregadas

Consulta por período que retorna o quantitativo de mensagens agregada por status ou texto do problema.

Conforme explicado na documentação Assincronicidade no envio de mensagens, o envio de mensagens para contatos através da WhatsApp Business API acontece de forma assíncrona. Sendo assim a consulta ao status poderá não trazer resultados se ocorrer de forma imediata após a solicitação de envio. Recomendamos esperar alguns segundos depois da solicitação de envio para que a mensagem apareça no resultado.

1. Primeiro passo - Obter credenciais de acesso

Antes de consultar o status de solicitações de envio de mensagens, a aplicação cliente deve obter o token de acesso às APIs, conforme descrito no guia Como autenticar.

2. Segundo passo - Consultar status de envio de mensagens

Para consultar o status deve-se fazer uma requisição HTTP GET para o endpoint https://api.whatsapp.serpro.gov.br/{wabaId}/client/{fromPhoneNumberId}/status, conforme exemplo abaixo:

Parâmetros

dataFimStr (obrigatório): formato dd/mm/aaaa hh:mm:ss

dataInicioStr (obrigatório): formato dd/mm/aaaa hh:mm:ss

SomenteFalhas: (true; false)

pagina: O número da página de resultados a ser retornada. O padrão é 1 se não for especificado.

tamanho: O número de itens a serem retornados por página. O valor padrão é 20 e valor máximo permitido é 500

3. Terceiro passo - Resultado da consulta de status de envio de mensagens agregadas

Se SomenteFalhas = false o retorno apresenta um quantitativo agregado por status.

{ 
  "desconhecida": 0, 
  "entregue": 10, 
  "enviada": 11, 
  "falhou": 12, 
  "lida": 8, 
  "total": 23 
} 
Se SomenteFalhas = true retorna o quantitativo de mensagens agregada por texto do problema.

[ 
  { 
    "erroMsg": "code: 131026; details: Message Undeliverable.; ", 
    "total": 7 
  }, 
  { 
    "erroMsg": "[Error status code: 400]; (#100) Invalid parameter; Parameter name is missing for the parameter '{{nome}}'", 
    "total": 2 
  }, 
  { 
    "erroMsg": "code: 131049; details: In order to maintain a healthy ecosystem engagement, the message failed to be delivered.; ", 
    "total": 3 
  } 
]