Códigos de Erro
Códigos de Erro
O PgArachne retorna objetos de erro padrão JSON-RPC 2.0. Abaixo estão os códigos específicos que você pode encontrar:
| Código | Mensagem | Significado |
|---|---|---|
-32700 | Parse error | Um JSON inválido foi recebido pelo servidor. |
-32601 | Method not found | A função não existe no esquema. |
-32602 | Invalid params | Os argumentos não correspondem à assinatura da função. |
-32001 | Permission denied | O papel de usuário atual não tem privilégios para executar a função (nível BD). |
-32000 | Internal Error | Erro genérico do servidor (verifique os logs). |
Comportamento atual: as respostas runtime são mapeadas principalmente para status HTTP com campo JSON-RPC
message. O código JSON-RPC customizado -32001 é usado para negação de role/permissão.Mapeamento de status HTTP
| HTTP | Mensagem típica | Quando acontece |
|---|---|---|
400 | Invalid JSON request/Invalid function name | Payload inválido ou formato de método incorreto. |
401 | Authorization header is missing/Invalid or expired token | Autenticação ausente ou inválida. |
403 | Permission denied for the specified role | SET LOCAL ROLE falhou (-32001). |
404 | Function does not exist/JWT is disabled/get_jwt was removed | Método alvo não existe (-32601), /token foi chamado sem JWT_SECRET configurado, ou o método JSON-RPC removido get_jwt foi chamado (use POST /{prefix}/{database}/token). |
429 | Too many login attempts/Too many failed authentication attempts | Rate limit de login ou de autenticação excedido (LOGIN_RATE_LIMIT, LOGIN_RATE_LIMIT_PER_IP). |
413 | Request body too large/Response too large/Too many files in response | A requisição excede MAX_REQUEST_BYTES, ou uma resposta /file excede FILE_MAX_BYTES / FILE_MAX_ENTRIES. |
500 | Function call failed/Transaction commit failed | Falha na execução ou no commit. |
503 | Database connection failed/Database unavailable | Banco de dados ou listener indisponível temporariamente. |