--- title: "Mise en place des notifications de rappel" slug: "setting-up-callback-notifications" updated: 2026-11-02T14:26:18Z published: 2026-11-02T14:26:18Z canonical: "docs.onespan.com/setting-up-callback-notifications" stale: true --- > ## Documentation Index > Fetch the complete documentation index at: https://docs.onespan.com/llms.txt > Use this file to discover all available pages before exploring further. # Mise en place des notifications de rappel  > **Pour les utilisateurs FedRAMP.** Après **le 16 septembre 2026** pour votre environnement bac à sable et après **le 7 octobre 2026** pour votre environnement Production, les nouvelles destinations sortantes ou les modifications suivront un nouveau processus. Si vous souhaitez effectuer des mises à jour de vos configurations actuelles après ces dates, vos domaines devront être soumis à notre [Support Team](https://www.onespan.com/support) à l'avance afin qu'ils puissent être placés sur liste blanche et ainsi autorisés à l'utilisation. Une fois validés, vous pouvez procéder à la définition de vos configurations souhaitées dans l'interface utilisateur, ou via des API. Notez que nous n'aurons besoin que de vos URL de rappel. Pour une explication plus détaillée de ce processus, voir [Migration et nouveau processus AKS de FedRAMP](/v1/docs/fr/fedramp-aks-migration). ## Java SDK Pour télécharger l'exemple complet de code, consultez notre site [de partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/callback-event-notifications-java-sdk/) . Les notifications d'événements de rappel vous permettent d'être automatiquement informé des événements liés à un package (dans la Nouvelle Expérience Utilisateur, les packages sont appelés « transactions »). Lorsqu'un événement spécifique se produit, le système envoie automatiquement un message à une destination que vous avez choisie. ### Emplacement dans l'interface utilisateur Tout d'abord, vous devez localiser cette zone dans votre interface utilisateur. Après avoir exécuté votre code, vous pourrez vérifier ici qu'il a bien fonctionné. Pour trouver la zone de rappel depuis l'interface, connectez-vous à OneSpan Sign et cliquez sur Admin > Notification d'événement. #### Notifications disponibles Avant de continuer avec le code, il est important de comprendre toutes les notifications disponibles. Le tableau ci-dessous les liste telles qu'elles devraient apparaître dans votre code : > Dans le tableau suivant : > > - La taille maximale pour tous les `sessionUser` champs est de 255 caractères. > - La taille maximale pour tous les `packageId `champs est de 255 caractères. > - Le `sessionUser` champ dépend du fait que l'événement ait été généré par un expéditeur ou par un signataire. Les événements déclenchés par l'expéditeur auront l'identifiant de l'expéditeur. Les événements déclenchés par le signataire auront l'ID du signataire. | Événement | Signification | Charge utile JSON | | --- | --- | --- | | COBROWSE_REQUEST | Une requête de co-navigation survient lorsqu'un signataire régulier demande une session de co-navigation avec l'expéditeur de la transaction, généralement pour recevoir de l'aide à la réalisation de la transaction. Cette requête informe l'expéditeur sous forme de notification de rappel. | { « nom » : « COBROWSE_REQUEST », « sessionUser » : « ... », « packageID » : « ...... », « Date de création » : « 2017-05- 02T20:17:58.408Z » « téléphone » : « ...... », « commentaire » : « ...... », « selectedSupportHours » :["Matin - 9h à 12h ((GMT 0:00) GMT)"] } | | DOCUMENT_SIGNED | Un document a été signé, ou des accords de consentement et/ou de divulgation ont été acceptés. | { « nom » : « DOCUMENT_SIGNED », « sessionUser » : « ... », « packageID » : « ...... », "documentId": "......", (max 256 chars) « Date de création » : « 2017-05- 02T20:17:58.408Z » } | | DOCUMENT_VIEWED | Un document a été consulté. | { « nom » : « DOCUMENT_VIEWED », « sessionUser » : « ... », « packageID » : « ...... », "documentId": "......", (max 256 chars) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | EMAIL_BOUNCE | Un e-mail a été rejeté. Les types de rebond sont les suivants : - BOUNCE (un hard bounce) : Le destinataire n'est pas disponible. Cela peut se produire si l'adresse e-mail n'existe pas (par exemple, le domaine est valide, mais l'utilisateur ne l'est pas). - PLAINTE (un soft bounce) : Le destinataire a marqué l'email comme spam ou a déposé une plainte contre l'email de l'expéditeur. - OOTO (hors du bureau) : Le destinataire peut être disponible à l'avenir. Par exemple, si l'utilisateur est absent du bureau. Cela peut aussi se produire si le serveur de messagerie est temporairement indisponible, ou si le domaine est incorrect. Dans ce scénario, le système tentera de joindre le domaine pendant 14 heures, après quoi une réponse OOTO sera retournée. - PIÈCE JOINTE rejetée (un rebond léger) : Une pièce jointe envoyée avec l'email n'a pas été acceptée par le destinataire. - CONTENTREJECTED (un soft bounce) : Certaines sections de mots dans l'email ont été rejetées par le destinataire. - MAILBOXFULL (un rebond léger) : La boîte de réception des emails du destinataire est pleine. Dans ce scénario, le système tentera d'atteindre le domaine pendant 14 heures, après quoi une réponse OOTO sera retournée. - MESSAGETOOLARGE (un rebond léger) : L'email est trop grand pour être accepté par le destinataire. | { « nom » : « EMAIL_BOUNCE », « sessionUser » : « ... », « packageID » : « ...... », « message » : « type de rebond », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | EDEPOSIT_SUCCESS | La transaction/documents ont été déposés avec succès sur eOriginal. | { « nom » : « EDEPOSIT_SUCCESS », « sessionUser » : null, « packageId » : « COQj6taUQpUFpzPX76RP_eBhiMk= », « message » : « success.edeposit », « documentId » : null, « dateCréée » : 1732287648000 } | | EDEPOSIT_FAILURE | La transaction/documents ne peuvent pas être déposés dans eOriginal d'une manière irrécupérable. Notez que la raison de l'échec peut varier. | { « nom » : « EDEPOSIT_FAILURE », « sessionUser » : null, « packageId » : « 6Ve4c5qod3joGJL-dRPzRs9g2vM= », « message » : « unrerunable.error.edeposit : Échec de téléverser dans le coffre eOriginal. », « documentId » : null, « createdDate » : 1732287802000 } | | EDEPOSIT_FAILURE_ATTEMPT | La transaction/documents ne peuvent pas être déposés dans eOriginal de manière irrécupérable, et il y aura des tentatives automatisées supplémentaires de réenvoi des documents. | { « nom » : « EDEPOSIT_ATTEMPT_FAILURE », « sessionUser » : null, « packageId » : « VOcc64OByg6jNUpbwixkwFCJhiI= », « message » : « Tentative de rappel de la tentative de rappel 1/144 échouée pour l'interface graphique : VOcc64OByg6jNUpbwixkwFCJhiI= », « documentId » : null, « dateCréée » : « 2023-10-13T14:24:11.000Z"} | | KBA_FAILURE | Il y a eu un échec d'authentification KBA. | { « nom » : « KBA_FAILURE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ACTIVATE | Un package a été déplacé du statut DRAFT ou SUPPRIMÉ vers le statut ENVOYÉ. Par défaut, un package est créé dans l'état DRAFT, et est déplacé dans l'état ENVOYÉ lorsqu'il est prêt à être traité par les signataires. | { « nom » : « PACKAGE_ACTIVATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ARCHIVE | Une notification de rappel indique qu'un colis a été archivé. | { « nom » : « PACKAGE_ARCHIVE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ATTACHMENT | Une notification de rappel indique qu'un signataire a téléchargé une pièce jointe. | { « nom » : « PACKAGE_ATTACHMENT », « sessionUser » : « ... », « packageID » : « ...... », « message » : « nom de l'annexe », (max 255 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_COMPLETE | Un colis a terminé le processus de signature. S'il y a plusieurs signataires, alors le « sessionUser » : « ... » sera l'identifiant de signataire du dernier signataire à signer. | { « nom » : « PACKAGE_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_CREATE | Un paquet a été créé. Ainsi, le Système d'origine peut enregistrer l'ID du paquet de OneSpan Sign.com, ainsi que l'ID de transaction du Système d'origine. REMARQUE : Un `PACKAGE_CREATE` événement sera déclenché si un paquet est déjà en statut DRAFT et qu'une requête API est envoyée pour demander qu'il soit replacé en statut DRAFT. | { « nom » : « PACKAGE_CREATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DEACTIVATE | Le statut d'un colis est passé de ENVOYÉ à BROUILLON. | { « nom » : « PACKAGE_DEACTIVATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DECLINE | Un destinataire a refusé de signer un colis et a spécifié une raison de le faire, le Système d'origine peut utiliser cette raison pour déterminer l'étape suivante du colis. | { « nom » : « PACKAGE_DECLINE », « sessionUser » : « ... », « packageID » : « ...... », « message » : « raison de refuser », (max 4000 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DELETE | Un package a été supprimé du système OneSpan Sign.com. | { « nom » : « PACKAGE_DELETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DISPUTE | Un Spécificateur du Destinataire a contesté (refusé) une spécification. | { « nom » : PACKAGE_DISPUTE, « sessionUser » : « ... », « message » : « refuser la raison », « documentId » : null, « dateCréation » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_EXPIRE | Un colis a dépassé sa date d'expiration. | { « nom » : « PACKAGE_EXPIRE », « sessionUser » : « ... », « packageId » : « ... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_READY_FOR_COMPLETE | Un colis a été marqué comme DO_NOT_AUTOCOMPLETE. Une action de l'expéditeur sera nécessaire pour compléter le colis. | { « nom » : « PACKAGE_READY_FOR_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_RESTORE | Un colis a été détruit, mais est en train d'être ramené dans l'état dans lequel il se trouvait avant d'être jeté. | { « nom » : « PACKAGE_RESTORE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_TRASH | Un colis a été déplacé dans le dossier corbeille dans la boîte de réception de OneSpan Sign (statut = DÉCHETS). | { « nom » : « PACKAGE_TRASH », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | RECIPIENTS_SPECIFIED | Un Destinataire Spécificateur a assigné les signataires à des rôles provisoires. | { « nom » : « RECIPIENTS_SPECIFIED », « sessionUser » : « ... », « packageID » : « ...... », « message » : null, « documentId » : null, « dateCréée » : « 2026-09-15T15:35:40.334Z » } | | RECORDINGS_READY | Après que tous les signataires ont terminé de signer une transaction dans la Salle Virtuelle, la session enregistrée est traitée. Une fois les enregistrements prêts à être téléchargés, cette notification est envoyée. | { « nom » : « RECORDINGS_READY », « sessionUser » : »... », « packageID » : « ...... », « dateCreate » :"2022-06-03T14:46:36.808Z » } | | ROLE_REASSIGN | Un signataire a délégué sa signature à un autre signataire. Lorsque cela se produit, OneSpan Sign crée un nouveau rôle avec un nouveau signataire. Il est judicieux à ce stade d'obtenir l'identifiant du signataire de ce nouveau rôle. C'est l'identifiant du signataire, et non l'identifiant du rôle, qui fera partie des événements futurs, tels que SIGNER_COMPLETE. Connaître l'identifiant du signataire, qui est transmis dans l'élément sessionUser de cet événement (et d'autres), facilitera le suivi du statut des signataires. | { « nom » : « ROLE_REASSIGN », « sessionUser » : « ... », « packageID » : « ...... », « newRoleId » : « ...... », (max 255 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | SIGNER_COMPLETE | Un signataire a terminé la signature de tous les documents. | { « nom » : « SIGNER_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | SIGNER_LOCKED | Une notification de rappel indique qu'un signataire a été bloqué en raison d'échecs répétés d'authentification SMS/Q&R. | { « nom » : « SIGNER_LOCKED », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | TEMPLATE_CREATE | Une notification de rappel indique qu'un modèle a été créé. | { « nom » : « TEMPLATE_CREATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | #### Réception des notifications d'événements Une fois que vous vous êtes inscrit pour être informé d'un ou plusieurs types d'événements, il vous suffit d'écouter les notifications associées. Lorsqu'un événement pertinent est déclenché, OneSpan Sign envoie un HTTP POST à votre URL enregistrée. Ce message contient une charge utile au format JSON, décrivant l'événement qui a déclenché la notification. La clé de rappel que vous avez enregistrée passe par l'en-tête d'Autorisation sous le nom de « Basic {callbackKey} ». Vous devez l'utiliser pour vous assurer de recevoir des notifications contenant le secret partagé, afin de savoir que vous ne recevez pas d'appels d'usurpation et de pouvoir réagir en conséquence. Voici quelques exemples de charges utiles de rappel : ```json // Package was Created {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_CREATE",  "sessionUser": "18EZDL44xgsX",  "packageId": "wVdZEaPD2igwUnFGJBjDD0dpO7k=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:04:55.384Z" } // Package was Sent {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_ACTIVATE",  "sessionUser": "18EZDL44xgsX",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:09:50.425Z" } // Signer 1 accepted consent document {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "DOCUMENT_SIGNED",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": "default-consent",  "createdDate": "2018-06-30T20:10:51.002Z" } // Signer 1 completed a document {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "DOCUMENT_SIGNED",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": "7caf46cdd75f7a411bf8c22793b84fa79d8d180becc40691",  "createdDate": "2018-06-30T20:12:12.256Z" } // Signer 1 completed signing package {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "SIGNER_COMPLETE",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:12:12.272Z" } // Package was Complete {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_COMPLETE",  "sessionUser": "e00696ec-d6f5-4feb-89c5-a5ce002a6c66",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:15:01.038Z" } ``` ### Mise en place des notifications de rappel Les exemples de code suivants peuvent être utilisés pour définir l'URL de rappel, la clé de rappel et vous abonner à trois notifications d'événements différentes. 1. Créez votre client ESL avec votre API_KEY et votre API_URL (n'oubliez pas d'utiliser des applications au lieu de votre bac à sable pour les environnements de production). Assurez-vous de changer la API_KEY, la API_URL, l'URL et la CLÉ de vos propres valeurs. ```java final String API_KEY = "YOUR_API_KEY"; final String API_URL = "https://sandbox.esignlive.com/api"; final String URL = "http://my.url.com"; final String KEY = "myCallbackKey"; EslClient eslClient = new EslClient( API_KEY, API_URL ); ``` 2. Appelez votre EventNotificationService pour vous inscrire aux notifications PACKAGE_CREATE, PACKAGE_DECLINE et PACKAGE_COMPLETE . Vous pouvez également ajouter plus d'abonnements à notifications à partir du tableau des options ci-dessus. ```java eslClient.getEventNotificationService().register(newEventNotificationConfig(URL) .withKey(KEY) .forEvent(NotificationEvent.PACKAGE_CREATE) .forEvent(NotificationEvent.PACKAGE_DECLINE) .forEvent(NotificationEvent.PACKAGE_COMPLETE)); ``` ### Le résultat Après avoir exécuté votre code, cliquez sur Admin > Notification d'événement. Vous verrez que vos notifications d'événement sélectionnées ont été activées. ## .NET SDK Pour télécharger l'exemple complet de code, consultez notre site [de partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/callback-event-notifications-net-sdk/) . Les notifications d'événements de rappel vous permettent d'être automatiquement informé des événements liés à un package (dans la Nouvelle Expérience Utilisateur, les packages sont appelés « transactions »). Lorsqu'un événement spécifique se produit, le système envoie automatiquement un message à une destination que vous avez choisie. ### Emplacement dans l'interface utilisateur Tout d'abord, vous devez localiser cette zone dans votre interface utilisateur. Après avoir exécuté votre code, vous pourrez vérifier ici qu'il a bien fonctionné. Pour trouver la zone de rappel depuis l'interface, connectez-vous à OneSpan Sign et cliquez sur Admin > Notification d'événement. **Notifications disponibles** Avant de continuer avec le code, il est important de comprendre toutes les notifications disponibles. Le tableau ci-dessous les liste telles qu'elles devraient apparaître dans votre code : > Dans le tableau suivant : > > - La taille maximale pour tous les `sessionUser` champs est de 255 caractères. > - La taille maximale pour tous les `packageId `champs est de 255 caractères. > - Le `sessionUser` champ dépend du fait que l'événement ait été généré par un expéditeur ou par un signataire. Les événements déclenchés par l'expéditeur auront l'identifiant de l'expéditeur. Les événements déclenchés par le signataire auront l'ID du signataire. | Événement | Signification | Charge utile JSON | | --- | --- | --- | | COBROWSE_REQUEST | Une requête de co-navigation survient lorsqu'un signataire régulier demande une session de co-navigation avec l'expéditeur de la transaction, généralement pour recevoir de l'aide à la réalisation de la transaction. Cette requête informe l'expéditeur sous forme de notification de rappel. | { « nom » : « COBROWSE_REQUEST », « sessionUser » : « ... », « packageID » : « ...... », « Date de création » : « 2017-05- 02T20:17:58.408Z » « téléphone » : « ...... », « commentaire » : « ...... », « selectedSupportHours » :["Matin - 9h à 12h ((GMT 0:00) GMT)"] } | | DOCUMENT_SIGNED | Un document a été signé, ou des accords de consentement et/ou de divulgation ont été acceptés. | { « nom » : « DOCUMENT_SIGNED », « sessionUser » : « ... », « packageID » : « ...... », "documentId": "......", (max 256 chars) « Date de création » : « 2017-05- 02T20:17:58.408Z » } | | DOCUMENT_VIEWED | Un document a été consulté. | { « nom » : « DOCUMENT_VIEWED », « sessionUser » : « ... », « packageID » : « ...... », "documentId": "......", (max 256 chars) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | EMAIL_BOUNCE | Un e-mail a été rejeté. Les types de rebond sont les suivants : - BOUNCE (un hard bounce) : Le destinataire n'est pas disponible. Cela peut se produire si l'adresse e-mail n'existe pas (par exemple, le domaine est valide, mais l'utilisateur ne l'est pas). - PLAINTE (un soft bounce) : Le destinataire a marqué l'email comme spam ou a déposé une plainte contre l'email de l'expéditeur. - OOTO (hors du bureau) : Le destinataire peut être disponible à l'avenir. Par exemple, si l'utilisateur est absent du bureau. Cela peut aussi se produire si le serveur de messagerie est temporairement indisponible, ou si le domaine est incorrect. Dans ce scénario, le système tentera de joindre le domaine pendant 14 heures, après quoi une réponse OOTO sera retournée. - PIÈCE JOINTE rejetée (un rebond léger) : Une pièce jointe envoyée avec l'email n'a pas été acceptée par le destinataire. - CONTENTREJECTED (un soft bounce) : Certaines sections de mots dans l'email ont été rejetées par le destinataire. - MAILBOXFULL (un rebond léger) : La boîte de réception des emails du destinataire est pleine. Dans ce scénario, le système tentera d'atteindre le domaine pendant 14 heures, après quoi une réponse OOTO sera retournée. - MESSAGETOOLARGE (un rebond léger) : L'email est trop grand pour être accepté par le destinataire. | { « nom » : « EMAIL_BOUNCE », « sessionUser » : « ... », « packageID » : « ...... », « message » : « type de rebond », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | EDEPOSIT_SUCCESS | La transaction/documents ont été déposés avec succès sur eOriginal. | { « nom » : « EDEPOSIT_SUCCESS », « sessionUser » : null, « packageId » : « COQj6taUQpUFpzPX76RP_eBhiMk= », « message » : « success.edeposit », « documentId » : null, « dateCréée » : 1732287648000 } | | EDEPOSIT_FAILURE | La transaction/documents ne peuvent pas être déposés dans eOriginal d'une manière irrécupérable. Notez que la raison de l'échec peut varier. | { « nom » : « EDEPOSIT_FAILURE », « sessionUser » : null, « packageId » : « 6Ve4c5qod3joGJL-dRPzRs9g2vM= », « message » : « unrerunable.error.edeposit : Échec de téléverser dans le coffre eOriginal. », « documentId » : null, « createdDate » : 1732287802000 } | | EDEPOSIT_FAILURE_ATTEMPT | La transaction/documents ne peuvent pas être déposés dans eOriginal de manière irrécupérable, et il y aura des tentatives automatisées supplémentaires de réenvoi des documents. | { « nom » : « EDEPOSIT_ATTEMPT_FAILURE », « sessionUser » : null, « packageId » : « VOcc64OByg6jNUpbwixkwFCJhiI= », « message » : « Tentative de rappel de la tentative de rappel 1/144 échouée pour l'interface graphique : VOcc64OByg6jNUpbwixkwFCJhiI= », « documentId » : null, « dateCréée » : « 2023-10-13T14:24:11.000Z"} | | KBA_FAILURE | Il y a eu un échec d'authentification KBA. | { « nom » : « KBA_FAILURE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ACTIVATE | Un package a été déplacé du statut DRAFT ou SUPPRIMÉ vers le statut ENVOYÉ. Par défaut, un package est créé dans l'état DRAFT, et est déplacé dans l'état ENVOYÉ lorsqu'il est prêt à être traité par les signataires. | { « nom » : « PACKAGE_ACTIVATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ARCHIVE | Une notification de rappel indique qu'un colis a été archivé. | { « nom » : « PACKAGE_ARCHIVE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ATTACHMENT | Une notification de rappel indique qu'un signataire a téléchargé une pièce jointe. | { « nom » : « PACKAGE_ATTACHMENT », « sessionUser » : « ... », « packageID » : « ...... », « message » : « nom de l'annexe », (max 255 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_COMPLETE | Un colis a terminé le processus de signature. S'il y a plusieurs signataires, alors le « sessionUser » : « ... » sera l'identifiant de signataire du dernier signataire à signer. | { « nom » : « PACKAGE_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_CREATE | Un paquet a été créé. Ainsi, le Système d'origine peut enregistrer l'ID du paquet de OneSpan Sign.com, ainsi que l'ID de transaction du Système d'origine. REMARQUE : Un `PACKAGE_CREATE` événement sera déclenché si un paquet est déjà en statut DRAFT et qu'une requête API est envoyée pour demander qu'il soit replacé en statut DRAFT. | { « nom » : « PACKAGE_CREATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DEACTIVATE | Le statut d'un colis est passé de ENVOYÉ à BROUILLON. | { « nom » : « PACKAGE_DEACTIVATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DECLINE | Un destinataire a refusé de signer un colis et a spécifié une raison de le faire, le Système d'origine peut utiliser cette raison pour déterminer l'étape suivante du colis. | { « nom » : « PACKAGE_DECLINE », « sessionUser » : « ... », « packageID » : « ...... », « message » : « raison de refuser », (max 4000 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DELETE | Un package a été supprimé du système OneSpan Sign.com. | { « nom » : « PACKAGE_DELETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_EXPIRE | Un colis a dépassé sa date d'expiration. | { « nom » : « PACKAGE_EXPIRE », « sessionUser » : « ... », « packageId » : « ... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_READY_FOR_COMPLETE | Un colis a été marqué comme DO_NOT_AUTOCOMPLETE. Une action de l'expéditeur sera nécessaire pour compléter le colis. | { « nom » : « PACKAGE_READY_FOR_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_RESTORE | Un colis a été détruit, mais est en train d'être ramené dans l'état dans lequel il se trouvait avant d'être jeté. | { « nom » : « PACKAGE_RESTORE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_TRASH | Un colis a été déplacé dans le dossier corbeille dans la boîte de réception de OneSpan Sign (statut = DÉCHETS). | { « nom » : « PACKAGE_TRASH », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | RECORDINGS_READY | Après que tous les signataires ont terminé de signer une transaction dans la Salle Virtuelle, la session enregistrée est traitée. Une fois les enregistrements prêts à être téléchargés, cette notification est envoyée. | { « nom » : « RECORDINGS_READY », « sessionUser » : »... », « packageID » : « ...... », « dateCreate » :"2022-06-03T14:46:36.808Z » } | | ROLE_REASSIGN | Un signataire a délégué sa signature à un autre signataire. Lorsque cela se produit, OneSpan Sign crée un nouveau rôle avec un nouveau signataire. Il est judicieux à ce stade d'obtenir l'identifiant du signataire de ce nouveau rôle. C'est l'identifiant du signataire, et non l'identifiant du rôle, qui fera partie des événements futurs, tels que SIGNER_COMPLETE. Connaître l'identifiant du signataire, qui est transmis dans l'élément sessionUser de cet événement (et d'autres), facilitera le suivi du statut des signataires. | { « nom » : « ROLE_REASSIGN », « sessionUser » : « ... », « packageID » : « ...... », « newRoleId » : « ...... », (max 255 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | SIGNER_COMPLETE | Un signataire a terminé la signature de tous les documents. | { « nom » : « SIGNER_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | SIGNER_LOCKED | Une notification de rappel indique qu'un signataire a été bloqué en raison d'échecs répétés d'authentification SMS/Q&R. | { « nom » : « SIGNER_LOCKED », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | TEMPLATE_CREATE | Une notification de rappel indique qu'un modèle a été créé. | { « nom » : « TEMPLATE_CREATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | #### Réception des notifications d'événements Une fois que vous vous êtes inscrit pour être informé d'un ou plusieurs types d'événements, il vous suffit d'écouter les notifications associées. Lorsqu'un événement pertinent est déclenché, OneSpan Sign envoie un HTTP POST à votre URL enregistrée. Ce message contient une charge utile au format JSON, décrivant l'événement qui a déclenché la notification. La clé de rappel que vous avez enregistrée passe par l'en-tête d'Autorisation sous le nom de « Basic {callbackKey} ». Vous devez l'utiliser pour vous assurer de recevoir des notifications contenant le secret partagé, afin de savoir que vous ne recevez pas d'appels d'usurpation et de pouvoir réagir en conséquence. Voici quelques exemples de charges utiles de rappel : ```json // Package was Created {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_CREATE",  "sessionUser": "18EZDL44xgsX",  "packageId": "wVdZEaPD2igwUnFGJBjDD0dpO7k=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:04:55.384Z" } // Package was Sent {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_ACTIVATE",  "sessionUser": "18EZDL44xgsX",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:09:50.425Z" } // Signer 1 accepted consent document {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "DOCUMENT_SIGNED",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": "default-consent",  "createdDate": "2018-06-30T20:10:51.002Z" } // Signer 1 completed a document {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "DOCUMENT_SIGNED",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": "7caf46cdd75f7a411bf8c22793b84fa79d8d180becc40691",  "createdDate": "2018-06-30T20:12:12.256Z" } // Signer 1 completed signing package {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "SIGNER_COMPLETE",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:12:12.272Z" } // Package was Complete {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_COMPLETE",  "sessionUser": "e00696ec-d6f5-4feb-89c5-a5ce002a6c66",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:15:01.038Z" } ``` ### Mise en place des notifications de rappel Les exemples de code suivants peuvent être utilisés pour définir l'URL de rappel, la clé de rappel et vous abonner à trois notifications d'événements différentes. 1. Créez votre client ESL avec votre API_KEY et votre API_URL (n'oubliez pas d'utiliser des applications au lieu de votre bac à sable pour les environnements de production). Assurez-vous de changer la API_KEY, la API_URL, l'URL et la CLÉ de vos propres valeurs. ```java final String API_KEY = "YOUR_API_KEY"; final String API_URL = "https://sandbox.esignlive.com/api"; final String URL = "http://my.url.com"; final String KEY = "myCallbackKey"; EslClient eslClient = new EslClient(API_KEY, API_URL); ``` 2. Appelez votre EventNotificationService pour vous inscrire aux notifications PACKAGE_CREATE, PACKAGE_DECLINE et PACKAGE_COMPLETE . Vous pouvez également ajouter plus d'abonnements à notifications à partir du tableau des options ci-dessus. ```java eslClient.getEventNotificationService().register(newEventNotificationConfig(URL)                .withKey(KEY)                .forEvent(NotificationEvent.PACKAGE_CREATE)                .forEvent(NotificationEvent.PACKAGE_DECLINE)                .forEvent(NotificationEvent.PACKAGE_COMPLETE)); ``` ### Le résultat Après avoir exécuté votre code, cliquez sur Admin > Notification d'événement. Vous verrez que vos notifications d'événement sélectionnées ont été activées. ## REST API Pour télécharger l'exemple complet de code, consultez notre site [de partage de code](https://community.onespan.com/documentation/onespan-sign/codeshare/callback-event-notifications-rest-api/) . Les notifications d'événements de rappel vous permettent d'être automatiquement informé des événements liés à un package (dans la Nouvelle Expérience Utilisateur, les packages sont appelés « transactions »). Lorsqu'un événement spécifique se produit, le système envoie automatiquement un message à une destination que vous avez choisie. ### Emplacement dans l'interface utilisateur Tout d'abord, vous devez localiser cette zone dans votre interface utilisateur. Après avoir exécuté votre code, vous pourrez vérifier ici qu'il a bien fonctionné. Pour trouver la zone de rappel depuis l'interface, connectez-vous à OneSpan Sign et cliquez sur Admin > Notification d'événement. #### Notifications disponibles Avant de continuer avec le code, il est important de comprendre toutes les notifications disponibles. Le tableau ci-dessous les liste telles qu'elles devraient apparaître dans votre code : > Dans le tableau suivant : > > - La taille maximale pour tous les `sessionUser` champs est de 255 caractères. > - La taille maximale pour tous les `packageId `champs est de 255 caractères. > - Le `sessionUser` champ dépend du fait que l'événement ait été généré par un expéditeur ou par un signataire. Les événements déclenchés par l'expéditeur auront l'identifiant de l'expéditeur. Les événements déclenchés par le signataire auront l'ID du signataire. | Événement | Signification | Charge utile JSON | | --- | --- | --- | | COBROWSE_REQUEST | Une requête de co-navigation survient lorsqu'un signataire régulier demande une session de co-navigation avec l'expéditeur de la transaction, généralement pour recevoir de l'aide à la réalisation de la transaction. Cette requête informe l'expéditeur sous forme de notification de rappel. | { « nom » : « COBROWSE_REQUEST », « sessionUser » : « ... », « packageID » : « ...... », « Date de création » : « 2017-05- 02T20:17:58.408Z » « téléphone » : « ...... », « commentaire » : « ...... », « selectedSupportHours » :["Matin - 9h à 12h ((GMT 0:00) GMT)"] } | | DOCUMENT_SIGNED | Un document a été signé, ou des accords de consentement et/ou de divulgation ont été acceptés. | { « nom » : « DOCUMENT_SIGNED », « sessionUser » : « ... », « packageID » : « ...... », "documentId": "......", (max 256 chars) « Date de création » : « 2017-05- 02T20:17:58.408Z » } | | DOCUMENT_VIEWED | Un document a été consulté. | { « nom » : « DOCUMENT_VIEWED », « sessionUser » : « ... », « packageID » : « ...... », "documentId": "......", (max 256 chars) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | EMAIL_BOUNCE | Un e-mail a été rejeté. Les types de rebond sont les suivants : - BOUNCE (un hard bounce) : Le destinataire n'est pas disponible. Cela peut se produire si l'adresse e-mail n'existe pas (par exemple, le domaine est valide, mais l'utilisateur ne l'est pas). - PLAINTE (un soft bounce) : Le destinataire a marqué l'email comme spam ou a déposé une plainte contre l'email de l'expéditeur. - OOTO (hors du bureau) : Le destinataire peut être disponible à l'avenir. Par exemple, si l'utilisateur est absent du bureau. Cela peut aussi se produire si le serveur de messagerie est temporairement indisponible, ou si le domaine est incorrect. Dans ce scénario, le système tentera de joindre le domaine pendant 14 heures, après quoi une réponse OOTO sera retournée. - PIÈCE JOINTE rejetée (un rebond léger) : Une pièce jointe envoyée avec l'email n'a pas été acceptée par le destinataire. - CONTENTREJECTED (un soft bounce) : Certaines sections de mots dans l'email ont été rejetées par le destinataire. - MAILBOXFULL (un rebond léger) : La boîte de réception des emails du destinataire est pleine. Dans ce scénario, le système tentera d'atteindre le domaine pendant 14 heures, après quoi une réponse OOTO sera retournée. - MESSAGETOOLARGE (un rebond léger) : L'email est trop grand pour être accepté par le destinataire. | { « nom » : « EMAIL_BOUNCE », « sessionUser » : « ... », « packageID » : « ...... », « message » : « type de rebond », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | EDEPOSIT_SUCCESS | La transaction/documents ont été déposés avec succès sur eOriginal. | { « nom » : « EDEPOSIT_SUCCESS », « sessionUser » : null, « packageId » : « COQj6taUQpUFpzPX76RP_eBhiMk= », « message » : « success.edeposit », « documentId » : null, « dateCréée » : 1732287648000 } | | EDEPOSIT_FAILURE | La transaction/documents ne peuvent pas être déposés dans eOriginal d'une manière irrécupérable. Notez que la raison de l'échec peut varier. | { « nom » : « EDEPOSIT_FAILURE », « sessionUser » : null, « packageId » : « 6Ve4c5qod3joGJL-dRPzRs9g2vM= », « message » : « unrerunable.error.edeposit : Échec de téléverser dans le coffre eOriginal. », « documentId » : null, « createdDate » : 1732287802000 } | | EDEPOSIT_FAILURE_ATTEMPT | La transaction/documents ne peuvent pas être déposés dans eOriginal de manière irrécupérable, et il y aura des tentatives automatisées supplémentaires de réenvoi des documents. | { « nom » : « EDEPOSIT_ATTEMPT_FAILURE », « sessionUser » : null, « packageId » : « VOcc64OByg6jNUpbwixkwFCJhiI= », « message » : « Tentative de rappel de la tentative de rappel 1/144 échouée pour l'interface graphique : VOcc64OByg6jNUpbwixkwFCJhiI= », « documentId » : null, « dateCréée » : « 2023-10-13T14:24:11.000Z"} | | KBA_FAILURE | Il y a eu un échec d'authentification KBA. | { « nom » : « KBA_FAILURE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ACTIVATE | Un package a été déplacé du statut DRAFT ou SUPPRIMÉ vers le statut ENVOYÉ. Par défaut, un package est créé dans l'état DRAFT, et est déplacé dans l'état ENVOYÉ lorsqu'il est prêt à être traité par les signataires. | { « nom » : « PACKAGE_ACTIVATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ARCHIVE | Une notification de rappel indique qu'un colis a été archivé. | { « nom » : « PACKAGE_ARCHIVE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_ATTACHMENT | Une notification de rappel indique qu'un signataire a téléchargé une pièce jointe. | { « nom » : « PACKAGE_ATTACHMENT », « sessionUser » : « ... », « packageID » : « ...... », « message » : « nom de l'annexe », (max 255 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_COMPLETE | Un colis a terminé le processus de signature. S'il y a plusieurs signataires, alors le « sessionUser » : « ... » sera l'identifiant de signataire du dernier signataire à signer. | { « nom » : « PACKAGE_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_CREATE | Un paquet a été créé. Ainsi, le Système d'origine peut enregistrer l'ID du paquet de OneSpan Sign.com, ainsi que l'ID de transaction du Système d'origine. REMARQUE : Un `PACKAGE_CREATE` événement sera déclenché si un paquet est déjà en statut DRAFT et qu'une requête API est envoyée pour demander qu'il soit replacé en statut DRAFT. | { « nom » : « PACKAGE_CREATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DEACTIVATE | Le statut d'un colis est passé de ENVOYÉ à BROUILLON. | { « nom » : « PACKAGE_DEACTIVATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DECLINE | Un destinataire a refusé de signer un colis et a spécifié une raison de le faire, le Système d'origine peut utiliser cette raison pour déterminer l'étape suivante du colis. | { « nom » : « PACKAGE_DECLINE », « sessionUser » : « ... », « packageID » : « ...... », « message » : « raison de refuser », (max 4000 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_DELETE | Un package a été supprimé du système OneSpan Sign.com. | { « nom » : « PACKAGE_DELETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_EXPIRE | Un colis a dépassé sa date d'expiration. | { « nom » : « PACKAGE_EXPIRE », « sessionUser » : « ... », « packageId » : « ... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_READY_FOR_COMPLETE | Un colis a été marqué comme DO_NOT_AUTOCOMPLETE. Une action de l'expéditeur sera nécessaire pour compléter le colis. | { « nom » : « PACKAGE_READY_FOR_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_RESTORE | Un colis a été détruit, mais est en train d'être ramené dans l'état dans lequel il se trouvait avant d'être jeté. | { « nom » : « PACKAGE_RESTORE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | PACKAGE_TRASH | Un colis a été déplacé dans le dossier corbeille dans la boîte de réception de OneSpan Sign (statut = DÉCHETS). | { « nom » : « PACKAGE_TRASH », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | RECORDINGS_READY | Après que tous les signataires ont terminé de signer une transaction dans la Salle Virtuelle, la session enregistrée est traitée. Une fois les enregistrements prêts à être téléchargés, cette notification est envoyée. | { « nom » : « RECORDINGS_READY », « sessionUser » : »... », « packageID » : « ...... », « dateCreate » :"2022-06-03T14:46:36.808Z » } | | ROLE_REASSIGN | Un signataire a délégué sa signature à un autre signataire. Lorsque cela se produit, OneSpan Sign crée un nouveau rôle avec un nouveau signataire. Il est judicieux à ce stade d'obtenir l'identifiant du signataire de ce nouveau rôle. C'est l'identifiant du signataire, et non l'identifiant du rôle, qui fera partie des événements futurs, tels que SIGNER_COMPLETE. Connaître l'identifiant du signataire, qui est transmis dans l'élément sessionUser de cet événement (et d'autres), facilitera le suivi du statut des signataires. | { « nom » : « ROLE_REASSIGN », « sessionUser » : « ... », « packageID » : « ...... », « newRoleId » : « ...... », (max 255 caractères) « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | SIGNER_COMPLETE | Un signataire a terminé la signature de tous les documents. | { « nom » : « SIGNER_COMPLETE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | SIGNER_LOCKED | Une notification de rappel indique qu'un signataire a été bloqué en raison d'échecs répétés d'authentification SMS/Q&R. | { « nom » : « SIGNER_LOCKED », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | | TEMPLATE_CREATE | Une notification de rappel indique qu'un modèle a été créé. | { « nom » : « TEMPLATE_CREATE », « sessionUser » : « ... », « packageID » : « ...... », « dateCréée » : « 2017-05-02T20:17:58.408Z » } | #### Réception des notifications d'événements Une fois que vous vous êtes inscrit pour être informé d'un ou plusieurs types d'événements, il vous suffit d'écouter les notifications associées. Lorsqu'un événement pertinent est déclenché, OneSpan Sign envoie un HTTP POST à votre URL enregistrée. Ce message contient une charge utile au format JSON, décrivant l'événement qui a déclenché la notification. La clé de rappel que vous avez enregistrée passe par l'en-tête d'Autorisation sous le nom de « Basic {callbackKey} ». Vous devez l'utiliser pour vous assurer de recevoir des notifications contenant le secret partagé, afin de savoir que vous ne recevez pas d'appels d'usurpation et de pouvoir réagir en conséquence. Voici quelques exemples de charges utiles de rappel : ```json // Package was Created {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_CREATE",  "sessionUser": "18EZDL44xgsX",  "packageId": "wVdZEaPD2igwUnFGJBjDD0dpO7k=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:04:55.384Z" } // Package was Sent {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_ACTIVATE",  "sessionUser": "18EZDL44xgsX",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:09:50.425Z" } // Signer 1 accepted consent document {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "DOCUMENT_SIGNED",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": "default-consent",  "createdDate": "2018-06-30T20:10:51.002Z" } // Signer 1 completed a document {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "DOCUMENT_SIGNED",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": "7caf46cdd75f7a411bf8c22793b84fa79d8d180becc40691",  "createdDate": "2018-06-30T20:12:12.256Z" } // Signer 1 completed signing package {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "SIGNER_COMPLETE",  "sessionUser": "44aafb7c-97b9-40e1-bb59-eb76c7d2a484",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:12:12.272Z" } // Package was Complete {  "@class": "com.silanis.esl.packages.event.ESLProcessEvent",  "name": "PACKAGE_COMPLETE",  "sessionUser": "e00696ec-d6f5-4feb-89c5-a5ce002a6c66",  "packageId": "5n4obeO8jYoPp126Cm-Y3fxdfbo=","message": null,  "documentId": null,  "createdDate": "2018-06-30T20:15:01.038Z" } ``` ### Mise en place des notifications de rappel Les exemples de code suivants peuvent être utilisés pour définir l'URL de rappel, la clé de rappel et vous abonner à trois notifications d'événements différentes. #### Requête HTTP ```http POST /api/callback ``` #### En-têtes HTTP ```http Accept: application/json   Content-Type: application/json   Authorization: Basic api_key ``` #### Charge utile de demande ```http {  "url": "https://www.esl.com/callbackNotifications",  "key": "secureKey#1",  "events": [    "PACKAGE_CREATE",    "PACKAGE_DECLINE",    "PACKAGE_COMPLETE"  ] } ``` Pour une description complète de chaque champ, voir le tableau des charges utiles de demande ci-dessous. #### Charge utile de réponse ```json {  "url": "https://www.esl.com/callbackNotifications",  "key": "secureKey#1",  "events": [    "PACKAGE_CREATE",    "PACKAGE_DECLINE",    "PACKAGE_COMPLETE"  ] } ``` ### Le résultat Après avoir exécuté votre code, cliquez sur Admin > Notification d'événement. Vous verrez que vos notifications d'événement sélectionnées ont été activées. ### Table des charges utiles de requêtes | Propriété | Type | Modifiable | Obligatoire | Par défaut | Valeurs d'échantillonnage | | --- | --- | --- | --- | --- | --- | | URL | Corde | Oui | Non | N/D | https://www.esl.com/callbackNotifications | | Clé | Corde | Oui | Non | N/D | secureKey#1 |