# 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"
}API para criar revisão de sessão: KYC manual
Envie uma nota de revisão manual ou alteração de estado a uma sessão Didit. Revisão de conformidade por API, com pagamento por chamada.
# 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"
}Autorizações
A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.
Cabeçalhos
Defina como application/json ao enviar um corpo JSON.
"application/json"
Parâmetros de caminho
UUID da sessão de Verificação de utilizadores (KYC). Tem de pertencer à mesma aplicação da chave de API — UUIDs entre aplicações, sessões eliminadas e IDs de sessões de Verificação de empresas (KYB) devolvem todos 404.
"8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d"
Corpo
Etiqueta de estado opcional a registar na entrada. Aceita qualquer valor de estado da sessão, sensível a maiúsculas e minúsculas ("approved" é rejeitado com 400). Registar um estado aqui não altera o estado real da sessão — utilize o endpoint de atualização de estado para esse efeito.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User "In Review"
Nota de texto livre opcional (sem limite de comprimento imposto). Armazenada literalmente; as menções @email não são processadas neste endpoint.
"Flagging for manual document re-check."
Resposta
Entrada registada no registo de auditoria da sessão. A sessão em si não é alterada — o respetivo status mantém o valor anterior e nenhum webhook é enviado. A nova entrada também aparece no topo de GET …/reviews/ (com actor_display: "Unknown").
Nome de apresentação do autor da entrada. Sempre "Unknown" para entradas criadas através deste endpoint, porque não regista a atribuição do interveniente.
"Unknown"
A etiqueta de estado registada na entrada, ou null se nenhuma tiver sido enviada. O estado real da sessão não é afetado.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User "In Review"
A nota registada na entrada, ou null se nenhuma tiver sido enviada.
"Flagging for manual document re-check."
Quando a entrada foi gravada, ISO 8601 UTC.
"2026-06-12T00:18:44.466537Z"