Français
Codes de statut
Nous utilisons les codes de statut HTTP standards pour retourner les détails concernant les appels de fonctions complétés.
Vous devez toujours valider le code de statut de la réponse HTTP avant de tenter de lire le contenu du corps de la réponse. Nos SDK effectuent cette validation automatiquement. Pour chacune des fonctions documentées, nous indiquons uniquement les codes de retour spécifiques à la fonction afin de faciliter la lecture de la documentation. Même si un code de retour générique n'est pas documenté au niveau d'une fonction, il peut tout de même être retourné par l'API.
Codes de retour génériques (documentés au niveau de la fonction)
| Code de statut HTTP | Signification | Détail |
|---|---|---|
| 200 | OK | La requête a été complétée avec succès et des données valides ont été retournées dans le corps de la réponse. |
| 201 | Créé | La requête a été complétée avec succès. Certains éléments ont été créés et les détails concernant les éléments créés ont été retournés dans le corps de la réponse. |
| 204 | Aucun contenu | La requête a été complétée avec succès. Il n'était pas nécessaire de retourner des données dans le corps de la réponse. |
| 403 | Interdit | L'exécution de la requête n'est pas autorisée. Consultez les détails de l'erreur dans le corps de la réponse. |
| 404 | Introuvable | La requête a échoué. L'élément sur lequel vous tentiez d'effectuer une opération n'existe pas. Consultez les détails de l'erreur dans le corps de la réponse. |
| 406 | Non acceptable | L'URL est valide, mais l'un des en-têtes Accept n'est pas défini ou est invalide. Par exemple, vous avez défini l'en-tête "Accept: application/json", mais la fonction peut uniquement retourner "Content-type: image/png". |
| 409 | Conflit | La requête était syntaxiquement valide, mais a échoué en raison d'un conflit avec un autre élément. |
| 422 | Entité non traitable | La requête était syntaxiquement valide, mais a échoué en raison d'une condition d'interdépendance. Consultez les détails de l'erreur dans le corps de la réponse. |
Codes de retour génériques (non documentés au niveau de la fonction)
| Code de statut HTTP | Signification | Détail |
|---|---|---|
| 400 | Requête invalide | La requête ne respecte pas les spécifications. Par exemple : un type invalide pour une variable, une valeur qui échoue à la validation ou une violation du protocole. Consultez les détails de l'erreur dans le corps de la réponse. |
| 401 | Non autorisé | La clé API est absente, expirée, invalide ou inactive. Cela peut également signifier que vous appelez l'API depuis une adresse IP non autorisée. |
| 403 | Interdit | La clé API fournie est valide, mais elle n'est pas autorisée à exécuter la requête. Vérifiez les permissions de la clé. |
| 404 | Introuvable | Votre requête a été envoyée vers une URL qui n'existe pas. Assurez-vous d'utiliser le bon numéro de version de la fonction et vérifiez les erreurs de saisie dans l'URL. |
| 405 | Méthode non autorisée | L'URL est valide, mais la méthode n'est pas autorisée. Par exemple, avez-vous envoyé une requête GET alors que la fonction attend une requête POST ? |
| 406 | Non acceptable | L'URL est valide, mais l'un des en-têtes Accept n'est pas défini ou est invalide. Par exemple, vous avez défini l'en-tête "Accept: application/json", mais la fonction peut uniquement retourner "Content-type: image/png". |
| 429 | Trop de requêtes | Trop de requêtes ont été reçues depuis votre clé API ou votre adresse IP. Assurez-vous d'optimiser vos requêtes ou demandez une augmentation de la limite. Par exemple, effectuez une seule requête pour créer 100 objets plutôt que 100 requêtes créant chacune un seul objet. |
| 500 | Erreur interne du serveur | Cela ne devrait jamais se produire. Il peut s'agir d'un problème temporaire qui devrait se résoudre rapidement ou d'une erreur que vous devez signaler au support technique. |
| 501 | Non implémenté | Le point de terminaison n'est pas encore disponible dans votre région ou votre environnement. |
| 503 | Service indisponible | Cela ne devrait jamais se produire. Il peut s'agir d'un problème temporaire qui devrait se résoudre rapidement ou d'une erreur que vous devez signaler au support technique. |
Codes de retour personnalisés (non documentés au niveau de la fonction)
Ces codes peuvent uniquement être générés pour les clés API de type User. Les clés de type API, Delegated et Special ne retourneront jamais ces codes. (Consultez la section Autorisation pour plus d'informations.) La plupart des utilisateurs ne devraient pas avoir à se préoccuper de ces codes de statut.
Ces codes sont documentés uniquement dans le point de terminaison Activesession getCurrent afin de simplifier la documentation, mais ils peuvent être retournés par n'importe quel point de terminaison.
| Code de statut HTTP | Signification | Détail |
|---|---|---|
| 350 | Authentification requise | L'utilisateur doit s'authentifier, car la session est invalide. |
| 351 | Validation du téléphone requise | (2FA) L'utilisateur doit compléter une validation par appel vocal ou par SMS. |
| 352 | Validation par question requise | (2FA) L'utilisateur doit compléter une validation par question et réponse. |
| 353 | Acceptation des conditions requise | L'utilisateur doit accepter les conditions générales relatives à la signature électronique. |
| 354 | Validation de l’ordinateur requise | L'ordinateur de l'utilisateur n'est pas autorisé. |
| 355 | Modification du mot de passe requise | L'utilisateur doit modifier son mot de passe. |
| 356 | Vérification de la version de l’application | L'utilisateur n'utilise pas la version la plus récente de l'application native. |
Codes de succès pour la livraison des Webhooks
Ces codes seront considérés comme une livraison réussie lorsqu'ils sont retournés par votre page Web lors de la livraison d'un Webhook.
| Code de statut HTTP | Signification | Détail |
|---|---|---|
| 200 | OK | La requête a été exécutée avec succès. |
| 202 | Accepté | La requête a été reçue, mais n'a pas encore été traitée. Ce code est destiné aux cas où un autre processus ou serveur gère la requête, ou pour le traitement par lots. |
| 204 | Aucun contenu | La requête a été complétée avec succès. Il n'était pas nécessaire de retourner des données dans le corps de la réponse. |
Codes d'avertissement
Lorsque l'API retourne un code de statut HTTP dans la plage 200-299, une propriété peut être retournée pour indiquer qu'un ou plusieurs avertissements se sont produits. Le tableau contient des objets avec deux propriétés :
- eWarningCode
- sWarningMessage
Nous vous recommandons fortement d'utiliser eWarningCode pour effectuer toute logique de validation des avertissements dans votre code ou pour créer vos propres messages d'avertissement destinés à vos utilisateurs. sWarningMessage contient davantage de détails destinés à la lecture humaine, mais il est conçu pour les développeurs et est toujours retourné en anglais.
Voici la liste complète des eWarningCode que vous pourriez recevoir.
| eWarningCode | Exemples |
|---|---|
| MUSTVERIFY | Un objet a été modifié et une vérification est recommandée. |
| INCOMPLETECONTACT | Un contact ne possède pas d'adresse courriel, de numéro de téléphone ou d'adresse. |
Codes d'erreur
Lorsque l'API retourne un code de statut HTTP compris entre 400 et 599, un objet JSON contenant 2 propriétés est retourné :
- eErrorCode
- sErrorMessage
Nous vous recommandons fortement d'utiliser eErrorCode pour toute logique de validation des erreurs dans votre code ou pour créer vos propres messages d'erreur à l'intention des utilisateurs. sErrorMessage contient davantage de détails destinés à la lecture humaine, mais s'adresse aux développeurs et est toujours retourné en anglais.
Voici la liste complète des eErrorCode que vous pouvez recevoir pour chaque code de statut HTTP, ainsi que des exemples de situations dans lesquelles ils peuvent être retournés.
HTTP 400 (Requête invalide)
| eErrorCode | Exemples |
|---|---|
| BADREQUEST | JSON non sérialisable, paramètre invalide, signature invalide, empreinte numérique invalide |
| BADREQUEST_CLOCKSKEW | L’heure sur l’ordinateur du client est incorrecte |
HTTP 401 (Non autorisé)
| eErrorCode | Exemples |
|---|---|
| UNAUTHORIZED_BADAUTH | Identifiants invalides lors de l’authentification |
| UNAUTHORIZED_BADMFA | Réponse invalide au défi d’authentification multifacteur (AMF). |
| UNAUTHORIZED_EXPIRED | Les identifiants ont expiré |
| UNAUTHORIZED_REQUEST | La requête est invalide (adresse IP source, empreinte numérique, signature, etc.) |
| UNAUTHORIZED_REQUEST_APIKEY | La clé API est invalide |
| UNAUTHORIZED_REQUEST_PRESIGNED | L’URL présignée est invalide |
HTTP 403 (Interdit)
| eErrorCode | Exemples |
|---|---|
| FORBIDDEN | Accès interdit |
| FORBIDDEN_CLONE_PERMISSION | Permission de duplication requise pour accéder à cette fonctionnalité |
| FORBIDDEN_CONFIGURATION | Un paramètre de configuration empêche l’accès à cet élément |
| FORBIDDEN_MODULE | Le module n’est pas activé |
| FORBIDDEN_NOACCESS | Vous n’êtes pas autorisé à accéder à cet élément |
| FORBIDDEN_PERMISSION | Permission requise pour accéder à cette route |
| FORBIDDEN_SUBSCRIPTION | Votre forfait ne vous permet pas d’accéder à cette fonctionnalité |
| FORBIDDEN_SUBSCRIPTION_EZSIGN_PLAN | Votre forfait eZsign ne vous permet pas d’accéder à cette fonctionnalité |
| FORBIDDEN_USERTYPE | Ce type d’utilisateur n’est pas autorisé à accéder à cette route |
| FORBIDDEN_USER_ORIGIN_EXTERNAL | Impossible de modifier les informations de l’utilisateur |
HTTP 404 (Introuvable)
| eErrorCode | Exemples |
|---|---|
| NOTFOUND | Élément introuvable |
| NOTFOUND_OBJECT | L’objet n’existe pas dans la base de données |
| NOTFOUND_ROUTE | La route n’existe pas (URL, version de l’API) |
HTTP 405 (Méthode non autorisée)
| eErrorCode | Exemples |
|---|---|
| METHODNOTALLOWED | La route est valide, mais la méthode n’est pas autorisée (p. ex., une requête POST sur une route qui accepte uniquement les requêtes GET) |
HTTP 406 (Non acceptable)
| eErrorCode | Exemples |
|---|---|
| NOTACCEPTABLE_CONTENT | La route est valide, mais l’en-tête Accept n’est pas accepté (p. ex., « application/json » plutôt que « image/png »). |
| NOTACCEPTABLE_LANGUAGE | La route est valide, mais l’en-tête Accept-Language n’est pas accepté (p. ex., « en » plutôt que « es »). |
HTTP 409 (Conflit)
| eErrorCode | Exemples |
|---|---|
| CONFLICT | La requête est valide, mais elle entre en conflit avec un autre élément. |
HTTP 413 (Contenu trop volumineux)
| eErrorCode | Exemples |
|---|---|
| CONTENT_TOO_LARGE | Le contenu de la requête est trop volumineux |
HTTP 422 (Entité non traitable)
| eErrorCode | Exemples |
|---|---|
| UNPROCESSABLEENTITY_ACTIVESESSION_ALREADY_CLONING | L’utilisateur est déjà en train de dupliquer un autre utilisateur |
| UNPROCESSABLEENTITY_CANNOTDELETE | L’élément ne peut pas être supprimé |
| UNPROCESSABLEENTITY_CANNOTMODIFY | L’élément ne peut pas être modifié |
| UNPROCESSABLEENTITY_CREDITCARD_CANNOT_PAY | Le paiement de l’élément a échoué |
| UNPROCESSABLEENTITY_CREDITCARD_CANNOT_EXPIRED | La carte de crédit est expirée |
| UNPROCESSABLEENTITY_CREDITCARD_PREAUTH_FAILED | La préautorisation a échoué |
| UNPROCESSABLEENTITY_CREDITCARD_VALIDATION_FAILED | La validation de la carte de crédit a échoué |
| UNPROCESSABLEENTITY_CHANGEPASSWORD_INVALID_CURRENT | L’ancien mot de passe fourni ne correspond pas au mot de passe actuel de l’utilisateur |
| UNPROCESSABLEENTITY_CHANGEPASSWORD_SAME | Le nouveau mot de passe est identique à l’ancien mot de passe |
| UNPROCESSABLEENTITY_DATA_MISSING | Certaines données sont manquantes |
| UNPROCESSABLEENTITY_DATA_UNIQUE | Les données ne respectent pas la contrainte d’unicité : cette valeur existe déjà dans un autre élément |
| UNPROCESSABLEENTITY_DATA_VALIDATION | Les données ne respectent pas une ou plusieurs règles de validation |
| UNPROCESSABLEENTITY_DATA_OUTOFBOUND | Les données contiennent une valeur hors des limites autorisées |
| UNPROCESSABLEENTITY_DOWNLOAD_ERROR | Impossible de récupérer la ressource à l’URL fournie |
| UNPROCESSABLEENTITY_EZSIGNFORM_VALIDATION | La validation du formulaire eZsign a généré des erreurs |
| UNPROCESSABLEENTITY_EZSIGNELEMENTDEPENDENCY_LOOP | Une boucle a été détectée dans les dépendances d’éléments eZsign |
| UNPROCESSABLEENTITY_EZSIGNELEMENTDEPENDENCY_MISSINGEZSIGNTEMPLATESIGNERREFERENCE | Une dépendance d’élément eZsign contient un signataire de modèle eZsign non assigné |
| UNPROCESSABLEENTITY_EZSIGNSIGNATURE_SIGNED | La signature eZsign est déjà signée |
| UNPROCESSABLEENTITY_EZSIGNSIGNERCONNECTED | Le signataire eZsign est connecté |
| UNPROCESSABLEENTITY_INVALID_FILE | Le fichier est invalide |
| UNPROCESSABLEENTITY_INCOMPLETE_CONTACT | Le contact est incomplet : il manque une adresse, un numéro de téléphone ou une adresse courriel |
| UNPROCESSABLEENTITY_NOTHINGTODO | La requête était valide, mais aucune action n’était nécessaire |
| UNPROCESSABLEENTITY_NOTREADY | L’élément n’est pas dans un état permettant d’effectuer cette action (par exemple, envoyer un document sans signature ou télécharger un document non signé) |
| UNPROCESSABLEENTITY_OAUTH2 | Une erreur s’est produite lors de l’utilisation du service d’authentification OAuth2 |
| UNPROCESSABLEENTITY_PDF_FORM | Le document PDF contient un formulaire |
| UNPROCESSABLEENTITY_PDF_FORMFIELD_WITHOUT_PAGE | Certains champs de formulaire ne sont associés à aucune page |
| UNPROCESSABLEENTITY_PDF_SIGNATURE | Le document PDF contient une ou plusieurs signatures |
| UNPROCESSABLEENTITY_PDF_FORM_AND_SIGNATURE | Le document PDF contient un formulaire et une ou plusieurs signatures |
| UNPROCESSABLEENTITY_PDF_INCOMPATIBLE | Le document PDF ne peut pas être signé |
| UNPROCESSABLEENTITY_PDF_PASSWORD | Le document PDF est protégé par un mot de passe et ne peut pas être signé |
| UNPROCESSABLEENTITY_PDF_WRONG_PASSWORD | Le mot de passe fourni est incorrect et ne permet pas d’ouvrir le document PDF |
| UNPROCESSABLEENTITY_PDF_REPAIRABLE | Le document PDF contient des erreurs et peut être réparé |
| UNPROCESSABLEENTITY_PDF_XFA | Le document PDF contient un formulaire XFA et ne peut pas être signé |
| UNPROCESSABLEENTITY_PDFA_NONCOMPLIANT | Le document PDF n’est pas conforme à la norme PDF/A |
| UNPROCESSABLEENTITY_PDFA_CONVERSION_FAILED | La conversion du document PDF au format PDF/A a échoué |
| UNPROCESSABLEENTITY_TEMPLATE_MISMATCH | Le nombre de pages du document ne correspond pas au nombre de pages du modèle |
| UNPROCESSABLEENTITY_UNMODIFIABLE_FIELD | Le champ ne peut pas être modifié dans son état actuel |
| UNPROCESSABLEENTITY_USER_STAGED | L’utilisateur ne peut pas se connecter, car son compte est actuellement en attente d’activation |
| UNPROCESSABLEENTITY_SUBSCRIPTION_NOTRENEWABLE | L’abonnement ne peut pas être renouvelé, car il n’est pas dans la période de renouvellement autorisée |
| UNPROCESSABLEENTITY_FRANCHISEBROKER_WRONGFRANCHISEOFFICE | Le courtier de la franchise n’appartient pas à cette agence franchisée |
HTTP 429 (Trop de requêtes)
| eErrorCode | Exemples |
|---|---|
| TOOMANYREQUESTS | Le client a atteint le nombre maximal de requêtes autorisées pendant la période définie |
| TOOMANYREQUESTS_THIRDPARTY | Notre serveur a reçu une erreur « Too Many Requests » provenant d’un tiers |
HTTP 500 (Erreur interne du serveur)
| eErrorCode | Exemples |
|---|---|
| ERROR_INTERNAL | Une erreur non gérée s’est produite sur le serveur |
| ERROR_CONFIGURATION | Un paramètre du serveur n’est pas configuré correctement |
HTTP 501 (Non implémenté)
| eErrorCode | Exemples |
|---|---|
| ERROR_NOTIMPLEMENTED | Le point de terminaison n’est pas encore disponible dans votre région ou votre environnement |