Passer au contenu principal
POST
curl
Chaque appel renvoie à nouveau le webhook. Rendez votre endpoint idempotent sur event_id avant de renvoyer en masse, et ne renvoyez que les livraisons dont response_status vaut null ou est supérieur ou égal à 400.
Un renvoi part vers l’URL utilisée par la livraison d’origine. Si vous avez déplacé la destination vers une nouvelle URL, les anciennes livraisons pointent toujours vers l’ancienne. Recherchez les livraisons à renvoyer avec Lister les livraisons de destination de webhook, et consultez le guide des webhooks pour la vérification de signature.

Autorisations

x-api-key
string
header
requis

La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.

Paramètres de chemin

destination_uuid
string<uuid>
requis

UUID de la destination à laquelle la livraison a été envoyée.

delivery_uuid
string<uuid>
requis

UUID de la livraison à renvoyer : le uuid d'une entrée renvoyée par GET /v3/webhook/destinations/{destination_uuid}/deliveries/.

Réponse

La nouvelle livraison, déjà tentée. response_status est ce que votre endpoint a répondu cette fois-ci (504 délai d'expiration, 503 échec de connexion). La livraison d'origine reste inchangée.

Une tentative de livraison vers une destination de webhook, avec exactement les en-têtes et le corps de requête envoyés par Didit.

uuid
string<uuid>
requis

ID de livraison, pour les appels de consultation détaillée et de renvoi.

session_id
string<uuid> | null
requis

Session de vérification d'utilisateur concernée par l'événement. null pour les événements de session d'entreprise, ainsi que pour les événements utilisateur, entreprise, de transaction, de Travel Rule et de workflow.

request_url
string<uri> | null
requis

URL à laquelle la livraison a été envoyée : l'URL de la destination au moment où l'événement a été généré.

response_status
integer | null
requis

Code d'état HTTP renvoyé par votre endpoint. null tant que la livraison est en file d'attente et n'a pas encore été tentée. Lorsqu'aucune réponse HTTP n'a été reçue, Didit enregistre son propre statut : 504 lorsque votre endpoint n'a pas répondu dans un délai de 5 secondes, 503 en cas d'échec de connexion, 400 lorsque l'URL a été rejetée car non sécurisée (par exemple une adresse privée ou interne), et 404 pour toute autre erreur de requête. Un code supérieur ou égal à 400 est considéré comme une livraison échouée.

response_time_ms
integer | null
requis

Durée de la tentative, en millisecondes. null tant que la livraison est dans la file d'attente.

Plage requise: x >= 0
status
string | null
requis

Statut signalé par l'événement lors de sa génération : le statut de la session pour les événements de session (par exemple Approved ou In Review), le statut de la personne ou de l'entreprise pour les événements utilisateur et entreprise, et le statut de la transaction pour les événements de transaction. null pour les événements ne comportant aucun statut.

webhook_type
enum<string>
requis

Nom d'événement webhook pris en charge. Utilisez ces chaînes exactes dans subscribed_events ; les valeurs non prises en charge sont rejetées.

Options disponibles:
status.updated,
data.updated,
user.status.updated,
user.data.updated,
business.status.updated,
business.data.updated,
activity.created,
transaction.created,
transaction.status.updated,
travel_rule.status.updated,
workflow.compliance_changed,
transaction_rule_suggestions.created,
auth.signup,
auth.login,
auth.login_failed,
auth.password_reset_requested,
auth.password_reset_completed,
auth.mfa_changed,
auth.new_device,
auth.account_locked,
investigator.report.ready,
investigator.decision.automated,
investigator.decision.overridden,
investigator.decision.contested,
investigator.question.raised,
investigator.automation.paused,
investigator.rfi.answered,
investigator.rfi.overdue,
investigator.drift.detected,
investigator.sla.breached,
investigator.qa.failed,
investigator.external.report.ready
created_at
string<date-time>
requis

Date et heure de création de la livraison.

request_header
string
requis

Texte JSON (une chaîne de caractères) des en-têtes de requête envoyés par Didit : Content-Type, X-Signature, X-Signature-V2, X-Signature-Simple, X-Timestamp et User-Agent. Analysez-le avec un parseur JSON. Il contient les signatures, jamais le secret de signature.

request_body
string
requis

Texte JSON (une chaîne de caractères) du payload exact envoyé par Didit, clés triées, comprenant event_id et timestamp. Analysez-le avec un parseur JSON ; voir Format du payload. Pour une clé restreinte sans media: read, les URL de médias qu'il contient sont null ; sans sessions: write, les tokens de session et les liens de vérification hébergés sont null. Un corps modifié de cette manière ne correspond plus à ses signatures. Didit n'enregistre pas le corps de réponse renvoyé par votre endpoint.

Dernière modification le 7 novembre 2026