from didit import Didit
# Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
# and DIDIT_APPLICATION_ID.
client = Didit()
result = client.reports.retry(
"11111111-2222-3333-4444-555555555555",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
const didit = new Didit();
const result = await didit.reports.retry("11111111-2222-3333-4444-555555555555");
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
client := didit.NewClient()
result, err := client.Reports.Retry(ctx, "11111111-2222-3333-4444-555555555555", didit.AsyncReportRetryRequest{})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.AsyncReportRetryRequest;
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
Didit client = new Didit();
var result = client.reports().retry("11111111-2222-3333-4444-555555555555");
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
$didit = new DiditClient();
$result = $didit->reports->retry('11111111-2222-3333-4444-555555555555');
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
# and DIDIT_APPLICATION_ID.
didit = Didit::Client.new
result = didit.reports.retry("11111111-2222-3333-4444-555555555555")
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
using var client = new DiditClient();
var result = await client.Reports.RetryAsync("11111111-2222-3333-4444-555555555555");
Console.WriteLine(JsonSerializer.Serialize(result));curl --request POST \
--url https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/reports/{report_uuid}/retry/ \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '{}'{
"uuid": "00000000-0000-4000-8000-000000000002",
"report_type": "SESSION_EXPORT",
"report_type_display": "Verifications",
"status": "READY",
"status_display": "Ready",
"parameters": {},
"requested_by_user_id": null,
"requested_by_email": null,
"requested_by_name": null,
"row_count": 9,
"failed_item_ids": [
"00000000-0000-4000-8000-000000000001"
],
"failed_count": 1,
"file_size": 1200,
"files": [
{
"name": "verifications.csv",
"format": "csv",
"rows": 9,
"bytes": 1200
}
],
"scheduled_report": null,
"error_message": null,
"deletion_pending": false,
"eta_seconds": null,
"started_at": "2026-11-11T01:00:00Z",
"completed_at": "2026-11-11T01:01:00Z",
"expires_at": "2026-12-11T01:00:00Z",
"created_at": "2026-11-11T01:00:00Z",
"updated_at": "2026-11-11T01:01:00Z"
}{
"uuid": "00000000-0000-4000-8000-000000000002",
"report_type": "SESSION_EXPORT",
"report_type_display": "Verifications",
"status": "READY",
"status_display": "Ready",
"parameters": {},
"requested_by_user_id": null,
"requested_by_email": null,
"requested_by_name": null,
"row_count": 9,
"failed_item_ids": [
"00000000-0000-4000-8000-000000000001"
],
"failed_count": 1,
"file_size": 1200,
"files": [
{
"name": "verifications.csv",
"format": "csv",
"rows": 9,
"bytes": 1200
}
],
"scheduled_report": null,
"error_message": null,
"deletion_pending": false,
"eta_seconds": null,
"started_at": "2026-11-11T01:00:00Z",
"completed_at": "2026-11-11T01:01:00Z",
"expires_at": "2026-12-11T01:00:00Z",
"created_at": "2026-11-11T01:00:00Z",
"updated_at": "2026-11-11T01:01:00Z"
}{
"detail": "Write request rate limit exceeded. You can make up to 300 requests per minute.",
"reference": "RL-00000000000040008000000000000001",
"limit": 300,
"remaining": 0,
"reset": 1794358860,
"window_seconds": 60
}Повторная попытка асинхронного отчёта: API Didit
Повтор асинхронного экспорта Didit или неуспешных верификаций: доступ только у инициатора, без удалённых сессий, с обработкой повторов.
from didit import Didit
# Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
# and DIDIT_APPLICATION_ID.
client = Didit()
result = client.reports.retry(
"11111111-2222-3333-4444-555555555555",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
const didit = new Didit();
const result = await didit.reports.retry("11111111-2222-3333-4444-555555555555");
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
client := didit.NewClient()
result, err := client.Reports.Retry(ctx, "11111111-2222-3333-4444-555555555555", didit.AsyncReportRetryRequest{})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.AsyncReportRetryRequest;
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
Didit client = new Didit();
var result = client.reports().retry("11111111-2222-3333-4444-555555555555");
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
$didit = new DiditClient();
$result = $didit->reports->retry('11111111-2222-3333-4444-555555555555');
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
# and DIDIT_APPLICATION_ID.
didit = Didit::Client.new
result = didit.reports.retry("11111111-2222-3333-4444-555555555555")
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
// and DIDIT_APPLICATION_ID.
using var client = new DiditClient();
var result = await client.Reports.RetryAsync("11111111-2222-3333-4444-555555555555");
Console.WriteLine(JsonSerializer.Serialize(result));curl --request POST \
--url https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/reports/{report_uuid}/retry/ \
--header 'Content-Type: application/json' \
--header 'x-api-key: <api-key>' \
--data '{}'{
"uuid": "00000000-0000-4000-8000-000000000002",
"report_type": "SESSION_EXPORT",
"report_type_display": "Verifications",
"status": "READY",
"status_display": "Ready",
"parameters": {},
"requested_by_user_id": null,
"requested_by_email": null,
"requested_by_name": null,
"row_count": 9,
"failed_item_ids": [
"00000000-0000-4000-8000-000000000001"
],
"failed_count": 1,
"file_size": 1200,
"files": [
{
"name": "verifications.csv",
"format": "csv",
"rows": 9,
"bytes": 1200
}
],
"scheduled_report": null,
"error_message": null,
"deletion_pending": false,
"eta_seconds": null,
"started_at": "2026-11-11T01:00:00Z",
"completed_at": "2026-11-11T01:01:00Z",
"expires_at": "2026-12-11T01:00:00Z",
"created_at": "2026-11-11T01:00:00Z",
"updated_at": "2026-11-11T01:01:00Z"
}{
"uuid": "00000000-0000-4000-8000-000000000002",
"report_type": "SESSION_EXPORT",
"report_type_display": "Verifications",
"status": "READY",
"status_display": "Ready",
"parameters": {},
"requested_by_user_id": null,
"requested_by_email": null,
"requested_by_name": null,
"row_count": 9,
"failed_item_ids": [
"00000000-0000-4000-8000-000000000001"
],
"failed_count": 1,
"file_size": 1200,
"files": [
{
"name": "verifications.csv",
"format": "csv",
"rows": 9,
"bytes": 1200
}
],
"scheduled_report": null,
"error_message": null,
"deletion_pending": false,
"eta_seconds": null,
"started_at": "2026-11-11T01:00:00Z",
"completed_at": "2026-11-11T01:01:00Z",
"expires_at": "2026-12-11T01:00:00Z",
"created_at": "2026-11-11T01:00:00Z",
"updated_at": "2026-11-11T01:01:00Z"
}{
"detail": "Write request rate limit exceeded. You can make up to 300 requests per minute.",
"reference": "RL-00000000000040008000000000000001",
"limit": 300,
"remaining": 0,
"reset": 1794358860,
"window_seconds": 60
}201. При повторной отправке того же набора элементов с ошибкой возвращается существующий отчёт с кодом 200.
403 при отправке item_ids, даже для собственного приложения. Сгенерированный пример с API-ключом повторно запускает весь экспорт с пустым телом запроса.SESSION_EXPORT в статусе READY или FAILED без указания нового диапазона дат. Удалённые сессии повторить нельзя.Авторизации
API-ключ вашего приложения из раздела «Разработчикам» -> «API-ключи» в Business Console. Основной ключ имеет полный доступ. Именованный ключ может иметь ограниченную область действия: без доступа, чтение или запись для каждого ресурса, ограничение определенными сценариями или одобренными сессиями, списком IP-адресов и сроком действия. 401 означает, что ключ неверен, отозван или его срок действия истек; 403 означает, что ключ не был передан, у ключа нет доступа к этому ресурсу или действию, либо запрос поступил с адреса вне его списка IP-адресов; 404 на маршруте сессии означает, что сессия не входит в сценарии или статусы ключа. Ключ без доступа к медиа получает URL изображений, видео и PDF как null, а ключ без прав на запись сессий получает ссылки на сессии и токены как null. См. https://docs.didit.me/console/api-keys.
Параметры пути
Тело
Ответ
Повтор идентичного выбора неудавшихся элементов; возвращает существующий отчёт о повторной попытке без постановки в очередь ещё одного отчёта
Тип экспорта или комплаенс-отчёта.
SESSION_EXPORT, TRANSACTION_EXPORT, BUSINESS_EXPORT, VENDOR_USER_EXPORT, VENDOR_BUSINESS_EXPORT, CASE_EXPORT, CASE_SLA_EXPORT, LIST_ENTRY_EXPORT, EVENT_EXPORT, COMPLIANCE_KYC_KYB, COMPLIANCE_AML_LOG, COMPLIANCE_TRAVEL_RULE, COMPLIANCE_SANCTIONS_PEP, COMPLIANCE_RISK_SUMMARY, COMPLIANCE_SAR_STR_DRAFT, COMPLIANCE_CTR, COMPLIANCE_CASE_SUMMARY