Errores
La API de Scavio utiliza codigos de estado HTTP estandar y devuelve respuestas de error estructuradas para ayudarte a depurar problemas rapidamente.
Formato de Respuesta de Error
JSON
{
"error": {
"code": "error_code_string",
"message": "Human-readable error description"
}
}Codigos de Estado
| Estado | Codigo | Descripcion |
|---|---|---|
| 400 | bad_request | Cuerpo de solicitud invalido o parametros requeridos faltantes |
| 401 | unauthorized | API key faltante o invalida |
| 403 | forbidden | La API key no tiene permiso para esta accion |
| 402 | insufficient_credits | Sin creditos restantes. Recarga o mejora tu plan. |
| 429 | rate_limit_exceeded | Demasiadas solicitudes. Espera y reintenta. |
| 500 | internal_error | Error del servidor. Reintenta despues de una breve espera. |
Errores Comunes
Parametro query faltante
400 Bad Request
{
"error": {
"code": "bad_request",
"message": "The 'query' field is required"
}
}search_type invalido
400 Bad Request
{
"error": {
"code": "bad_request",
"message": "Invalid search_type. Must be one of: classic, news, maps, images, lens"
}
}API key invalida
401 Unauthorized
{
"error": {
"code": "unauthorized",
"message": "Invalid or missing API key"
}
}Sin creditos
402 Payment Required
{
"error": {
"code": "insufficient_credits",
"message": "No credits remaining. Please upgrade your plan or purchase additional credits."
}
}Limite de tasa excedido
429 Too Many Requests
{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded. Retry after 30 seconds."
}
}Mejores Practicas
- Siempre verifica el codigo de estado HTTP antes de procesar el cuerpo de la respuesta
- Usa el campo
error.codepara el manejo programatico de errores - Usa el campo
error.messagepara registro y depuracion - Implementa logica de reintentos con retroceso exponencial para errores 429 y 500
- No reintentes errores 400 o 401 -- corrige la solicitud primero