Pular para o conteúdo principal

Codigos de Erro

Codigos de Status HTTP

CodigoStatusDescricao
200OKRequisicao processada com sucesso.
201CreatedRecurso criado com sucesso.
400Bad RequestDados da requisicao invalidos (campos faltando, formato incorreto).
401UnauthorizedCredenciais ausentes, invalidas ou token expirado.
403ForbiddenSem permissao para acessar o recurso ou feature nao habilitada no plano.
404Not FoundRecurso nao encontrado ou nao pertence a sua empresa.
429Too Many RequestsLimite de taxa excedido. Aguarde e tente novamente.
500Internal Server ErrorErro interno do servidor. Contate o suporte se persistir.

Formato da Resposta de Erro

Todas as respostas de erro seguem o mesmo formato:

{
"statusCode": 400,
"message": "VALIDATION_ERROR",
"friendlyMessage": "O campo 'name' e obrigatorio."
}
CampoTipoDescricao
statusCodenumberCodigo HTTP do erro.
messagestringCodigo interno do erro (constante, em ingles). Util para tratamento programatico.
friendlyMessagestringMensagem legivel em portugues. Pode ser exibida ao usuario final.

Alguns erros de validacao podem incluir detalhes adicionais:

{
"statusCode": 400,
"message": "VALIDATION_ERROR",
"friendlyMessage": "Dados invalidos. Verifique os campos e tente novamente.",
"errors": [
{
"field": "documentNumber",
"message": "CPF/CNPJ invalido."
},
{
"field": "originalAmount",
"message": "O valor deve ser maior que zero."
}
]
}

Erros Comuns e Solucoes

401 — Unauthorized

MensagemCausaSolucao
INVALID_CREDENTIALSAPI Key ou Secret incorretosVerifique as credenciais. Regenere se necessario.
TOKEN_EXPIREDO accessToken expirouChame POST /external/v1/auth/refresh-token para renovar.
TOKEN_INVALIDToken mal formado ou revogadoAutentique novamente com POST /external/v1/auth.
MISSING_AUTH_HEADERHeader Authorization ausenteInclua Authorization: Bearer {token} na requisicao.
MISSING_COMPANY_TOKENHeader x-company-token ausenteInclua x-company-token: {companyToken} na requisicao.

400 — Bad Request

MensagemCausaSolucao
VALIDATION_ERRORCampos obrigatorios faltando ou formato invalidoVerifique o body da requisicao conforme a documentacao do endpoint.
INVALID_ENUM_VALUEValor nao permitido para campo enumConsulte os valores aceitos na documentacao do recurso.
INVALID_DATE_FORMATData em formato incorretoUse o formato ISO 8601: YYYY-MM-DD ou YYYY-MM-DDTHH:mm:ssZ.
DUPLICATE_ENTRYRegistro duplicado (ex: mesmo documentNumber)Verifique se o registro ja existe antes de criar.

403 — Forbidden

MensagemCausaSolucao
FEATURE_NOT_ENABLEDFeature nao habilitada no plano da empresaContate o administrador para habilitar a feature no plano.
INSUFFICIENT_PERMISSIONSAPI Key sem permissao para este recursoVerifique as permissoes da chave ou gere uma nova com escopo adequado.

404 — Not Found

MensagemCausaSolucao
RESOURCE_NOT_FOUNDID inexistente ou recurso inativoVerifique se o ID esta correto e se o recurso nao foi inativado.
ROUTE_NOT_FOUNDEndpoint inexistenteVerifique a URL e a versao da API (/v1).

429 — Too Many Requests

MensagemCausaSolucao
RATE_LIMIT_EXCEEDEDMais de 100 requisicoes por minutoImplemente exponential backoff. Veja Rate Limits.

500 — Internal Server Error

MensagemCausaSolucao
INTERNAL_ERRORErro inesperado no servidorTente novamente apos alguns segundos. Se persistir, abra um chamado no suporte com o requestId (quando disponivel).

Boas Praticas de Tratamento de Erros

  1. Sempre verifique o statusCode antes de processar a resposta
  2. Trate 401 com renovacao automatica de token e retry da requisicao original
  3. Trate 429 com exponential backoff (veja Rate Limits)
  4. Registre logs com statusCode, message e o body enviado para facilitar debug
  5. Nao exiba message ao usuario final — use friendlyMessage que ja esta em portugues
  6. Em caso de 500, aguarde pelo menos 5 segundos antes de tentar novamente