Erreurs

Tous les codes d’erreur de la Direct API, leur signification et s’il faut réessayer, y compris la marche à suivre lorsqu’un appel payant échoue avec une 5xx.

Toutes les erreurs ont le même corps. Basez votre logique sur le statut HTTP et sur code ; montrez description ou error.message aux personnes.

{
  "description": "Human-readable explanation, safe to log.",
  "code": "machine_readable_code",
  "data": { "request_id": "…", "…": "…" },
  "error": { "error_code": "…", "message": "…" }
}

Chaque réponse, succès comme erreur, porte X-Request-Id. Indiquez-le lorsque vous contactez le support.

Codes d’erreur

HTTPcodeSignificationRéessayer
400invalid_requestJSON mal formé, champ de corps inconnu, ou input non conforme au schéma de l’outil (chaque champ incorrect est nommé)non, corrigez la requête
401invalid_api_keyclé absente, mal formée, révoquée ou expiréenon
402insufficient_creditsl’organisation ne peut pas payer l’appelaprès un rechargement
402api_key_credit_limit_reachedl’appel dépasserait la limite quotidienne, mensuelle ou totale de la clé (data.period indique laquelle)après la réinitialisation de la période ou le relèvement de la limite
402subscription_pausedl’abonnement de l’organisation est suspenduaprès sa reprise
402payment_requiredl’abonnement de l’organisation présente un impayéaprès le règlement du paiement
403direct_api_disabledla Direct API n’est pas activée pour cette organisationnon, contactez Morphic
403insufficient_scopela clé ne dispose pas de l’autorisation requise par cet outil (data.required_scopes)non, utilisez une autre clé
403plan_upgrade_requiredle modèle ou la fonctionnalité ne fait pas partie de votre forfaitnon
403tool_not_availablel’outil facture des crédits et les outils payants ne sont pas encore activés pour votre organisation (data.tool le nomme) ; votre contact Morphic les activenon
403model_disabled_by_organizationun administrateur de l’organisation a désactivé ce modèle, cette résolution ou cette option audio et ne l’a pas autorisé pour l’APInon, adressez-vous à votre administrateur
404not_foundoutil, génération ou webhook inconnu, ou hors de portée de cette clénon
409idempotency_conflictIdempotency-Key réutilisé avec un corps ou un outil différentnon, utilisez une nouvelle clé
409idempotency_in_progressla requête d’origine avec cette clé est encore en coursoui, après une seconde
409idempotency_outcome_unknownla requête d’origine avec cet Idempotency-Key a échoué ou n’a jamais répondu après avoir pu s’exécuter : son issue est donc inconnuenon : vérifiez son résultat, puis utilisez une nouvelle clé
413payload_too_largecorps de plus de 1 Monon
422tool_refusedl’entrée est bien formée mais ne peut pas être exécutée ; rien n’a été facturénon, modifiez l’entrée
429rate_limitedune limite de débit a été atteinteoui, après Retry-After
500internal_errorerreur de notre côtéappel gratuit : oui ; appel payant : voir ci-dessous
503service_unavailablesurcharge temporaire ou maintenanceappel gratuit : oui, en espaçant les tentatives ; appel payant : voir ci-dessous
504tool_timed_outl’outil n’a pas répondu dans les 60 s ; un appel qui lance des générations peut néanmoins les avoir lancéesappel gratuit : oui ; appel payant : voir ci-dessous

Une erreur 422 tool_refused indique le champ, la valeur et les valeurs qui auraient fonctionné ; voir Refus d’un outil. Une génération qui échoue après avoir démarré indique son propre error.error_code dans l’objet génération, et le montant facturé est remboursé.

Un appel payant qui répond 500, 503 ou 504 peut avoir lancé du travail et l’avoir facturé avant d’échouer. Le réessayer avec le même Idempotency-Key ne l’exécute jamais deux fois : la nouvelle tentative répond 409 idempotency_outcome_unknown.

  1. Vérifiez ce que l’appel a fait : list_generations, ou GET /v1/direct/usage filtré par période.
  2. N’envoyez un nouvel Idempotency-Key que pour le travail qui n’a pas démarré.

Si aucune réponse n’est arrivée (une connexion coupée), réessayez avec la même clé. Vous obtenez la réponse enregistrée, ou 409 idempotency_in_progress tant que l’appel est en cours. Voir Idempotence.


Si vous rencontrez le moindre problème ou si vous avez des questions, n’hésitez pas à nous contacter. Nous serons ravis de vous aider. Écrivez-nous à support@morphic.com.

Sur cette page