Erreurs
Gérez les échecs de l'API AI Glot à l'aide de codes d'erreur stables, d'identifiants de requête, d'instructions de nouvelle tentative et d'explications détaillées pour chaque erreur documentée.
Toutes les erreurs de l’API utilisent le même format. Traitez les erreurs en fonction de error.code, jamais du message destiné aux utilisateurs.
{
"error": {
"type": "permission_error",
"code": "insufficient_scope",
"message": "This credential is missing the batches:write scope.",
"docs_url": "https://ai-glot.com/docs/api/errors#insufficient_scope"
},
"request_id": "req_example"
}Codes d’état
| Status | Meaning | What to do |
|---|---|---|
| 400 | Requête mal formée ou champ inconnu | Corrigez la requête |
| 401 | Identifiant absent, invalide, expiré ou révoqué | Remplacez-le ou renouvelez-le |
| 403 | Utilisateur authentifié, mais non autorisé | Accordez la portée ou la fonctionnalité requise |
| 404 | Ressource absente ou située hors de cet espace de travail | Vérifiez l’identifiant et l’espace de travail |
| 409 | L’état actuel est incompatible avec la requête | Consultez la ressource, puis décidez de la marche à suivre |
| 413 | Corps de requête trop volumineux | Envoyez un corps plus petit |
| 422 | Valeur bien formée, mais invalide | Corrigez la valeur indiquée |
| 429 | Limite de requêtes atteinte | Attendez la valeur de Retry-After |
| 500/503 | AI Glot a rencontré une erreur ou est temporairement indisponible | Réessayez en espaçant les tentatives |
Codes d’authentification et d’autorisation
authentication_required
Aucun identifiant d’authentification bearer n’a été envoyé. Ajoutez l’en-tête Authorization.
invalid_api_key
La clé est mal formée ou inconnue. Vérifiez que vous avez copié toute la valeur aig_live_….
api_key_expired
La clé a atteint sa date d’expiration configurée. Créez ou utilisez une clé de remplacement.
api_key_revoked
Un administrateur a révoqué ou renouvelé cette clé. Mettez à jour l’intégration avec un identifiant actif.
insufficient_scope
L’identifiant a permis l’authentification, mais ne possède pas la portée requise pour cette opération.
feature_not_available
Le forfait de l’espace de travail ou la version actuelle de la plateforme ne comprend pas la fonctionnalité demandée.
admin_required
Seul un administrateur de l’espace de travail peut effectuer cette opération.
Codes de requête
invalid_request
La requête ne peut pas être analysée ou ne respecte pas le contrat du point de terminaison.
unknown_field
Une propriété du corps JSON n’est pas reconnue. Corrigez son orthographe plutôt que de supprimer la validation. Les paramètres de requête non reconnus ne déclenchent pas cette erreur : ils sont ignorés. Ainsi, un filtre mal orthographié renvoie une réponse 200 sans filtrage.
invalid_parameter
Un paramètre présente un type, une plage ou un format incorrect.
invalid_cursor
Le curseur de pagination est invalide. Réutilisez exactement la valeur de next_cursor telle qu’elle a été renvoyée.
request_too_large
Le corps de la requête dépasse la limite maximale du point de terminaison.
Codes de ressource et d’état
batch_not_found
Aucune traduction visible ne porte cet identifiant. Les ressources d’un autre espace de travail renvoient volontairement la même erreur.
glossary_not_found
Aucun glossaire n’existe pour cette paire de langues.
resource_not_found
La ressource ou la route demandée n’existe pas.
glossary_already_exists
Un glossaire existe déjà pour cette paire de langues. Modifiez-le au lieu d’en créer un autre.
result_not_ready
La traduction n’est pas terminée. Aucun résultat ne peut donc encore être téléchargé.
batch_not_editable
L’état actuel de la traduction ne permet pas la modification administrative demandée.
Codes de fichier et de format
unsupported_format
L’extension du fichier ne fait pas partie des formats acceptés par AI Glot. Consultez la page Fichiers et formats pour connaître tous les formats et leurs extensions.
file_too_large
Le fichier dépasse la limite autorisée pour son format. Les limites s’appliquent à chaque format et non globalement (60 MB pour CSV, 4 MB pour un catalogue PO). Une taille acceptée pour une extension peut donc être refusée pour une autre.
file_fetch_failed
Impossible de récupérer file_url. L’URL doit utiliser HTTPS et pointer vers la destination finale : les redirections ne sont pas suivies. Un lien raccourci ou une URL signée qui redirige ensuite échouera donc.
file_retention_expired
La période de conservation du fichier importé est échue et celui-ci n’est plus stocké. Créez à nouveau la traduction à partir du fichier source.
file_expired
Le fichier associé à cette traduction n’existe plus. L’opération ne peut donc pas se poursuivre.
result_too_large
La traduction terminée dépasse la taille maximale pouvant être renvoyée. Divisez le fichier source et traduisez-le en plusieurs parties.
Codes de forfait et d’approbation
plan_invalid
La consigne ou la demande d’ajustement n’a pas pu être convertie en plan exploitable. Reformulez-la : il est plus fiable de préciser les champs ou colonnes à traduire que de les décrire.
no_plan_yet
Une tentative d’approbation a eu lieu avant la création d’un plan. Appelez d’abord POST /v1/batches/{batch_id}/plan. Cette vérification empêche une intégration de facturer un espace de travail pour une traduction que personne n’a décrite.
batch_not_awaiting_approval
La traduction n’est pas dans un état qui permet son approbation. Elle est généralement déjà en cours ou terminée. Interrogez plutôt GET /v1/batches/{batch_id}, au lieu de l’approuver à nouveau.
insufficient_credits
Le solde de l’espace de travail ne couvre pas le coût calculé du plan. Aucun crédit n’est réservé : la traduction pourra donc être approuvée dès l’ajout de crédits.
Codes de langue et de glossaire
language_not_supported
La balise ne figure pas dans le catalogue des langues prises en charge. Consultez GET /v1/languages.
invalid_language_pair
L’identifiant de la paire de langues ne peut pas être divisé en deux balises BCP 47 prises en charge.
glossary_term_limit_reached
Le nombre de termes obtenu dépasserait la limite prévue par le forfait de l’espace de travail. La mise à jour est atomique : aucune modification n’a été effectuée.
glossary_limit_reached
L’espace de travail a atteint le nombre maximal de glossaires autorisé par le forfait actuel.
invalid_glossary_terms
Une ou plusieurs entrées du glossaire sont vides, incomplètes ou autrement invalides.
Codes de service
rate_limited
L’identifiant a dépassé la limite de requêtes sur une période donnée. Attendez le délai indiqué par Retry-After, puis réessayez en ajoutant un délai aléatoire.
internal_error
AI Glot a rencontré une erreur inattendue. Réessayez en espaçant les tentatives et conservez le request_id.
service_unavailable
Un service requis est temporairement indisponible. Réessayez en espaçant les tentatives.