Códigos de Error
Códigos de Error
PgArachne devuelve objetos de error estándar JSON-RPC 2.0. A continuación se muestran los códigos específicos que puedes encontrar:
| Código | Mensaje | Significado |
|---|---|---|
-32700 | Parse error | El servidor recibió un JSON inválido. |
-32601 | Method not found | La función no existe en el esquema. |
-32602 | Invalid params | Los argumentos no coinciden con la firma de la función. |
-32001 | Permission denied | El rol de usuario actual carece de privilegios para ejecutar la función (nivel DB). |
-32000 | Internal Error | Error genérico del servidor (revisar logs). |
Comportamiento actual: las respuestas runtime se mapean principalmente a códigos HTTP con campo JSON-RPC
message. El código JSON-RPC personalizado -32001 se usa para denegación de rol/permisos.Mapa de estados HTTP
| HTTP | Mensaje típico | Cuándo ocurre |
|---|---|---|
400 | Invalid JSON request/Invalid function name | Payload inválido o formato de método incorrecto. |
401 | Authorization header is missing/Invalid or expired token | Autenticación ausente o inválida. |
403 | Permission denied for the specified role | Falló SET LOCAL ROLE (-32001). |
404 | Function does not exist/JWT is disabled/get_jwt was removed | El método no existe (-32601), se llamó a /token sin tener configurado JWT_SECRET, o se llamó al método JSON-RPC eliminado get_jwt (usa POST /{prefix}/{database}/token). |
429 | Too many login attempts/Too many failed authentication attempts | Se excedió el rate limit de login o de autenticación (LOGIN_RATE_LIMIT, LOGIN_RATE_LIMIT_PER_IP). |
413 | Request body too large/Response too large/Too many files in response | La petición supera MAX_REQUEST_BYTES, o una respuesta /file supera FILE_MAX_BYTES / FILE_MAX_ENTRIES. |
500 | Function call failed/Transaction commit failed | Falló la ejecución o el commit. |
503 | Database connection failed/Database unavailable | Base de datos o listener no disponible temporalmente. |