Pular para o conteúdo principal

Erros

Quando ocorre um erro, a API retorna uma lista de objetos contendo um código e uma mensagem descritiva.

[
{
"codigo": "MONITORAMENTO_INATIVO",
"mensagem": "O monitoramento de NF-e não está ativo para esta empresa."
}
]

O campo codigo identifica o erro e deve ser utilizado pela sua aplicação.

O campo mensagem é destinado à exibição para usuários e ao diagnóstico, podendo sofrer alterações de texto ao longo do tempo.


Sempre trate a resposta como uma lista

Mesmo quando existe apenas um erro, a resposta continua sendo um array.

Isso permite que uma mesma requisição retorne múltiplos problemas de validação.

[
{
"codigo": "CAMPO_OBRIGATORIO",
"mensagem": "O campo empresaId é obrigatório."
},
{
"codigo": "DATA_INVALIDA",
"mensagem": "A data informada é inválida."
}
]

Códigos HTTP

A API utiliza os códigos HTTP convencionais para indicar o resultado da requisição.

StatusSignificado
400 Bad RequestA requisição contém dados inválidos.
401 UnauthorizedA credencial é inválida ou não possui acesso ao recurso solicitado.
404 Not FoundO recurso solicitado não foi encontrado.
409 ConflictA operação não pode ser executada devido ao estado atual do recurso.
429 Too Many RequestsO limite de requisições foi excedido.
5xxOcorreu um erro interno ou uma indisponibilidade temporária.

Retentativas

Nem todo erro deve ser tratado da mesma forma.

SituaçãoRecomendação
400, 401, 404 e 409Corrija a requisição antes de tentar novamente.
429Aguarde o tempo indicado pela API antes de realizar uma nova tentativa.
5xxRealize novas tentativas utilizando backoff exponencial.

Boas práticas

  • Utilize o campo codigo para tomar decisões na aplicação.
  • Utilize o campo mensagem apenas para exibição ou diagnóstico.
  • Registre o corpo da requisição e da resposta em seus logs para facilitar a investigação de falhas.