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
}
]
}Llistar esdeveniments de sessió de l'API
Llegeix la línia de temps d’una sessió de verificació de Didit: passos, canvis d’estat i encaminament, del més recent al més antic i paginat.
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) i els seus details es descriuen a Recuperar sessió, que també pot retornar la cronologia d’una sessió de verificació d’usuaris (KYC) dins de la seva decisió amb ?include=events.Autoritzacions
La clau d'API de la teva aplicació, des de Developers -> API keys a la Business Console. La clau primària té accés complet. Una clau amb nom pot tenir l'abast limitat: cap, lectura o escriptura per recurs, limitada a determinats fluxos de treball o a sessions aprovades, a una llista d'adreces IP i a una data de caducitat. 401 significa que la clau és incorrecta, revocada o caducada; 403 significa que no s'ha enviat cap clau, que la clau no té accés a aquest recurs o acció, o que la sol·licitud prové d'una adreça fora de la seva llista d'IP; 404 en una ruta de sessió significa que la sessió està fora dels fluxos de treball o estats de la clau. Una clau sense accés a fitxers multimèdia rep els URL d'imatge, vídeo i PDF com a null, i una clau sense permís d'escriptura de sessions rep els enllaços de sessió i els tokens com a null. Consulta https://docs.didit.me/console/api-keys.
Paràmetres de ruta
UUID de la sessió de verificació (el session_id retornat per POST /v3/session/). Accepta tant IDs de sessió de Verificació d'usuaris (KYC) com de Verificació d'empreses (KYB): el servidor resol l'ID entre tots dos tipus de sessió. Ha de ser un UUID ben format; un valor mal format no coincideix amb la ruta i retorna un 404 en HTML.
"11111111-2222-3333-4444-555555555555"
Paràmetres de consulta
Nombre màxim d'esdeveniments per pàgina. Per defecte és 50. Un valor inferior a 1 o un valor no numèric torna al valor predeterminat de 50; un valor superior a 1,000,000 retorna 400.
1 <= x <= 100000050
Nombre de resultats que cal ometre abans del primer retornat. Per defecte és 0; un valor negatiu o no numèric torna a 0, un valor superior a 1,000,000 retorna 400. És preferible seguir els URL next i previous.
0 <= x <= 10000000
Anul·lació opcional de l'ordenació. L'ordre predeterminat és -sent_at. Passa el nom d'un camp de resultat (per exemple sent_at, created_at, event_type, feature_step o step) per ordenar de manera ascendent, afegeix-li el prefix - per ordenar de manera descendent i separa diversos camps amb comes. Els camps desconeguts s'ignoren.
"sent_at"
Resposta
Una pàgina dels esdeveniments de la sessió, els més recents primer.