> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# Список сессий API: фильтр сессий KYC и KYB

> GET /v3/sessions/ выводит сессии верификации с фильтрами по типу, статусу, сценарию и данным поставщика. Единый API KYC и KYB от Didit, оплата за использование.



Промпт для списка сессий
        Скопировать промпт в буфер обмена



      
      

\<pre>

\`List Didit verification sessions for your application with filters and pagination.

Endpoint:
GET https://verification.didit.me/v3/sessions

Authentication:
Use the x-api-key header with your Didit API key. The key must hold read:sessions.

Query parameters:
\- session_kind ("user" | "business" | "all", default "user") — chooses which kind to list. "user" returns only KYC sessions (backward-compatible default). "business" returns only KYB. "all" concatenates both (KYB rows are appended; not interleaved by timestamp).
\- vendor_data (string) — exact match on your stable identifier.
\- didit_internal_id (UUID) — matches vendor_user_id.
\- status (one or more, comma-separated) — Approved, Declined, In Review, In Progress, Not Started, Expired, Abandoned, Kyc Expired, Resubmitted, Awaiting User.
\- workflow_id (one or more UUIDs, comma-separated).
\- country (one or more ISO-3 codes, comma-separated) — issuing-state for KYC, country_code for KYB.
\- region (one or more, comma-separated).
\- document_type (one or more, comma-separated).
\- date_from, date_to (ISO 8601 date) — inclusive on created_at.
\- search (string) - a complete displayed reference such as S-0001 (user) or B-0001 (business) matches only that session number and kind, ignoring leading zeros and letter case.
Other input searches the existing name, contact, document, registration-number and vendor_data fields.
\- tags (comma-separated tag ids) — sessions that carry any of them.
\- decided_from, decided_to (ISO 8601 datetimes) — sessions whose status last changed at or after / before the value.
\- limit (int, default 50), offset (int, default 0) — limit/offset pagination. Both accept values up to 1000000; larger values return 400.

Per-kind filters (silently ignored on the other kind): is_kyc_to_be_reviewed, status_initialized_as_in_review, session_type, api_service, screened_full_name, document_name, warning.

curl example:
curl -G https://verification.didit.me/v3/sessions/ \
-H "x-api-key: <API_KEY>" \
\--data-urlencode "session_kind=all" \
\--data-urlencode "status=Approved,In Review" \
\--data-urlencode "date_from=2026-01-01" \
\--data-urlencode "limit=50"

Response envelope:
\{
"count": <int>,   // exact up to 100, capped at 100 beyond that: paginate with next
"next": "<url|null>",
"previous": "<url|null>",
"results": [ ...rows ]
}

Every row has:
\- session_id (UUID), session_kind ("user" | "business"), session_number, status, vendor_data, created_at.

KYC row extras: portrait_image, document_type, full_name, country (issuing state), phone_number, email_address, features, didit_internal_id, assignee, waiting_since, sla_due_at, top_warnings, warnings_count.

KYB row extras: workflow_type, workflow_label, company_name, registration_number, country (incorporation).

Each row is a LIGHT projection. For the full feature payload of a row, call GET /v3/session/{session_id}/decision/ — see /sessions-api/retrieve-session.

Failure modes:
\- 401 — invalid API key.
\- 403 — { "detail": "You do not have permission to perform this action." } when the key lacks read:sessions.
\- 400 — malformed UUIDs in filters are silently dropped (no error); malformed ISO dates return { "date_from": ["..."] }.

Common patterns:
\- Build a dashboard: paginate with limit + offset, sort newest-first (server orders by -session_number within each kind).
\- Find pending review queue: status=In Review.
\- Find a specific entity's sessions: vendor_data=<your-id>.
\- Refresh ongoing AML hits: filter by workflow_id of your AML workflow.

For end-to-end Didit integration, paste in the full prompt at /integration/integration-prompt.`

\</pre>



      
      

Вставьте в

