Errores
Todos los errores — incluidos los producidos en el borde — comparten
un mismo envelope JSON. El campo code es estable y seguro para programar
contra él; detail es legible para humanos y puede cambiar.
{
"type": "about:blank",
"title": "UNAUTHORIZED",
"status": 401,
"code": "unauthorized",
"detail": "Unauthorized",
"request_id": "9739dd78-..."
}
| Status | code | Significado |
|---|---|---|
| 401 | unauthorized | API key ausente, mal formada o desconocida |
| 403 | access_denied | Key revocada/expirada, plan faltante, IP no permitida, o recurso fuera de tus permisos |
| 404 | — | El recurso no existe |
| 400 | bad_request | Parámetros inválidos (p. ej. cursor malo) |
| 422 | — | Error de validación; el cuerpo lista los campos con problema |
| 429 | rate_limited / quota_exceeded | Ver Límites |
| 5xx | server_error | De nuestro lado — reintenta con retroceso; incluye el request_id al contactar soporte |
Siempre registra el
request_id: le permite a nuestro
equipo de soporte encontrar tu request exacto.