# Records an audit-trail note only -- the session's status does NOT change.
curl -s -X POST https://verification.didit.me/v3/sessions/8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d/reviews/ \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"new_status": "In Review",
"comment": "Flagging for manual document re-check."
}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.reviews.create(
"8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d",
new_status="In Review",
comment="Flagging for manual document re-check.",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.reviews.create("8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", {
new_status: "In Review",
comment: "Flagging for manual document re-check.",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.Reviews.Create(ctx, "8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", didit.SessionsReviewsCreateParams{
NewStatus: didit.Some(didit.SessionsReviewsCreateParamsNewStatus("In Review")),
Comment: didit.String("Flagging for manual document re-check."),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.SessionsReviewsCreateParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().reviews().create("8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", SessionsReviewsCreateParams.builder()
.newStatus(SessionsReviewsCreateParams.NewStatus.of("In Review"))
.comment("Flagging for manual document re-check.")
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->reviews->create('8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d', [
'new_status' => 'In Review',
'comment' => 'Flagging for manual document re-check.',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.reviews.create(
"8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d",
new_status: "In Review",
comment: "Flagging for manual document re-check."
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.Reviews.CreateAsync("8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", new SessionsReviewsCreateParams
{
NewStatus = new SessionsReviewsCreateParamsNewStatus("In Review"),
Comment = "Flagging for manual document re-check.",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"user": "Unknown",
"new_status": "In Review",
"comment": "Flagging for manual document re-check.",
"created_at": "2026-06-12T00:18:44.466537Z"
}Crea revisione sessione API: revisione manuale KYC
Invia una nota di revisione manuale o un cambio di stato a una sessione Didit. Revisione di compliance programmatica con registro di audit, a consumo.
# Records an audit-trail note only -- the session's status does NOT change.
curl -s -X POST https://verification.didit.me/v3/sessions/8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d/reviews/ \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"new_status": "In Review",
"comment": "Flagging for manual document re-check."
}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.reviews.create(
"8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d",
new_status="In Review",
comment="Flagging for manual document re-check.",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.reviews.create("8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", {
new_status: "In Review",
comment: "Flagging for manual document re-check.",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.Reviews.Create(ctx, "8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", didit.SessionsReviewsCreateParams{
NewStatus: didit.Some(didit.SessionsReviewsCreateParamsNewStatus("In Review")),
Comment: didit.String("Flagging for manual document re-check."),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.SessionsReviewsCreateParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().reviews().create("8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", SessionsReviewsCreateParams.builder()
.newStatus(SessionsReviewsCreateParams.NewStatus.of("In Review"))
.comment("Flagging for manual document re-check.")
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->reviews->create('8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d', [
'new_status' => 'In Review',
'comment' => 'Flagging for manual document re-check.',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.reviews.create(
"8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d",
new_status: "In Review",
comment: "Flagging for manual document re-check."
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.Reviews.CreateAsync("8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d", new SessionsReviewsCreateParams
{
NewStatus = new SessionsReviewsCreateParamsNewStatus("In Review"),
Comment = "Flagging for manual document re-check.",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"user": "Unknown",
"new_status": "In Review",
"comment": "Flagging for manual document re-check.",
"created_at": "2026-06-12T00:18:44.466537Z"
}Autorizzazioni
La chiave API della tua applicazione, da Developers -> API keys nella Business Console. La chiave primaria ha accesso completo. Una chiave con nome può avere un ambito definito: nessuno, lettura o scrittura per risorsa, limitata ad alcuni workflow o a sessioni approvate, a un elenco di indirizzi IP e a una data di scadenza. 401 indica che la chiave è errata, revocata o scaduta; 403 indica che non è stata inviata alcuna chiave, che la chiave non ha accesso a questa risorsa o azione, oppure che la richiesta proviene da un indirizzo non incluso nel suo elenco IP; 404 su una route di sessione indica che la sessione non rientra nei workflow o negli stati previsti dalla chiave. Una chiave senza accesso ai media riceve gli URL di immagini, video e PDF come null, e una chiave senza permessi di scrittura sulle sessioni riceve link e token di sessione come null. Consulta https://docs.didit.me/console/api-keys.
Intestazioni
Imposta su application/json quando invii un corpo JSON.
"application/json"
Parametri del percorso
UUID della sessione di Verifica degli utenti (KYC). Deve appartenere alla stessa applicazione della chiave API: gli UUID appartenenti ad altre applicazioni, le sessioni eliminate e gli ID di sessione di Verifica aziendale (KYB) restituiscono tutti 404.
"8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d"
Corpo
Etichetta di stato opzionale da registrare nella voce. Accetta qualsiasi valore di stato della sessione, con distinzione tra maiuscole e minuscole ("approved" viene rifiutato con 400). La registrazione di uno stato qui non modifica lo stato effettivo della sessione: usa l'endpoint di aggiornamento dello stato a tale scopo.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User "In Review"
Nota opzionale a testo libero (nessun limite di lunghezza imposto). Memorizzata letteralmente; le menzioni @email non vengono elaborate su questo endpoint.
"Flagging for manual document re-check."
Risposta
Voce registrata nel registro di audit della sessione. La sessione stessa rimane invariata: il suo status mantiene il valore precedente e non viene inviato alcun webhook. La nuova voce compare anche in cima a GET …/reviews/ (con actor_display: "Unknown").
Nome visualizzato dell'autore della voce. Sempre "Unknown" per le voci create tramite questo endpoint, poiché non registra l'autore.
"Unknown"
L'etichetta di stato registrata sulla voce, oppure null se non ne è stata inviata alcuna. Lo stato effettivo della sessione non viene modificato.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User "In Review"
La nota registrata sulla voce, o null se non ne è stata inviata alcuna.
"Flagging for manual document re-check."
Data e ora di scrittura della voce, ISO 8601 UTC.
"2026-06-12T00:18:44.466537Z"