## Фильтр по типу сессииИспользуйте параметр запроса `session_kind`, чтобы выбрать тип сессий для возврата:| Значение | Возвращает |
| - | - |
| `user` (по умолчанию) | Только сессии Проверки пользователей (KYC). **Обратная совместимость**: чтобы получить его, не указывайте `session_kind`. |
| `business` | Только сессии Верификации бизнеса (KYB). |
| `all` | Сессии Проверки пользователей и Верификации бизнеса, объединённые в один список. |Каждая строка ответа содержит `session_kind: "user" | "business"`, чтобы ваш клиент мог определять структуру каждой строки.## Общие фильтрыЭти фильтры применяются к обоим типам (фильтры только для пользователей игнорируются, когда `session_kind=business`, и наоборот):| Параметр запроса | Описание |
| - | - |
| `session_kind` | `user`, `business` или `all`. По умолчанию `user`. |
| `vendor_data` | Точное совпадение с вашим идентификатором. |
| `status` | Один или несколько статусов через запятую, написанных точно так, как их возвращает API: `Approved`, `Declined`, `In Review` и так далее (см. [Статусы верификации](https://docs.didit.me/ru/integration/verification-statuses.md)). |
| `workflow_id` | Фильтр по используемому сценарию. |
| `country` | Фильтр по коду страны (для пользователей: `issuing_states`, для компаний: `country_code`). |
| `date_from`, `date_to` | Временной интервал по дате создания (ISO 8601). |
| `tags` | Идентификаторы тегов через запятую. Возвращает сессии, у которых есть любой из них. |
| `decided_from`, `decided_to` | Даты и время в формате ISO 8601. Возвращает сессии, статус которых последний раз менялся в этом интервале (от значения включительно, до значения не включительно). Используется время последнего изменения статуса, а не время создания. |
| `search` | Полный отображаемый номер, например `S-0001` или `B-0001`, находит только эту сессию по номеру и типу, игнорируя ведущие нули и регистр букв. Любой другой ввод ищет по существующим полям имени, контакта, документа, регистрационного номера и `vendor_data`. |## Примеры> [tab] Список сессий Проверки пользователей (KYC) (по умолчанию)
>
> ```bash theme={null}
> curl -G https://verification.didit.me/v3/sessions/ \
>   -H "x-api-key: YOUR_API_KEY" \
>   --data-urlencode "vendor_data=user-42"
> ```
>
> **Ответ (сокращён):**
>
> ```json theme={null}
> {
>   "count": 3,
>   "next": null,
>   "previous": null,
>   "results": [
>     {
>       "session_id": "...",
>       "session_kind": "user",
>       "session_number": 1024,
>       "session_url": "...",
>       "portrait_image": "...",
>       "document_type": "Passport",
>       "full_name": "John Doe",
>       "country": "GBR",
>       "status": "Approved",
>       "vendor_data": "user-42",
>       "didit_internal_id": "...",
>       "created_at": "2026-04-10T09:00:00Z",
>       "features": "ID_VERIFICATION,LIVENESS,FACE_MATCH,AML",
>       "phone_number": "+14155550123",
>       "email_address": "jane@example.com",
>       "additional_details": null
>     }
>   ]
> }
> ```> [tab] Список сессий Верификации бизнеса (KYB)
>
> ```bash theme={null}
> curl -G https://verification.didit.me/v3/sessions/ \
>   -H "x-api-key: YOUR_API_KEY" \
>   --data-urlencode "session_kind=business" \
>   --data-urlencode "status=Approved"
> ```
>
> **Ответ (сокращён):**
>
> ```json theme={null}
> {
>   "count": 1,
>   "next": null,
>   "previous": null,
>   "results": [
>     {
>       "session_id": "...",
>       "session_kind": "business",
>       "session_number": 89,
>       "status": "Approved",
>       "vendor_data": "biz-acme-001",
>       "created_at": "2026-04-01T09:00:00Z",
>       "workflow_id": "wf_kyb_standard",
>       "workflow_type": "business",
>       "workflow_label": "Standard KYB",
>       "company_name": "Acme Corporation Limited",
>       "registration_number": "12345678",
>       "country": "GBR"
>     }
>   ]
> }
> ```> [tab] Список обоих типов
>
> ```bash theme={null}
> curl -G https://verification.didit.me/v3/sessions/ \
>   -H "x-api-key: YOUR_API_KEY" \
>   --data-urlencode "session_kind=all" \
>   --data-urlencode "date_from=2026-04-01T00:00:00Z"
> ```
>
> Возвращает строки Проверки пользователей и Верификации бизнеса в одном массиве `results`. Клиенту следует определять структуру каждой строки по `session_kind`.
>
> > [!NOTE]
> >
> > Режим `all` объединяет результаты, а не чередует их по временной метке. Для больших объёмов смешанных выборок запрашивайте каждый тип отдельно и объединяйте результаты на стороне клиента.## Структура строк зависит от типаСтроки Проверки пользователей (KYC) включают: `portrait_image`, `document_type`, `full_name`, `country` (страна выдачи), `phone_number`, `email_address` и несколько полей проверки: `assignee` (проверяющий в Консоли, который ведёт сессию, или `null`), `waiting_since` и `sla_due_at` (задаются только пока сессия находится в статусе `In Review`), `top_warnings` (наиболее важные предупреждения, каждое с `risk`, `feature`, `log_type` и `short_description`) и `warnings_count`.Строки Верификации бизнеса (KYB) включают: `workflow_type`, `workflow_label`, `company_name`, `registration_number`, `country` (страна регистрации).Оба типа содержат: `session_id`, `session_kind`, `session_number`, `status`, `vendor_data`, `created_at`.Полную матрицу функций см. в разделе [Обзор сессий](https://docs.didit.me/ru/sessions-api/overview.md).## ПагинацияПагинация использует `limit` (по умолчанию `50`) и `offset` (по умолчанию `0`), а в ответе есть абсолютные URL `next` и `previous`. Оба параметра принимают значения до `1000000`; большее значение возвращает `400`.`count` точен до `100` и остаётся равным `100` при большем количестве, поэтому не используйте его как общее число. Продолжайте запрашивать URL `next`, пока он не станет `null`. При `session_kind=all` значение `count` равно сумме обоих типов, каждый из которых ограничен `100`.## Связанные материалы- [Обзор сессий](https://docs.didit.me/ru/sessions-api/overview.md)
- [Получение сессии](https://docs.didit.me/ru/sessions-api/retrieve-session.md) — полное решение по одной строке
- [Обзор компаний](https://docs.didit.me/ru/entities/businesses/overview.md) — сущность Business, агрегированная по сессиям
- [Обзор пользователей](https://docs.didit.me/ru/entities/users/overview.md) — сущность User, агрегированная по сессиям


## OpenAPI

````yaml ru/openapi-25.json GET /v3/sessions/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: >-
    API верификации личности. Аутентификация выполняется с помощью заголовка
    x-api-key.
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/sessions/:
    get:
      tags:
        - Sessions
      summary: >-
        Получить список сессий верификации (KYC и/или KYB) с фильтрацией и
        пагинацией
      description: >-
        Возвращает разбитый на страницы список сессий верификации для
        приложения, определяемого вашим API-ключом, сначала новые (по убыванию
        `session_number`).


        **Канонический URL:** маршрут: `/v3/sessions/` (со слэшем на конце).
        Запросы к `/v3/sessions` без слэша получают перенаправление `301` на URL
        со слэшем с сохранением строки запроса; большинство HTTP-клиентов
        прозрачно следуют ему при вызовах GET.


        **Когда использовать этот endpoint, а когда webhook.** Используйте этот
        endpoint для панелей управления, поиска в бэк-офисе, сверки данных и
        пакетного экспорта. Не опрашивайте его для отслеживания прогресса
        отдельных верификаций - настройте вместо этого
        [webhook](/ru/integration/webhooks), которые отправляют события
        `status.updated` в момент изменения сессии. Чтобы получить полный
        результат по одной сессии, вызывайте `GET
        /v3/session/{sessionId}/decision/`.


        **Сессии KYC и KYB.** `session_kind` определяет, какие типы сессий
        выводятся в списке:

        - `user` (по умолчанию) - только сессии Проверки пользователей (KYC).
        Поведение для обратной совместимости.

        - `business` - только сессии Верификации бизнеса (KYB). Строки имеют
        другую, более компактную структуру (см. схему ответа).

        - `all` - оба типа в одном ответе: страница KYC и страница KYB для одних
        и тех же `limit`/`offset` объединяются в `results` (сначала строки KYC),
        поэтому страница может содержать до `2 x limit` строк. `count`
        представляет собой сумму обоих типов, а `next`/`previous` отражают
        пагинацию со стороны KYC. Для строгой пагинации смешанных данных
        вызывайте `user` и `business` отдельно.


        Каждая строка содержит дискриминатор `session_kind` (`"user"` или
        `"business"`).


        **Пагинация.** Стандартная схема limit/offset: `limit` (по умолчанию 50)
        и `offset` (по умолчанию 0), с готовыми URL страниц в `next`/`previous`.
        Для строк KYC значение `count` является точным. Для строк KYB значение
        `count` вычисляется с помощью ограниченного сканирования и ограничено
        100 - если совпадений больше 100, оно остаётся равным 100, поэтому
        выполняйте итерацию с помощью `next` (или проверяя, была ли возвращена
        полная страница), а не вычисляя общее количество страниц из `count`.


        **Семантика фильтров.** Все фильтры объединяются по условию И (AND) и
        применяются к строкам KYC. Когда `session_kind` имеет значение
        `business` или `all`, на стороне KYB учитываются общие параметры
        `vendor_data`, `status`, `workflow_id`, `country` (код страны
        регистрации компании), `date_from`, `date_to`, `search` (название
        компании, регистрационный номер — вводите регистрационные номера без
        разделителей, например `DPC001`, а не `DPC-001` — vendor_data, номер
        сессии или UUID сессии), `warning` и `organization_name`; остальные
        фильтры, предназначенные только для KYC, игнорируются для строк KYB.
        Параметры, разделённые запятыми (`status`, `country`, `document_type`,
        `region`, `workflow_id`, `document_name`, `warning`,
        `organization_name`, `session_type`), сопоставляются с любым из
        указанных значений (ИЛИ внутри параметра). Поле `vendor_data`
        сопоставляется точно - используйте `search` для частичного совпадения.
        Неизвестные значения в фильтрах-списках просто не возвращают строк (без
        ошибки); некорректно сформированные типизированные значения
        (`date_from`, `date_to`, `didit_internal_id`, `api_service`,
        `session_kind`) возвращают `400` с объектом ошибки для каждого поля.


        **Поиск.** Параметр `search` адаптируется к входным данным: полный UUID
        ищет по `session_id`; цифры (с необязательными `+ - . space`)
        сопоставляются с префиксом номера сессии, номерами
        документов/персональными номерами, префиксом номера телефона или
        `vendor_data`; значения, содержащие `@`, сопоставляются с префиксами
        адресов электронной почты; любой другой текст сопоставляется с именами
        (без учёта диакритических знаков) и `vendor_data`.


        Фиксированный лимит запросов на endpoint не установлен, однако
        опрашивайте список нечасто и полагайтесь на webhook для получения
        обновлений в реальном времени.
      operationId: get_v3_sessions
      parameters:
        - name: session_kind
          in: query
          required: false
          description: >-
            Какой тип сессий возвращать в списке: `user` (только KYC, по
            умолчанию), `business` (только KYB) или `all` (оба типа,
            объединённые - семантику объединённой пагинации см. в описании).
            Сопоставление нечувствительно к регистру (работает `BUSINESS`);
            любое значение, отличное от вариантов регистра
            `user`/`business`/`all`, возвращает `400`.
          schema:
            type: string
            enum:
              - user
              - business
              - all
            default: user
          example: all
        - name: limit
          in: query
          required: false
          description: >-
            Максимальное количество строк на странице (для каждого типа при
            `session_kind=all`). По умолчанию 50.
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000000
          example: 20
        - name: offset
          in: query
          required: false
          description: >-
            Количество строк, пропускаемых перед первой возвращаемой строкой. По
            умолчанию 0. Рекомендуется переходить по URL `next`/`previous` из
            ответа.
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
          example: 20
        - name: status
          in: query
          required: false
          description: >-
            Разделённый запятыми список статусов сессий для включения, например
            `Approved,In Review`. Значения чувствительны к регистру; см.
            [Статусы верификации](/ru/integration/verification-statuses).
            Неизвестные значения не дают совпадений.
          schema:
            type: string
          example: Approved,In Review
        - name: vendor_data
          in: query
          required: false
          description: >-
            Фильтр по точному совпадению с `vendor_data`, переданным при
            создании сессии (ваш собственный идентификатор
            пользователя/компании). Для частичных совпадений используйте
            `search`.
          schema:
            type: string
          example: your-user-id-123
        - name: search
          in: query
          required: false
          description: >-
            Полная отображаемая ссылка, например `S-0001` (пользователь) или
            `B-0001` (компания), соответствует только сессии с этим номером и
            типом; ведущие нули и регистр букв не влияют на сопоставление.
            Интеллектуальный поиск по свободному тексту. Полный UUID
            сопоставляется с `session_id`; числовой ввод сопоставляется с
            префиксом номера сессии, номерами документов/персональными номерами,
            префиксом телефона или `vendor_data`; ввод, содержащий `@`,
            сопоставляется с префиксами email; прочий текст сопоставляется с
            именами (без учёта диакритики) и `vendor_data`. Свободный текст,
            содержащий цифры, дополнительно сопоставляется с полями поиска
            документов/персональных номеров и префиксами номеров сессий.
          schema:
            type: string
          example: jane doe
        - name: workflow_id
          in: query
          required: false
          description: >-
            Разделённые запятыми UUID сценариев (их можно найти на странице
            Workflows в Console). Некорректные UUID в списке игнорируются; если
            валидных нет, результат будет пустым.
          schema:
            type: string
          example: 9f9b1234-aaaa-bbbb-cccc-1234567890ab
        - name: date_from
          in: query
          required: false
          description: >-
            Только сессии, созданные в эту дату (UTC) или позже, формат
            `YYYY-MM-DD`. Некорректный формат даты возвращает ошибку `400`.
          schema:
            type: string
            format: date
          example: '2026-06-01'
        - name: date_to
          in: query
          required: false
          description: >-
            Только сессии, созданные до этой даты (UTC) включительно, формат
            `YYYY-MM-DD`. Для строк KYC включается весь день; для строк KYB
            сравнение выполняется как `created_at <= date_to` (полночь), поэтому
            используйте дату следующего дня, чтобы включить полный день сессий
            KYB.
          schema:
            type: string
            format: date
          example: '2026-06-30'
        - name: tags
          in: query
          required: false
          schema:
            type: string
          description: >-
            Разделённый запятыми список идентификаторов тегов (`tags` вашего
            приложения). Возвращает сессии, содержащие любой из них.
            Идентификаторы, не являющиеся корректными UUID, игнорируются, и если
            ни один из них не валиден, список будет пустым.
        - name: decided_from
          in: query
          required: false
          schema:
            type: string
            format: date-time
          description: >-
            Дата и время в формате ISO 8601. Возвращает сессии, статус которых в
            последний раз изменился в этот момент или позже. Фильтрация
            выполняется по времени последнего изменения статуса, а не по времени
            создания.
        - name: decided_to
          in: query
          required: false
          schema:
            type: string
            format: date-time
          description: >-
            Дата и время в формате ISO 8601. Возвращает сессии, статус которых в
            последний раз изменился до этого момента. Объедините с
            `decided_from` для задания полуинтервала.
        - name: country
          in: query
          required: false
          description: >-
            Разделённый запятыми фильтр по странам. Для строк KYC: трёхбуквенные
            коды ISO 3166-1 alpha-3 страны выдачи документа, удостоверяющего
            личность (например, `ESP,USA`), которая может отличаться от
            гражданства. Для строк KYB: код страны компании из реестра.
          schema:
            type: string
          example: ESP,USA
        - name: document_type
          in: query
          required: false
          description: >-
            Разделённые запятыми коды типов документов, удостоверяющих личность,
            проверенных в сессии (только строки KYC): `P` (Паспорт), `ID`
            (Удостоверение личности), `DL` (Водительское удостоверение), `RP`
            (Вид на жительство), `SSC` (Карта социального страхования), `HIC`
            (Медицинская страховая карта), `WP` (Разрешение на работу), `TC`
            (Налоговая карта), `VISA`, `PSC` (Карта государственного
            обслуживания), `BC` (Свидетельство о рождении), `OTHER`. Обратите
            внимание, что поле ответа `document_type` содержит отображаемое имя,
            а не код.
          schema:
            type: string
          example: P,ID
        - name: document_name
          in: query
          required: false
          description: >-
            Точные названия документов; несколько названий можно передать через
            запятую, однако разделение по запятым выполняется только при наличии
            более одного разделителя ` - ` (отдельное название со встроенной
            запятой сопоставляется целиком). Названия указываются так, как они
            распознаются при верификации документов (лицевая или оборотная
            сторона), например `Spain - Id Card (2021)`. Только для строк KYC.
          schema:
            type: string
          example: Spain - Id Card (2021)
        - name: region
          in: query
          required: false
          description: >-
            Разделённые запятыми значения региона/штата документа (для
            документов, выдаваемых по регионам, таких как водительские
            удостоверения в США). Только для строк KYC.
          schema:
            type: string
          example: CA,TX
        - name: didit_internal_id
          in: query
          required: false
          description: >-
            Фильтр по внутреннему идентификатору пользователя в Didit (поле
            ответа `didit_internal_id`) для вывода всех сессий одного
            верифицированного пользователя. Должен быть корректным UUID;
            некорректные значения возвращают `400`. Только для записей KYC.
          schema:
            type: string
            format: uuid
          example: d9e78474-6c8d-4f2a-bb90-6f5c2f3a1147
        - name: session_type
          in: query
          required: false
          description: >-
            Разделённый запятыми список каналов создания сессий: `API`,
            `HOSTED`, `MIGRATED`. Специальное значение `ALL` (или отсутствие
            параметра) отключает фильтр. Только строки KYC.
          schema:
            type: string
          example: HOSTED
        - name: api_service
          in: query
          required: false
          description: >-
            Фильтр автономных сессий API по сервису. Недопустимые значения
            возвращают `400`. Только строки KYC.
          schema:
            type: string
            enum:
              - ID_VERIFICATION
              - FACE_MATCH
              - AGE_ESTIMATION
              - FACE_SEARCH
              - POA
              - AML
              - KYB_REGISTRY
              - PASSIVE_LIVENESS
              - DATABASE_VALIDATION
              - PHONE_VERIFICATION
              - EMAIL_VERIFICATION
          example: AML
        - name: screened_full_name
          in: query
          required: false
          description: >-
            Поиск по имени без учёта диакритических знаков среди данных,
            проверенных в рамках AML и проверки по базам данных. В сочетании с
            `api_service=AML` или `api_service=DATABASE_VALIDATION` поиск
            ограничивается проверенными данными соответствующей функции. Только
            строки KYC.
          schema:
            type: string
          example: Jane Doe
        - name: warning
          in: query
          required: false
          description: >-
            Разделённые запятыми коды риска предупреждений; возвращает сессии,
            для которых сработал любой из них (например, `POSSIBLE_FRAUD`). Коды
            риска перечислены для каждой функции в [документации по
            предупреждениям](/ru/integration/webhooks). Применяется к строкам
            KYC и, с кодами предупреждений для бизнеса, к строкам KYB.
          schema:
            type: string
          example: POSSIBLE_FRAUD
        - name: status_initialized_as_in_review
          in: query
          required: false
          description: >-
            Когда `true`, возвращает только сессии, решение по которым
            изначально перешло в статус `In Review` (полезно для аудита объема
            ручных проверок). Только строки KYC.
          schema:
            type: boolean
          example: true
        - name: is_kyc_to_be_reviewed
          in: query
          required: false
          description: >-
            `true` возвращает сессии, верификация документов которых помечена
            для ручной проверки; `false` возвращает сессии, где верификация
            документов явно не помечена. Опустите, чтобы отключить фильтр.
            Только для строк KYC.
          schema:
            type: boolean
          example: true
        - name: euuid
          in: query
          required: false
          description: >-
            Фильтр по euuid конечного пользователя (UUID, назначенный
            верифицируемому пользователю; используется диплинками Console).
            Должен быть валидным UUID; некорректные значения возвращают ошибку
            поля с кодом 400. Только строки KYC.
          schema:
            type: string
            format: uuid
          example: 0f8fad5b-d9cb-469f-a165-70867728950e
        - name: organization_name
          in: query
          required: false
          description: >-
            Разделённый запятыми список названий организаций. Предназначен для
            Console; при использовании API-ключа (уже привязанного к одному
            приложению) соответствует только названию вашей собственной
            организации.
          schema:
            type: string
          example: Acme Inc
      responses:
        '200':
          description: >-
            Список сессий с пагинацией. Элементы `results` представляют собой
            строки KYC, строки KYB или и то, и другое в зависимости от
            `session_kind`; различайте их с помощью поля `session_kind` каждой
            строки.
          content:
            application/json:
              schema:
                type: object
                required:
                  - count
                  - next
                  - previous
                  - results
                properties:
                  count:
                    type: integer
                    description: >-
                      Количество сессий, соответствующих фильтрам: точное
                      значение до 100 и с ограничением 100 сверх этого порога,
                      поэтому не используйте его в качестве общего итога.
                      Используйте `next`, чтобы узнать, есть ли ещё страницы.
                      Для `session_kind=all` это сумма обоих типов, каждый с
                      ограничением 100.
                    example: 2
                  next:
                    type: string
                    format: uri
                    nullable: true
                    description: >-
                      Абсолютный URL следующей страницы или `null` на последней
                      странице.
                    example: >-
                      https://verification.didit.me/v3/sessions/?limit=20&offset=20
                  previous:
                    type: string
                    format: uri
                    nullable: true
                    description: >-
                      Абсолютный URL предыдущей страницы или `null` на первой
                      странице.
                    example: null
                  results:
                    type: array
                    description: >-
                      Строки сессий, сначала новые. При `session_kind=all`
                      сначала идут строки KYC, затем строки KYB.
                    items:
                      oneOf:
                        - $ref: '#/components/schemas/UserSessionListItem'
                        - $ref: '#/components/schemas/BusinessSessionListItem'
                      discriminator:
                        propertyName: session_kind
                        mapping:
                          user: '#/components/schemas/UserSessionListItem'
                          business: '#/components/schemas/BusinessSessionListItem'
              examples:
                KYC sessions (default):
                  summary: session_kind=user - одна завершённая и одна неначатая сессия
                  value:
                    count: 2
                    next: null
                    previous: null
                    results:
                      - session_id: 5b3720ed-d429-42ef-b67f-37ea805f48ee
                        session_kind: user
                        session_number: 720
                        session_url: https://verify.didit.me/session/CuXoBYCYVO5Y
                        portrait_image: >-
                          https://<media-host>/portraits/5b3720ed.jpg?X-Amz-Expires=3600&X-Amz-Signature=...
                        document_type: Passport
                        full_name: Jane Marie Doe
                        country: ESP
                        status: Approved
                        vendor_data: your-user-id-123
                        didit_internal_id: d9e78474-6c8d-4f2a-bb90-6f5c2f3a1147
                        created_at: '2026-06-09T12:26:54.328364Z'
                        features:
                          - feature: ID_VERIFICATION
                            status: Approved
                          - feature: LIVENESS
                            status: Approved
                          - feature: FACE_MATCH
                            status: Approved
                          - feature: AML
                            status: Approved
                          - feature: IP_ANALYSIS
                            status: Approved
                        phone_number:
                          number: '+14155552671'
                          is_verified: true
                        email_address:
                          email: jane@example.com
                          is_verified: true
                        additional_details:
                          aml:
                            total_hits: 0
                            entity_type: person
                            is_adverse_media_fetched: false
                          liveness:
                            method: PASSIVE
                            score: 0.98
                          face_match:
                            score: 0.95
                      - session_id: 038ad62f-5ebd-46c2-afe9-4b2956bf687f
                        session_kind: user
                        session_number: 719
                        session_url: https://verify.didit.me/session/7RGKiO6ioGH6
                        portrait_image: null
                        document_type: null
                        full_name: null
                        country: null
                        status: Not Started
                        vendor_data: your-user-id-124
                        didit_internal_id: eb4e679d-ca4b-461f-9685-687bac29ebdb
                        created_at: '2026-06-09T08:02:23.343053Z'
                        features:
                          - feature: ID_VERIFICATION
                            status: Not Finished
                          - feature: LIVENESS
                            status: Not Finished
                          - feature: FACE_MATCH
                            status: Not Finished
                          - feature: AML
                            status: Not Finished
                          - feature: IP_ANALYSIS
                            status: Not Finished
                        phone_number: null
                        email_address: null
                        additional_details: null
                Mixed KYC + KYB (session_kind=all):
                  summary: session_kind=all - строка KYC, за которой следует строка KYB
                  value:
                    count: 2
                    next: null
                    previous: null
                    results:
                      - session_id: 5b3720ed-d429-42ef-b67f-37ea805f48ee
                        session_kind: user
                        session_number: 720
                        session_url: https://verify.didit.me/session/CuXoBYCYVO5Y
                        portrait_image: null
                        document_type: Identity Card
                        full_name: Jane Marie Doe
                        country: ESP
                        status: In Review
                        vendor_data: your-user-id-123
                        didit_internal_id: d9e78474-6c8d-4f2a-bb90-6f5c2f3a1147
                        created_at: '2026-06-09T12:26:54.328364Z'
                        features:
                          - feature: ID_VERIFICATION
                            status: In Review
                          - feature: LIVENESS
                            status: Approved
                        phone_number: null
                        email_address: null
                        additional_details:
                          liveness:
                            method: PASSIVE
                            score: 0.98
                      - session_id: 8a1f63c2-1b9e-4f3a-9c41-2f6a1f0b7d52
                        session_kind: business
                        session_number: 42
                        status: Approved
                        vendor_data: your-company-id-77
                        created_at: '2026-06-08T09:14:02.118450Z'
                        workflow_id: 9f9b1234-aaaa-bbbb-cccc-1234567890ab
                        workflow_type: kyb
                        workflow_label: Standard KYB
                        company_name: Acme Holdings S.L.
                        registration_number: B12345678
                        country: ES
        '301':
          description: >-
            Перенаправление на канонический URL с завершающим слешем.
            Возвращается, когда путь запроса равен `/v3/sessions` (без
            завершающего слеша); заголовок `Location` указывает на
            `/v3/sessions/` с сохранением строки запроса. Клиенты GET обычно
            следуют ему автоматически.
        '400':
          description: >-
            Недопустимый параметр запроса. Тело ответа представляет собой объект
            с ключом проблемного параметра.
          content:
            application/json:
              examples:
                Invalid session_kind:
                  summary: session_kind не входит в список user/business/all
                  value:
                    session_kind: Must be "user", "business", or "all".
                Invalid date:
                  summary: Некорректный формат date_from/date_to
                  value:
                    date_from:
                      - Enter a valid date.
                Invalid didit_internal_id:
                  summary: didit_internal_id не является UUID
                  value:
                    didit_internal_id:
                      - Enter a valid UUID.
                Invalid api_service:
                  summary: api_service отсутствует среди допустимых вариантов
                  value:
                    api_service:
                      - >-
                        Select a valid choice. FOO is not one of the available
                        choices.
        '403':
          description: >-
            Отсутствующий, некорректный или отозванный API-ключ. При отсутствии
            ключа возвращается `403`; при неверном, отозванном или истекшем
            ключе возвращается `401`.


            **Удаленное приложение:** в течение нескольких минут после удаления
            приложения запрос, выполненный с одним из его API-ключей, может
            вернуть ответ `{"detail": "This application was deleted.", "code":
            "application_deleted"}`. Не повторяйте попытку: приложение и его
            API-ключи больше не существуют. По истечении нескольких минут ключ
            отклоняется, как и любой другой недействительный ключ.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    example: You do not have permission to perform this action.
                  code:
                    type: string
                    description: >-
                      Машиночитаемая причина, присутствует только при некоторых
                      ошибках. `application_deleted`: API-ключ принадлежит
                      приложению, которое было удалено.
                    example: application_deleted
                required:
                  - detail
              examples:
                Forbidden:
                  summary: Отсутствует или недействителен x-api-key
                  value:
                    detail: You do not have permission to perform this action.
                ApplicationDeleted:
                  summary: API-ключ удалённого приложения
                  value:
                    detail: This application was deleted.
                    code: application_deleted
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -s
            'https://verification.didit.me/v3/sessions/?status=Approved,In%20Review&date_from=2026-06-01&limit=20'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            for item in client.sessions.list():
                print(item)
        - lang: javascript
          label: Node.js
          source: |-
            import Didit from "@didit-protocol/sdk-node";

            // Reads DIDIT_API_KEY.
            const didit = new Didit();

            for await (const item of didit.sessions.list()) {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.Sessions.ListAutoPaging(ctx, didit.SessionsListParams{})\nfor iter.Next() {\n\tfmt.Printf(\"%+v\\n\", iter.Current())\n}\nif err := iter.Err(); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;

            // Reads DIDIT_API_KEY.
            Didit client = new Didit();

            for (var item : client.sessions().list()) {
                System.out.println(item);
            }
        - lang: php
          label: PHP
          source: |-
            <?php

            require 'vendor/autoload.php';

            use Didit\DiditClient;

            // Reads DIDIT_API_KEY.
            $didit = new DiditClient();

            foreach ($didit->sessions->list() as $item) {
                print_r($item);
            }
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY.
            didit = Didit::Client.new

            didit.sessions.list.auto_paging_each do |item|
              puts item.to_h
            end
        - lang: csharp
          label: .NET
          source: |-
            using System;
            using System.Text.Json;
            using Didit;

            // Reads DIDIT_API_KEY.
            using var client = new DiditClient();

            await foreach (var item in await client.Sessions.ListAsync())
            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    UserSessionListItem:
      title: 'KYC session row (session_kind: user)'
      type: object
      description: >-
        Сводная строка для сессии Проверки пользователей (KYC). Поля личности
        (`full_name`, `country`, `document_type`, `portrait_image`, контактные
        поля) заполняются по мере прохождения пользователем шагов верификации и
        имеют значение `null`, пока соответствующий шаг не завершён. Поля,
        ограниченные настройкой атрибутов ответа сценария, также возвращаются
        как `null`.
      required:
        - session_id
        - session_kind
        - session_number
        - session_url
        - portrait_image
        - document_type
        - full_name
        - country
        - status
        - vendor_data
        - didit_internal_id
        - created_at
        - features
        - phone_number
        - email_address
        - additional_details
      properties:
        session_id:
          type: string
          format: uuid
          description: >-
            Уникальный идентификатор сессии верификации. Используйте его с `GET
            /v3/session/{sessionId}/decision/`, чтобы получить полный payload
            решения.
          example: 5b3720ed-d429-42ef-b67f-37ea805f48ee
        session_kind:
          type: string
          enum:
            - user
          description: >-
            Дискриминатор строки. Всегда `"user"` для строк KYC; строки
            Верификации бизнеса (KYB) содержат `"business"` и имеют другую
            структуру.
          example: user
        session_number:
          type: integer
          description: >-
            Понятный порядковый номер сессии внутри вашего приложения. Также
            сопоставляется с параметром `search`.
          example: 720
        session_url:
          type: string
          nullable: true
          description: >-
            Размещённый URL верификации, который открывает конечный пользователь
            для прохождения сценария. `null`, если у сессии нет размещённого
            URL.
          example: https://verify.didit.me/session/CuXoBYCYVO5Y
        portrait_image:
          type: string
          nullable: true
          description: >-
            Временный (предварительно подписанный) URL наилучшего доступного
            фото лица: фото с NFC-чипа при наличии, иначе фото из документа,
            удостоверяющего личность, иначе эталонное изображение проверки
            живости. `null`, пока ни одно из них не появится. Скачайте
            оперативно; срок действия ссылки ограничен.
          example: >-
            https://<media-host>/portraits/5b3720ed.jpg?X-Amz-Expires=3600&X-Amz-Signature=...
        document_type:
          type: string
          nullable: true
          enum:
            - Passport
            - Identity Card
            - Driver's License
            - Residence Permit
            - Health Insurance Card
            - Tax Card
          description: >-
            Понятный человеку тип проверенного документа, удостоверяющего
            личность. Значение `null` до завершения верификации документа, а
            также `null` после завершения, если проверенный код не имеет
            сопоставления для отображения (`SSC`, `WP`, `VISA`, `PSC`, `BC`,
            `OTHER`). Примечание: параметр запроса `document_type` фильтрует по
            коротким кодам (`P`, `ID`, `DL`, `RP`, ...), а не по этим
            отображаемым значениям.
          example: Passport
        full_name:
          type: string
          nullable: true
          description: >-
            Наилучшее доступное полное имя для сессии, определяемое в следующем
            порядке: OCR документа, удостоверяющего личность, данные
            AML-скрининга, данные проверки по базам данных, документ
            подтверждения адреса, затем ожидаемые данные, переданные при
            создании сессии. Значение `null`, если данные пока недоступны.
          example: Jane Marie Doe
        country:
          type: string
          nullable: true
          description: >-
            Код страны по стандарту ISO 3166-1 alpha-3, связанный с сессией,
            определяемый по порядку: государство выдачи документа,
            удостоверяющего личность; государство выдачи по проверке баз данных;
            государство выдачи документа, подтверждающего адрес; ожидаемые
            данные; затем страна подтвержденного телефона. Может отличаться от
            гражданства.
          example: ESP
        status:
          type: string
          enum:
            - Not Started
            - In Progress
            - Approved
            - Declined
            - In Review
            - Expired
            - Abandoned
            - Kyc Expired
            - Resubmitted
            - Awaiting User
          description: >-
            Общий статус сессии. О жизненном цикле см. на странице [Статусы
            верификации](/ru/integration/verification-statuses).
          example: Approved
        vendor_data:
          type: string
          nullable: true
          description: >-
            Ваш собственный идентификатор конечного пользователя, возвращаемый в
            точности так, как был отправлен при создании сессии.
          example: your-user-id-123
        didit_internal_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            Внутренний идентификатор Didit для профиля верифицированного
            пользователя, привязанного к этой сессии. Постоянен между
            несколькими сессиями одного и того же пользователя; доступна
            фильтрация через query-параметр `didit_internal_id`.
          example: d9e78474-6c8d-4f2a-bb90-6f5c2f3a1147
        created_at:
          type: string
          format: date-time
          description: Временная метка UTC создания сессии.
          example: '2026-06-09T12:26:54.328364Z'
        features:
          type: array
          description: >-
            Статус по функциям для каждого шага верификации, настроенного в
            сценарии сессии, в порядке выполнения сценария.
          items:
            type: object
            required:
              - feature
              - status
            properties:
              feature:
                type: string
                enum:
                  - ID_VERIFICATION
                  - NFC
                  - LIVENESS
                  - FACE_MATCH
                  - POA
                  - QUESTIONNAIRE
                  - EMAIL_VERIFICATION
                  - PHONE
                  - AML
                  - IP_ANALYSIS
                  - AGE_ESTIMATION
                  - DATABASE_VALIDATION
                  - GEOLOCATION
                description: Идентификатор функции верификации.
                example: ID_VERIFICATION
              status:
                type: string
                enum:
                  - Not Finished
                  - Approved
                  - Declined
                  - In Review
                  - Resub Requested
                description: >-
                  Статус этой функции. Имеет значение `Not Finished` до
                  завершения шага.
                example: Approved
        phone_number:
          type: object
          nullable: true
          description: >-
            Телефон, связанный с сессией: подтвержденный телефон, если
            выполнялась проверка телефона, иначе контактный телефон, указанный
            при создании сессии. `null`, если ни один из них не предоставлен.
          required:
            - number
            - is_verified
          properties:
            number:
              type: string
              description: Номер телефона в формате E.164.
              example: '+14155552671'
            is_verified:
              type: boolean
              description: >-
                `true` только в том случае, если функция проверки телефона
                одобрила этот номер.
              example: true
        email_address:
          type: object
          nullable: true
          description: >-
            Электронная почта, связанная с сессией: подтверждённый адрес, если
            выполнялась проверка электронной почты, либо контактный адрес,
            указанный при создании сессии. `null`, если ничего из этого нет.
          required:
            - email
            - is_verified
          properties:
            email:
              type: string
              format: email
              example: jane@example.com
            is_verified:
              type: boolean
              description: >-
                `true` только в том случае, если функция проверки электронной
                почты одобрила этот адрес.
              example: true
        additional_details:
          type: object
          nullable: true
          description: >-
            Компактные дополнительные данные по каждой функции. В качестве
            ключей появляются только функции, вернувшие данные; `null`, если ни
            одна функция не предоставила дополнительных данных. Поля,
            исключённые конфигурацией response-attributes сценария, опускаются.
          properties:
            aml:
              type: object
              description: Присутствует, если выполнялся AML-скрининг.
              properties:
                total_hits:
                  type: integer
                  description: Количество совпадений при AML-скрининге.
                  example: 0
                entity_type:
                  type: string
                  description: Тип проверяемой сущности.
                  example: person
                is_adverse_media_fetched:
                  type: boolean
                  example: false
                screened_data:
                  type: object
                  description: >-
                    Подмножество данных, прошедших скрининг. Включаются только
                    непустые ключи.
                  properties:
                    nationality:
                      type: string
                      example: ESP
                    document_number:
                      type: string
                      example: XX1234567
                    date_of_birth:
                      type: string
                      example: '1990-05-21'
            database_validation:
              type: object
              description: Присутствует, если выполнялась проверка по базам данных.
              properties:
                validation_type:
                  type: string
                  example: DOCUMENT_VALIDATION
                match_type:
                  type: string
                  example: FULL_MATCH
                identification_number:
                  type: string
                  description: >-
                    Налоговый, личный номер или номер документа, который был
                    проверен (первый доступный).
                  example: 12345678Z
            poa:
              type: object
              description: Присутствует, если выполнялось подтверждение адреса.
              properties:
                document_type:
                  type: string
                  example: UTILITY_BILL
                issuer:
                  type: string
                  example: Energy Co
                address:
                  type: string
                  example: Calle Mayor 1, 28013 Madrid
                name_on_document:
                  type: string
                  example: Jane Marie Doe
            liveness:
              type: object
              description: Присутствует, если выполнялась проверка живости.
              properties:
                method:
                  type: string
                  example: PASSIVE
                score:
                  type: number
                  description: >-
                    Оценка уверенности проверки живости, округлённая до 2 знаков
                    после запятой.
                  example: 0.98
            face_match:
              type: object
              description: Присутствует, если выполнялось сравнение лиц.
              properties:
                score:
                  type: number
                  description: >-
                    Оценка схожести сравнения лиц, округленная до 2 знаков после
                    запятой.
                  example: 0.95
                source_image:
                  type: string
                  description: >-
                    Временный (предварительно подписанный) URL исходного
                    изображения лица.
                  example: https://<media-host>/faces/source.jpg?X-Amz-Expires=3600&...
                target_image:
                  type: string
                  description: >-
                    Временный (предварительно подписанный) URL целевого
                    изображения лица.
                  example: https://<media-host>/faces/target.jpg?X-Amz-Expires=3600&...
            phone_verification:
              type: object
              description: Присутствует, если выполнялась проверка телефона.
              properties:
                country_code:
                  type: string
                  description: Код страны номера телефона по стандарту ISO 3166-1 alpha-2.
                  example: US
                is_temporary:
                  type: boolean
                  example: false
                is_ported:
                  type: boolean
                  example: false
                is_blocked:
                  type: boolean
                  example: false
            email_verification:
              type: object
              description: Присутствует, если выполнялась проверка электронной почты.
              properties:
                is_breached:
                  type: boolean
                  example: false
                is_disposable:
                  type: boolean
                  example: false
                is_undeliverable:
                  type: boolean
                  example: false
                is_blocklisted:
                  type: boolean
                  example: false
        assignee:
          type: object
          nullable: true
          description: >-
            Проверяющий в Консоли, которому назначена сессия, или `null`, если
            она никому не назначена.
          properties:
            email:
              type: string
              format: email
            assigned_at:
              type: string
              format: date-time
              nullable: true
        waiting_since:
          type: string
          format: date-time
          nullable: true
          description: >-
            Время, когда сессия перешла в ожидание проверки. `null`, если сессия
            не находится в статусе `In Review`.
        sla_due_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Срок завершения проверки в соответствии с дедлайном, установленным
            для вашего приложения в Console. `null`, если сессия не находится в
            статусе `In Review` или дедлайн не задан.
        top_warnings:
          type: array
          description: >-
            До нескольких наиболее важных предупреждений сессии для быстрого
            предварительного анализа. Полный список приведён в решении.
          items:
            type: object
            properties:
              risk:
                type: string
                description: Код предупреждения, например `FACE_MATCH_LOW_SIMILARITY`.
              feature:
                type: string
                description: Функция, вызвавшая его.
              log_type:
                type: string
                nullable: true
                description: '`error` или `warning`; `null` для устаревшей записи.'
              short_description:
                type: string
        warnings_count:
          type: integer
          description: Количество предупреждений по сессии.
    BusinessSessionListItem:
      title: 'KYB session row (session_kind: business)'
      type: object
      description: >-
        Сводная строка для сессии Верификации бизнеса (KYB). Возвращается,
        только если `session_kind` имеет значение `business` или `all`.
      required:
        - session_id
        - session_kind
        - session_number
        - status
        - vendor_data
        - created_at
        - workflow_id
        - workflow_type
        - workflow_label
        - company_name
        - registration_number
        - country
      properties:
        session_id:
          type: string
          format: uuid
          description: Уникальный идентификатор сессии верификации бизнеса.
          example: 8a1f63c2-1b9e-4f3a-9c41-2f6a1f0b7d52
        session_kind:
          type: string
          enum:
            - business
          description: Дискриминатор строки. Всегда `"business"` для строк KYB.
          example: business
        session_number:
          type: integer
          description: >-
            Понятный порядковый номер бизнес-сессии внутри вашего приложения.
            Нумеруется независимо от KYC-сессий.
          example: 42
        status:
          type: string
          enum:
            - Not Started
            - In Progress
            - Approved
            - Declined
            - In Review
            - Expired
            - Abandoned
            - Kyc Expired
            - Resubmitted
            - Awaiting User
          description: >-
            Общий статус сессии. См. страницу [Статусы
            верификации](/ru/integration/verification-statuses).
          example: Approved
        vendor_data:
          type: string
          nullable: true
          description: >-
            Ваш собственный идентификатор компании, возвращаемый в точности так,
            как был отправлен при создании сессии.
          example: your-company-id-77
        created_at:
          type: string
          format: date-time
          description: Временная метка UTC создания сессии.
          example: '2026-06-08T09:14:02.118450Z'
        workflow_id:
          type: string
          format: uuid
          nullable: true
          description: Идентификатор сценария, с которым была создана эта сессия.
          example: 9f9b1234-aaaa-bbbb-cccc-1234567890ab
        workflow_type:
          type: string
          nullable: true
          description: Тип сценария. `kyb` для сценариев верификации бизнеса.
          example: kyb
        workflow_label:
          type: string
          nullable: true
          description: Отображаемое имя сценария.
          example: Standard KYB
        company_name:
          type: string
          nullable: true
          description: >-
            Название верифицируемой компании из записи о компании в реестре,
            связанной с сессией. `null`, пока компания не выбрана.
          example: Acme Holdings S.L.
        registration_number:
          type: string
          nullable: true
          description: >-
            Регистрационный номер компании из реестра компаний, привязанного к
            сессии.
          example: B12345678
        country:
          type: string
          nullable: true
          description: Код страны компании из реестра, привязанной к сессии.
          example: ES
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API-ключ вашего приложения из раздела «Разработчикам» -> «API-ключи» в
        Business Console. Основной ключ имеет полный доступ. Именованный ключ
        может иметь ограниченную область действия: без доступа, чтение или
        запись для каждого ресурса, ограничение определенными сценариями или
        одобренными сессиями, списком IP-адресов и сроком действия. 401
        означает, что ключ неверен, отозван или его срок действия истек; 403
        означает, что ключ не был передан, у ключа нет доступа к этому ресурсу
        или действию, либо запрос поступил с адреса вне его списка IP-адресов;
        404 на маршруте сессии означает, что сессия не входит в сценарии или
        статусы ключа. Ключ без доступа к медиа получает URL изображений, видео
        и PDF как null, а ключ без прав на запись сессий получает ссылки на
        сессии и токены как null. См. https://docs.didit.me/console/api-keys.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.