Referencia de errores

Formato de error normalizado y los códigos más frecuentes.

Formato

Todo error sigue la misma estructura JSON, sea cual sea el endpoint:

json
{
  "error": {
    "code": "insufficient_credits",
    "message": "Solde de credits insuffisant ou budget mensuel du projet depasse.",
    "request_id": "9480fe92-f68e-4731-b98e-d35a5e8b9819",
    "details": {}
  }
}

request_id identifica la solicitud de principio a fin a través de los servicios — útil de proporcionar si nos contactas por un error inesperado.

Códigos frecuentes

HTTPcódigoSignificado
401missing_api_keyCabecera Authorization ausente.
401invalid_api_keyClave API inválida, revocada o expirada.
403insufficient_scopeLa clave no tiene el scope requerido para esta categoría.
403not_a_memberNo perteneces a esta organización.
403csrf_check_failedFalta la cabecera de seguridad (cookie de sesión, no aplicable al uso de clave API).
404model_not_foundrouting_strategy "manual" con un model desconocido en el catálogo.
404no_model_availableNingún modelo cumple los criterios solicitados.
402insufficient_creditsSaldo de créditos insuficiente o presupuesto mensual del proyecto superado.
409conflictEstado incompatible con la acción (p. ej. conversación de agente no idle).
422validation_errorCuerpo de solicitud inválido (campo faltante, tipo incorrecto...).
429rate_limit_exceededDemasiadas solicitudes para esta clave — ver Límites de tasa.
503all_providers_unavailableTodos los proveedores candidatos han fallado (ver Enrutamiento y failover).

En los SDKs

Los SDKs oficiales convierten cada tramo de estado HTTP en una clase de error tipada (AuthenticationError, PermissionDeniedError, NotFoundError, InsufficientCreditsError, ConflictError, ValidationError, RateLimitError, ServerError), todas exponiendo .code, .status, .requestId y .details además del mensaje. Ver SDK de JavaScript / SDK de Python.