Documentación de la API
Errores
Todos los errores comparten la misma forma. Base su lógica en code, nunca en message.
Forma
{
"error": {
"code": "invalid_request",
"message": "Invalid parameter `limit`: Number must be less than or equal to 100"
}
}code es estable y forma parte del contrato. message está escrito para la persona que depura: puede reescribirse, traducirse o precisarse en cualquier momento. Un cliente que comprueba el mensaje se rompe con la primera corrección tipográfica.
Códigos
| Código | Estado | Significado |
|---|---|---|
invalid_request | 400 | Un parámetro no ha superado la validación. El mensaje indica cuál. |
invalid_cursor | 400 | El cursor es ilegible. Devuelva page.nextCursor tal cual. |
unauthorized | 401 | No se ha enviado ninguna clave, o la cabecera no tiene la forma Bearer. |
invalid_key | 401 | La clave está mal formada o es desconocida. |
key_revoked | 401 | La clave existió pero ha sido revocada. Cree una nueva. |
insufficient_scope | 403 | La clave no lleva el ámbito que requiere la operación. |
account_suspended | 403 | La cuenta está suspendida y no puede usar la API. |
cors_not_supported | 403 | Llamada desde un origen de navegador. Esta API se llama desde un servidor. |
not_found | 404 | El recurso no existe o no es público. |
rate_limited | 429 | Se ha alcanzado el tope de caudal. Consulte Retry-After. |
internal_error | 500 | Fallo por nuestra parte. Queda registrado. |
query_unavailable | 503 | La consulta no puede servirse ahora mismo: hay un índice de almacenamiento construyéndose. Reintente. |
Qué reintentar
429 y 503 son temporales: reintente respetando Retry-After cuando esté presente. 400, 401, 403 y 404 no lo son: reintentar sin cambios devolverá lo mismo.