Aller au contenu

Codes d'erreur

Une erreur répond toujours par un statut HTTP et un corps JSON :

{ "error": "Message lisible", "code": "internal_error" }

error décrit le problème ; code n’est présent que sur certaines erreurs et ne change pas d’une version à l’autre.

Statut Signification Que faire
400 Corps invalide, champ obligatoire vide, ou company_id qui n’est pas fait de 32 caractères hexadécimaux. Corriger la requête.
401 company_id absent, ou valeur de l’en-tête différente de celle du corps. Vérifier l’en-tête Authorization.
402 Crédits insuffisants pour lancer le parcours. Le candidat n’a pas été contacté. Recharger les crédits de l’entreprise, puis relancer.
409 L’offre est déjà rattachée à une autre entreprise (ats_offer_owned_by_another_org). Vérifier l’identifiant d’offre et l’entreprise appelante.
422 Aucune session créée dans un lot : tous les candidats ont été refusés. Lire les motifs renvoyés, corriger les données.
500 Erreur interne (code: internal_error), sans détail. Réessayer plus tard. Une assignation peut être rejouée sans risque de doublon.

Dans un lot, chaque candidat refusé apparaît dans failed avec son motif (reason) et, quand il y en a un, un détail lisible (detail) :

Motif Signification
INVALID_DATA Téléphone impossible, adresse e-mail manquante ou date d’appel illisible.
DUPLICATE_PHONE_IN_BATCH Le même numéro apparaît deux fois dans le lot.
DUPLICATE_ACTIVE_SESSION Le candidat a déjà une session active pour cette évaluation.
INSUFFICIENT_CREDITS L’entreprise n’a plus assez de crédits.