# 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: ручная KYC-проверка
Отправьте заметку о ручной проверке или изменение статуса для сессии верификации Didit. Программный комплаенс-контроль и журнал аудита, оплата за вызов.
# 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-ключ вашего приложения из раздела «Разработчикам» -> «API-ключи» в Business Console. Основной ключ имеет полный доступ. Именованный ключ может иметь ограниченную область действия: без доступа, чтение или запись для каждого ресурса, ограничение определенными сценариями или одобренными сессиями, списком IP-адресов и сроком действия. 401 означает, что ключ неверен, отозван или его срок действия истек; 403 означает, что ключ не был передан, у ключа нет доступа к этому ресурсу или действию, либо запрос поступил с адреса вне его списка IP-адресов; 404 на маршруте сессии означает, что сессия не входит в сценарии или статусы ключа. Ключ без доступа к медиа получает URL изображений, видео и PDF как null, а ключ без прав на запись сессий получает ссылки на сессии и токены как null. См. https://docs.didit.me/console/api-keys.
Заголовки
Укажите application/json при отправке тела запроса в формате JSON.
"application/json"
Параметры пути
UUID сессии Проверки пользователей (KYC). Должен принадлежать тому же приложению, что и API-ключ — UUID из других приложений, удалённые сессии и идентификаторы сессий Верификации бизнеса (KYB) возвращают 404.
"8c2f3a14-7e9b-4d23-9e83-3f7d5e8a1c6d"
Тело
Необязательная метка статуса для сохранения в записи. Принимает любое значение статуса сессии с учётом регистра ("approved" отклоняется с ошибкой 400). Сохранение статуса здесь не меняет фактический статус сессии — используйте для этого endpoint обновления статуса.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User "In Review"
Необязательная текстовая заметка в свободной форме (без строгого ограничения по длине). Сохраняется без изменений; упоминания вида @email на этом endpoint не обрабатываются.
"Flagging for manual document re-check."
Ответ
Запись внесена в журнал аудита сессии. Сама сессия не меняется — её status сохраняет предыдущее значение, а webhook не отправляется. Новая запись также отображается вверху GET …/reviews/ (с actor_display: "Unknown").
Отображаемое имя автора записи. Всегда "Unknown" для записей, созданных через этот endpoint, поскольку он не фиксирует авторство действия.
"Unknown"
Метка статуса, зафиксированная в записи, или null, если метка не передавалась. Фактический статус сессии не меняется.
Not Started, In Progress, Approved, Declined, In Review, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User "In Review"
Заметка, прикрепленная к записи, или null, если она не передавалась.
"Flagging for manual document re-check."
Когда запись была внесена, ISO 8601 UTC.
"2026-06-12T00:18:44.466537Z"