curl -X GET 'https://verification.didit.me/v3/session/11111111-2222-3333-4444-555555555555/events/?limit=50' \
-H 'x-api-key: YOUR_API_KEY'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.sessions.list_events(
"11111111-2222-3333-4444-555555555555",
):
print(item)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
for await (const item of didit.sessions.listEvents("11111111-2222-3333-4444-555555555555")) {
console.log(item);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.Sessions.ListEventsAutoPaging(ctx, "11111111-2222-3333-4444-555555555555", didit.SessionsListEventsParams{})
for iter.Next() {
fmt.Printf("%+v\n", iter.Current())
}
if err := iter.Err(); err != nil {
log.Fatal(err)
}import me.didit.Didit;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
for (var item : client.sessions().listEvents("11111111-2222-3333-4444-555555555555")) {
System.out.println(item);
}<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
foreach ($didit->sessions->listEvents('11111111-2222-3333-4444-555555555555') as $item) {
print_r($item->toArray());
}require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
didit.sessions.list_events("11111111-2222-3333-4444-555555555555").auto_paging_each do |item|
puts item.to_h
endusing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
await foreach (var item in await client.Sessions.ListEventsAsync("11111111-2222-3333-4444-555555555555"))
{
Console.WriteLine(JsonSerializer.Serialize(item));
}{
"count": 3,
"next": null,
"previous": null,
"results": [
{
"uuid": "aaaaaaaa-1111-2222-3333-444444444444",
"event_type": "SESSION_STATUS_CHANGED",
"created_at": "2026-09-14T10:02:13.904512Z",
"component": null,
"feature_step": null,
"step": null,
"details": {
"old_status": "In Progress",
"current_status": "Approved"
},
"ip_address": null,
"user_agent": null,
"device_info": null,
"file_url": null,
"sent_at": 1789380131482
},
{
"uuid": "bbbbbbbb-1111-2222-3333-444444444444",
"event_type": "FEATURE_STEP_CHANGED",
"created_at": "2026-09-14T10:01:49.210377Z",
"component": null,
"feature_step": null,
"step": null,
"details": {
"old_feature_step": "OCR",
"current_feature_step": "LIVENESS"
},
"ip_address": null,
"user_agent": null,
"device_info": null,
"file_url": null,
"sent_at": 1789380107103
},
{
"uuid": "cccccccc-1111-2222-3333-444444444444",
"event_type": "STEP_RENDERED",
"created_at": "2026-09-14T10:01:00.581930Z",
"component": "DocumentCapture",
"feature_step": "OCR",
"step": "DOCUMENT_CAPTURE_FRONT",
"details": {},
"ip_address": "203.0.113.24",
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.5 Mobile/15E148 Safari/604.1",
"device_info": {
"device_model": "iPhone"
},
"file_url": null,
"sent_at": 1789380058776
}
]
}API Liste des événements de session
Lisez la chronologie d’une session Didit : étapes de l’appareil, changements de statut et routage, du plus récent au plus ancien, paginée.
curl -X GET 'https://verification.didit.me/v3/session/11111111-2222-3333-4444-555555555555/events/?limit=50' \
-H 'x-api-key: YOUR_API_KEY'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
for item in client.sessions.list_events(
"11111111-2222-3333-4444-555555555555",
):
print(item)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
for await (const item of didit.sessions.listEvents("11111111-2222-3333-4444-555555555555")) {
console.log(item);
}ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
iter := client.Sessions.ListEventsAutoPaging(ctx, "11111111-2222-3333-4444-555555555555", didit.SessionsListEventsParams{})
for iter.Next() {
fmt.Printf("%+v\n", iter.Current())
}
if err := iter.Err(); err != nil {
log.Fatal(err)
}import me.didit.Didit;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
for (var item : client.sessions().listEvents("11111111-2222-3333-4444-555555555555")) {
System.out.println(item);
}<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
foreach ($didit->sessions->listEvents('11111111-2222-3333-4444-555555555555') as $item) {
print_r($item->toArray());
}require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
didit.sessions.list_events("11111111-2222-3333-4444-555555555555").auto_paging_each do |item|
puts item.to_h
endusing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
await foreach (var item in await client.Sessions.ListEventsAsync("11111111-2222-3333-4444-555555555555"))
{
Console.WriteLine(JsonSerializer.Serialize(item));
}{
"count": 3,
"next": null,
"previous": null,
"results": [
{
"uuid": "aaaaaaaa-1111-2222-3333-444444444444",
"event_type": "SESSION_STATUS_CHANGED",
"created_at": "2026-09-14T10:02:13.904512Z",
"component": null,
"feature_step": null,
"step": null,
"details": {
"old_status": "In Progress",
"current_status": "Approved"
},
"ip_address": null,
"user_agent": null,
"device_info": null,
"file_url": null,
"sent_at": 1789380131482
},
{
"uuid": "bbbbbbbb-1111-2222-3333-444444444444",
"event_type": "FEATURE_STEP_CHANGED",
"created_at": "2026-09-14T10:01:49.210377Z",
"component": null,
"feature_step": null,
"step": null,
"details": {
"old_feature_step": "OCR",
"current_feature_step": "LIVENESS"
},
"ip_address": null,
"user_agent": null,
"device_info": null,
"file_url": null,
"sent_at": 1789380107103
},
{
"uuid": "cccccccc-1111-2222-3333-444444444444",
"event_type": "STEP_RENDERED",
"created_at": "2026-09-14T10:01:00.581930Z",
"component": "DocumentCapture",
"feature_step": "OCR",
"step": "DOCUMENT_CAPTURE_FRONT",
"details": {},
"ip_address": "203.0.113.24",
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 18_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.5 Mobile/15E148 Safari/604.1",
"device_info": {
"device_model": "iPhone"
},
"file_url": null,
"sent_at": 1789380058776
}
]
}WORKFLOW_BRANCH_EVALUATED, WORKFLOW_STATUS_NODE_REACHED) et leurs details sont décrits dans Récupérer une session, qui peut également renvoyer la chronologie d’une session de Vérification des utilisateurs (KYC) dans sa décision avec ?include=events.Autorisations
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
UUID de la session de vérification (le session_id renvoyé par POST /v3/session/). Accepte les identifiants de session de Vérification des utilisateurs (KYC) et de Vérification d'entreprise (KYB) : le serveur résout l'identifiant pour les deux types de session. Doit être un UUID bien formé ; une valeur malformée ne correspond pas à la route et renvoie une erreur HTML 404.
"11111111-2222-3333-4444-555555555555"
Paramètres de requête
Nombre maximal d'événements par page. Vaut par défaut 50. Une valeur inférieure à 1 ou non numérique revient à 50 ; une valeur supérieure à 1,000,000 renvoie 400.
1 <= x <= 100000050
Nombre de résultats à ignorer avant le premier renvoyé. La valeur par défaut est 0 ; une valeur négative ou non numérique revient à 0, une valeur supérieure à 1,000,000 renvoie 400. Privilégiez l'utilisation des URL next et previous.
0 <= x <= 10000000
Remplacement de tri optionnel. L'ordre par défaut est -sent_at. Transmettez le nom d'un champ de résultat (par exemple sent_at, created_at, event_type, feature_step ou step) pour un tri croissant, préfixez-le par - pour un tri décroissant, et séparez plusieurs champs par des virgules. Les champs inconnus sont ignorés.
"sent_at"
Réponse
Une page d'événements de la session, du plus récent au plus ancien.