Aller au contenu principal
Erreurs et nouvelles tentatives

L'enveloppe d'erreur, la liste complète des réponses et la marche à suivre pour chacune.

Markdown

Enveloppe​

{ "message": "MISSING_CLIENT_ID", "details": [] }

message identifie l'erreur, et details est généralement vide. Lorsqu'un flux refuse une requête, par exemple à cause d'une image invalide, la réponse conserve cette enveloppe avec la raison dans message et details. Voir Refus.

Référence​

StatutmessageEndpointRéessayer ?
400INVALID_REQUESTcréationNon. Corrigez la requête
400REQUEST_TOO_LARGEcréationNon. Corps supérieur à 2 MiB
400MISSING_<FIELD> / INVALID_<FIELD>créationNon. <FIELD> est le champ en snake case majuscule, par exemple MISSING_CREDENTIAL_VALUE
401Vide ("")création, selfieNon. Unico a refusé la clé d'accès. Vérifiez HUMAN_API_ACCESS_KEY
409CORRELATION_ID_ALREADY_USEDcréationNon. Un autre processus a ce correlationId. Utilisez-en un nouveau
422ATTRIBUTE_TYPE_NOT_SUPPORTEDcréationNon. Utilisez un code du catalogue
4xxLe message du fluxcréationNon. Le processus est enregistré comme échoué
404PROCESS_NOT_FOUNDlecture, selfieNon
404SELFIE_NOT_FOUNDselfieNon. Aucun selfie n'est disponible pour le processus
4xxLe message du refusselfieNon
503DATABASE_UNAVAILABLEtousCréation : voir ci-dessous. Lecture et selfie : oui
502UPSTREAM_UNAVAILABLEtousCréation : voir ci-dessous. Lecture et selfie : oui
500INTERNALtousCréation : voir ci-dessous

Rejouer une création​

Chaque création acceptée démarre un nouveau processus avec un nouvel id, et chaque correlationId ne peut être utilisé qu'une fois : un correlationId déjà utilisé, par un processus dans n'importe quel état, est refusé avec 409 CORRELATION_ID_ALREADY_USED.

  • 400, 409, 422 et autres refus : corrigez la requête avant de la renvoyer.
  • 503 DATABASE_UNAVAILABLE : rien n'a été stocké ni traité. Réessayez avec le même correlationId.
  • 502 et 500 : la requête n'a pas été confirmée. Ne réessayez pas automatiquement. Pour réessayer, envoyez une nouvelle création avec un nouveau correlationId.

Approche recommandée pour votre back-end :

  1. Enregistrez chaque tentative avant d'appeler Human Plugin, avec son correlationId comme clé.
  2. En cas de 502 ou 500, décidez selon votre règle métier s'il faut lancer une nouvelle tentative.
  3. Gardez les tentatives liées entre elles dans vos enregistrements.

Rejouer une lecture​

GET, pour un processus ou son selfie, peut être rejoué sans risque. Utilisez un backoff et arrêtez-vous sur 404.

Limites de débit​

Human Plugin n'a pas de limiteur de débit intégré. Appliquez des limites au niveau de votre passerelle si nécessaire.