Tratamento de Erros (RFC 7807)
A DFPay retorna erros no formato Problem Details com os campos: type, title, status, detail (opcional), errors (opcional), traceId.
Formato de Erro
Todos os erros seguem o formato ProblemDetails com os seguintes campos:
typeURI de referência do tipo de erro
titleTítulo resumido do erro
statusCódigo HTTP do erro
detailDescrição detalhada do erro (opcional)
errorsObjeto com detalhes de validação (opcional)
traceIdID de rastreamento da requisição
Exemplo 400 - Validação
{
"type": "https://tools.ietf.org/html/rfc9110#section-15.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"errors": {
"Data.Customer.Email": [ "The Email field is required." ]
},
"traceId": "00-...-00"
}Exemplo 401 - Autenticação
{
"type": "about:blank",
"title": "Unauthorized",
"status": 401,
"detail": "API Key ausente ou inválida",
"traceId": "00-...-00"
}Exemplo 403 - Permissão
{
"type": "about:blank",
"title": "Forbidden",
"status": 403,
"detail": "Acesso negado para esta company",
"traceId": "00-...-00"
}Exemplo 404 - Recurso não encontrado
{
"type": "about:blank",
"title": "Not Found",
"status": 404,
"traceId": "00-...-00"
}Exemplo 500 - Erro interno
{
"type": "about:blank",
"title": "Internal Server Error",
"status": 500,
"traceId": "00-...-00"
}Códigos de Status
200OKRequisição bem-sucedida
400Bad RequestErro de validação
401UnauthorizedAutenticação ausente/inválida
403ForbiddenCredenciais válidas, sem permissão
404Not FoundRecurso inexistente
500Internal Server ErrorErro inesperado