Passer au contenu principal

Vue d’ensemble

Traitez les erreurs en deux niveaux : d’abord le statut HTTP, puis error.code lorsqu’il est présent. Les noms de champs et les codes restent inchangés car ils font partie du contrat API.

Format de réponse

{
  "error": {
    "code": "PLAN_FEATURE_NOT_ENABLED",
    "message": "Feature is not enabled for this plan",
    "details": { "feature": "workflowAutomation" }
  }
}

HTTP

StatutSignificationAction recommandée
400Invalid JSON, field, option, human-verification, file input, or money validation problem.Fix request data before retrying.
401Missing/invalid token, bad credentials, MFA failure, revoked refresh token, or inactive tenant/user/member/role.Re-authenticate or restore access.
403Authenticated but blocked by permission, scope, plan entitlement, capacity, origin, or signature.Grant access, upgrade plan, or fix request integrity settings.
404Resource missing, deleted, outside tenant, or hidden by scope.Check id and caller scope.
409Unique value already exists.Usage another value or load existing resource.
422Domain rule violation such as workflow gate, dynamic field rule, import limit, or required evidence.Resolve the domain condition and retry.
429Rate limit exceeded.Back off before retrying.
500Unhandled server error.Check whether writes succeeded before retrying.
503Dependency temporarily unavailable.Nouvelle tentative idempotent reads with backoff.

Plan et quota

CodeTraitement
PLAN_CONTRACT_LIMIT_EXCEEDEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
PLAN_SEAT_LIMIT_EXCEEDEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
PLAN_STORAGE_LIMIT_EXCEEDEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
PLAN_FEATURE_NOT_ENABLEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
PLAN_SUBSCRIPTION_REQUIREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
PLAN_SUBSCRIPTION_INACTIVEUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
PLAN_NOT_AVAILABLEUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.

Fichier et téléversement

CodeTraitement
FILE_NAME_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_SIZE_EMPTYUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_TOO_LARGEUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_CONTENT_TYPE_NOT_ALLOWEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_EXTENSION_NOT_ALLOWEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_KIND_NOT_ALLOWEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_REF_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_KIND_MISMATCHUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_SCAN_NOT_CLEANUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_SCAN_REQUEST_FAILEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
FILE_BINDING_CONTEXT_MISMATCHUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_OBJECT_KEY_MISMATCHUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_OBJECT_NOT_FOUNDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_OBJECT_SIZE_MISMATCHUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_OBJECT_TYPE_MISMATCHUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_OBJECT_CHECKSUM_MISMATCHUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_TOKEN_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_TOKEN_EXPIREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UPLOAD_METADATA_MISMATCHUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.

Montant et facture

CodeTraitement
AMOUNT_REQUIREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
AMOUNT_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
AMOUNT_UNSAFE_NUMBERUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
AMOUNT_OUT_OF_RANGEUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
AMOUNT_SCALE_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
UNSUPPORTED_CURRENCYUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
INVOICE_AMOUNT_EXCEEDS_TARGETUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.

Contrat et workflow

CodeTraitement
OWNER_SCOPE_RESTRICTEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
ASSIGNEE_NOT_ACTIVE_TENANT_MEMBERUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
SUBJECT_NOT_FOUNDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
CONTRACT_TYPE_NOT_CONFIGUREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
LIFECYCLE_STAGE_NOT_CONFIGUREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
LIFECYCLE_TEMPLATE_NOT_AVAILABLEUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
DYNAMIC_FIELDS_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
DYNAMIC_FIELD_UNKNOWNUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
DYNAMIC_FIELD_REQUIREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
DYNAMIC_FIELD_TYPE_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
DYNAMIC_FIELD_OPTION_INVALIDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
CONTRACT_PDF_REQUIREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
REQUIRED_FIELDS_MISSINGUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
CONTRACT_CORE_FIELDS_LOCKEDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
WORKFLOW_FIELDS_REQUIRE_TRANSITIONUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
WORKFLOW_REQUIRED_FIELDS_MISSINGUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
WORKFLOW_REQUIRED_EVIDENCE_MISSINGUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
WORKFLOW_AI_REVIEW_PENDINGUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
WORKFLOW_FULFILLMENT_OPENUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
WORKFLOW_RECEIVABLES_OPENUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.
WORKFLOW_NOTE_REQUIREDUtilisez le statut HTTP, message et details pour afficher la correction nécessaire, puis réessayez.

Nouvelle tentative

  • Réessayer les GET idempotents et lectures 503 avec backoff.
  • Pour POST, PATCH et DELETE, vérifier l’état courant après timeout ou 5xx avant de réessayer.
  • Ne pas réessayer inchangé après 400, 401, 403, 404, 409 ou 422.