Formato de resposta de erro
Toda resposta de erro segue uma estrutura de envelope consistente:| Campo | Tipo | Descrição |
|---|---|---|
type | string | Categoria geral do erro para tratamento de alto nível. |
code | string | Código de erro legível por máquina. Os clientes devem fazer switch sobre esse valor. |
message | string | Mensagem de erro legível por humanos que termina com ponto. |
param | string ou null | O campo da requisição que causou o erro, se aplicável. |
Tipos de erro
| Tipo | Descrição |
|---|---|
invalid_request_error | A requisição está malformada ou contém parâmetros inválidos. |
authentication_error | A autenticação falhou (chave de API ausente ou inválida). |
permission_error | A chave de API não tem permissão pra essa operação. |
api_error | Ocorreu um erro interno ou de um serviço upstream. |
Códigos de erro
| Código | Status HTTP | Descrição |
|---|---|---|
parameter_missing | 400 | Um campo obrigatório está ausente no body da requisição. |
parameter_invalid | 400 | O valor de um campo está malformado ou não é aceito. |
account_invalid | 400 | A conta associada à chave de API está mal configurada. |
authentication_required | 401 | Chave de API ausente ou inválida. |
permission_denied | 403 | Permissões insuficientes pra essa operação. |
resource_not_found | 404 | O recurso solicitado não existe. |
resource_conflict | 409 | Já existe um recurso com o identificador fornecido. |
service_unavailable | 503 | Uma dependência externa está temporariamente fora do ar. |