Erreurs

Un point d’accès /v1 pour tous les fournisseurs. Pointez votre client OpenAI vers une autre URL et une clé, avec vos clés et 0 % de majoration.

Toutes les erreurs utilisent la même enveloppe.

json
{
  "error": {
    "code": 402,
    "message": "Insufficient credits",
    "metadata": {"error_type": "insufficient_credits"}
  }
}

code est le statut HTTP, sous forme de nombre. Testez sur celui-ci et sur metadata.error_type — jamais sur le message, qui est rédigé pour un humain et peut être reformulé.

Codes de statut

  • 400 invalid_request — corps mal formé ou paramètre invalide.
  • 401 invalid_credentials — clé absente, inconnue ou révoquée.
  • 402 insufficient_credits — solde nul ou négatif. Toutes les requêtes sont refusées, y compris pour les modèles gratuits : le blocage porte sur le compte, pas sur le modèle.
  • 403 permission_denied — mauvais type de clé. Généralement une clé d’inférence sur un point d’accès de gestion.
  • 404 not_found — modèle ou route inconnue.
  • 405 method_not_allowed — la route existe, mais pas avec cette méthode. L’en-tête Allow indique les méthodes qu’elle accepte.
  • 413 payload_too_large — plus long que le contexte de tous les candidats.
  • 429 rate_limited — voir Limites.
  • 451 region_not_served — nous ne desservons pas votre région pour le moment.
  • 502 provider_error — le fournisseur a échoué. La réponse porte son statut et son corps.
  • 524 provider_unreachable — aucun fournisseur n’a répondu : injoignable, ou silencieux au-delà du délai. Tous les candidats ont été essayés.
  • 404 no_endpoints_available — aucun point d’accès ne satisfait la requête. Nomme les filtres qui ont vidé l’ensemble.
  • 503 service_unavailable — une fonction que ce déploiement n’a pas configurée, comme la facturation ou la gestion des clés BYOK.
  • 529 provider_overloaded — le fournisseur est saturé.

Lesquelles valent la peine d’être réessayées

429, 502, 524 et 529 sont transitoires — temporisez puis réessayez. La bascule a déjà essayé d’autres fournisseurs avant que vous n’en voyiez une.

402, 403, 413 et 503 ne le sont pas. Réessayer ne change rien, car la contrainte porte sur votre compte ou votre requête. 503 en particulier n’est délibérément pas un 502 : cela signifie que tous les candidats ont été écartés par une règle que vous ou votre organisation avez définie.