> ## 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.

# Запись VASP по ID: API Travel Rule

> Получите один VASP из каталога Travel Rule или сети Didit по ID вместе с маршрутами, которые ведут от вашего приложения к нему.

Промпт для API получения записи каталога VASP
Скопировать промпт в буфер обмена

<pre>
  \`Read one VASP of the Travel Rule directory by the id GET /v3/travel-rule/vasps/ returned.

  Endpoint:
  GET [https://verification.didit.me/v3/travel-rule/vasps/\{vasp\_id}/](https://verification.didit.me/v3/travel-rule/vasps/\{vasp_id}/)

  Authentication:
  Use the x-api-key header with my Didit API key.

  The response is the same object as one row of the search: kind, name, lei, jurisdiction, domains, reachable, aliases, networks, routes, umbrella, entities, contacts and the due-diligence fields. Read routes\[] for what my application can use today: an unavailable network route carries its reason (no\_membership or network\_switched\_off). On a sandbox application every route is unavailable with reason sandbox\_application, because sandbox sends only to the Didit Test VASP.

  Due diligence on the same id:

  * dd\_score (0-100, higher is safer), risk\_level, dd\_score\_breakdown, responsiveness and essential\_checks - the shared assessment. Didit network members are not scored.
  * decision, entity\_screening, questionnaires - my application's own records, private to it. Manage them with GET/PUT/DELETE /v3/travel-rule/vasps/{vasp_id}/decision/, GET/POST /v3/travel-rule/vasps/{vasp_id}/screening/ and GET/POST /v3/travel-rule/vasps/{vasp_id}/questionnaires/.
  * My Travel Rule transfers with this VASP: GET /v3/travel-rule/transfers/?counterparty={vasp_id}.

  Failure modes:

  * 404 - no directory entry or listed Didit network member has this id.

  Full guide: /transaction-monitoring/travel-rule#directory.\`
</pre>

Вставьте в


## OpenAPI

````yaml ru/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/
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/travel-rule/vasps/{vasp_id}/:
    get:
      tags:
        - Travel Rule
      summary: Получить запись каталога VASP
      description: >-
        Одна запись справочника или участник сети Didit по идентификатору,
        возвращённому поиском, с теми же полями и маршрутами, доступными вашему
        приложению.
      operationId: getTravelRuleVasp
      parameters:
        - name: vasp_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: id строки из GET /v3/travel-rule/vasps/.
      responses:
        '200':
          description: Запись.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VaspDirectoryEntry'
        '404':
          description: >-
            Ни одна запись или зарегистрированный участник сети Didit не имеет
            такого id.
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
              example:
                detail: No directory entry has this id.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            https://verification.didit.me/v3/travel-rule/vasps/{vasp_id}/ \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.travel_rule.retrieve_vasp(
                "11111111-2222-3333-4444-555555555555",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY.

            const didit = new Didit();


            const result = await
            didit.travelRule.retrieveVasp("11111111-2222-3333-4444-555555555555");

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.TravelRule.RetrieveVASP(ctx, \"11111111-2222-3333-4444-555555555555\")\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.travelRule().retrieveVasp("11111111-2222-3333-4444-555555555555");

            System.out.println(result);
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY.

            $didit = new DiditClient();


            $result =
            $didit->travelRule->retrieveVasp('11111111-2222-3333-4444-555555555555');

            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: >-
            require "didit"


            # Reads DIDIT_API_KEY.

            didit = Didit::Client.new


            result =
            didit.travel_rule.retrieve_vasp("11111111-2222-3333-4444-555555555555")

            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            var result = await
            client.TravelRule.RetrieveVaspAsync("11111111-2222-3333-4444-555555555555");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    VaspDirectoryEntry:
      type: object
      description: >-
        VASP из справочника или участник сети Didit с маршрутами, доступными
        вашему приложению к нему. Клиент является участником сети Didit только
        тогда, когда его приложение находится в продакшене, Travel Rule включён,
        его профиль доступен для поиска, указаны юридическое наименование и
        подтверждённый комплаенс-email, а Didit не пометил приложение как
        тестовое, демонстрационное или внутреннее. Каждая строка также содержит
        общую оценку комплексной проверки (dd_score, risk_level, responsiveness,
        essential_checks) и собственные решение, скрининг сущностей и анкеты
        вашего приложения, которые не видит ни один другой клиент.
      properties:
        id:
          type: string
          format: uuid
          description: Идентификатор записи для GET /v3/travel-rule/vasps/{vasp_id}/.
        kind:
          type: string
          enum:
            - directory
            - didit
          description: >-
            directory для записи из общего каталога; didit для участника сети
            Didit.
        name:
          type: string
        lei:
          type: string
        jurisdiction:
          type: string
          description: >-
            Код страны ISO 3166 в том виде, в котором его предоставляет
            источник.
        domains:
          type: array
          items:
            type: string
          description: Веб-домены VASP. Всегда пусто для участников сети Didit.
        reachable:
          type: boolean
          description: >-
            Есть ли у вашего приложения доступный маршрут к этому VASP или к
            одному из его юридических лиц для бренда. Всегда true для участника
            сети Didit, за исключением приложения в песочнице, где каждая строка
            равна false.
        aliases:
          type: array
          items:
            type: object
            properties:
              name:
                type: string
              kind:
                type: string
                enum:
                  - trading_name
                  - other_legal_name
                  - network_name
                  - attribution
                  - merged
                  - staff
                description: >-
                  trading_name, other_legal_name (из глобального реестра LEI),
                  network_name (название в сети Travel Rule), attribution
                  (название организации, присвоенное кошелькам VASP
                  блокчейн-аналитикой), merged (название дублирующей записи,
                  объединённой с этой) или staff.
          description: Другие наименования, по которым можно найти VASP.
        networks:
          type: array
          items:
            type: object
            description: >-
              Текущая запись этого VASP в справочнике участников сети Travel
              Rule. Запись TRISA указывает, кем является VASP в TRISA; у Didit
              нет транспорта TRISA, поэтому он никогда не является маршрутом.
            properties:
              network:
                type: string
                enum:
                  - GTR
                  - TRUST
                  - VERIFYVASP
                  - SYGNA
                  - TRISA
              code:
                type: string
                description: Идентификатор VASP в этой сети.
              listed_name:
                type: string
                description: Наименование, под которым сеть указывает VASP.
              country:
                type: string
                description: Страна, указанная сетью, если она предоставлена.
              verified_at:
                type: string
                format: date-time
                nullable: true
                description: >-
                  Когда сотрудники Didit верифицировали запись. Null для
                  записей, прочитанных из публичного справочника.
              last_seen_at:
                type: string
                format: date-time
                nullable: true
                description: >-
                  Время последнего отображения записи источником. Запись,
                  которую источник не отображает в течение трёх недель,
                  удаляется.
              source:
                type: string
                enum:
                  - trisa_directory
                  - staff
                description: 'Источник записи: публичный каталог TRISA или сотрудники Didit.'
        routes:
          type: array
          items:
            type: object
            description: >-
              Один из способов передачи данных Travel Rule этому VASP вашим
              приложением в порядке попыток отправки. Для сетевого маршрута
              требуется членство в этой сети: ваше собственное (подключённое в
              Marketplace) или Didit, когда Didit его получит. Без него маршрут
              отображается как недоступный с указанием причины и никогда не
              предлагается как способ связаться с VASP.
            properties:
              rail:
                type: string
                enum:
                  - INTERNAL
                  - TRP
                  - GTR
                  - TRUST
                  - VERIFYVASP
                  - SYGNA
                  - EMAIL
              status:
                type: string
                enum:
                  - available
                  - unavailable
              reason:
                type: string
                enum:
                  - ''
                  - no_membership
                  - network_switched_off
                  - sandbox_application
                description: >-
                  Причина, по которой недоступный маршрут не может быть
                  использован: no_membership (ни у вас, ни у Didit нет участия в
                  этой сети), network_switched_off (вы отключили эту сеть в
                  настройках) или sandbox_application (приложение в песочнице
                  отправляет данные только в Didit Test VASP, поэтому маршруты
                  для него недоступны). Пусто, если маршрут доступен.
              via:
                type: string
                enum:
                  - ''
                  - own_membership
                  - didit_membership
                  - directory
                  - contact
                  - didit_network
                description: >-
                  Способ достижения доступного маршрута: own_membership или
                  didit_membership для сетевого канала, directory для
                  проверенного каталогом TRP endpoint, contact для EMAIL-канала,
                  didit_network для участника сети Didit. Пусто, если маршрут
                  недоступен.
        umbrella:
          type: object
          nullable: true
          description: >-
            Бренд, регулируемым субъектом которого является эта запись. Null,
            если она не входит в его состав.
          properties:
            id:
              type: string
              format: uuid
            name:
              type: string
        entities:
          type: array
          items:
            type: object
            description: >-
              Регулируемая организация бренда: юридическое лицо, принимающее
              перевод.
            properties:
              id:
                type: string
                format: uuid
              name:
                type: string
              lei:
                type: string
              jurisdiction:
                type: string
              reachable:
                type: boolean
                description: Есть ли у вашего приложения доступный маршрут к нему.
          description: >-
            Для бренда: регулируемые организации, принимающие его переводы.
            Перевод с указанием бренда направляется доступной организации в
            указанной в нём юрисдикции
            (beneficiary_data.counterparty_vasp_jurisdiction), иначе
            организации, связанной с кошельком назначения атрибуцией
            блокчейн-аналитики, иначе единственной доступной организации, если
            юрисдикция не указана. Выбор между двумя одинаково подходящими
            организациями никогда не делается наугад.
        contacts:
          type: array
          items:
            type: object
            description: >-
              Комплаенс-контакт, на который может отправлять сообщения транспорт
              EMAIL.
            properties:
              id:
                type: string
                format: uuid
              email:
                type: string
                format: email
              name:
                type: string
              source:
                type: string
                enum:
                  - staff
                  - application
                  - learned
                description: >-
                  staff: курируется Didit; application: добавлен вашим
                  приложением; learned: адрес, ответивший на запрос Travel Rule
                  по ссылке для ответа.
              scope:
                type: string
                enum:
                  - platform
                  - application
                description: >-
                  platform: контакты используются для переводов каждого клиента
                  Didit; application: контакты приватны для вашего приложения, и
                  оно видит только свои.
              verified_at:
                type: string
                format: date-time
                nullable: true
                description: >-
                  Когда кто-либо по этому адресу ответил на запрос. Null, если
                  ответа ещё не было.
          description: Контакты платформы для этого VASP и контакты вашего приложения.
        dd_status:
          type: string
          enum:
            - NOT_STARTED
            - IN_PROGRESS
            - COMPLETED
            - REJECTED
          description: >-
            Статус верификации записи в Didit, оцениваемый верификационным
            компонентом dd_score. Всегда COMPLETED для участника сети Didit.
        dd_score:
          type: integer
          nullable: true
          minimum: 0
          maximum: 100
          description: >-
            Общая оценка комплексной проверки благонадёжности записи каталога,
            от 0 до 100, где более высокое значение означает большую
            безопасность (см. dd_score_semantic): сумма баллов в
            dd_score_breakdown. Null для участника сети Didit, который не
            оценивается. Для записи, которая ещё не была оценена (dd_assessed_at
            имеет значение null), отображается 0 с пустым risk_level, поэтому
            ориентируйтесь на risk_level, а не на исходную оценку.
        reachable_rails:
          type: array
          items:
            type: string
            enum:
              - INTERNAL
              - TRP
              - GTR
              - TRUST
              - VERIFYVASP
              - SYGNA
              - EMAIL
          description: >-
            Каналы, зафиксированные в записи. Прочитайте маршруты, чтобы узнать,
            что ваше приложение может использовать на сегодняшний день.
        is_didit_customer:
          type: boolean
          description: >-
            true для участника сети Didit (для них dd_status всегда равен
            COMPLETED, dd_score равен null, а risk_level пуст) и для записи
            справочника, привязанной к клиенту Didit.
        dd_score_breakdown:
          type: object
          description: >-
            Один объект на каждый компонент dd_score. Компоненты, их вес (макс.)
            и коды причин: jurisdiction, 25 (jurisdiction_not_high_risk,
            jurisdiction_high_risk, jurisdiction_unknown); verification, 15
            (dd_status_completed, dd_status_in_progress, dd_status_not_started,
            dd_status_rejected); protocol, 15 (native_rail, email_only,
            no_rail); lei, 10 (lei_valid, lei_missing); history, 10 (history,
            no_history); essentials, 15 (essential_checks, no_essential_checks);
            responsiveness, 10 (responsive, unresponsive,
            responsiveness_unknown). Пусто для участника сети Didit.
          additionalProperties:
            type: object
            properties:
              points:
                type: number
                description: >-
                  Баллы, начисленные за этот компонент, с округлением до одного
                  десятичного знака.
              max:
                type: integer
                description: 'Вес компонента: баллы, которые он вносит в лучшем случае.'
              reason:
                type: string
                description: Машиночитаемый код вердикта компонента.
              detail:
                type: string
                description: Однострочное объяснение на английском языке.
        dd_assessed_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Когда в последний раз рассчитывались dd_score, risk_level и
            responsiveness: после того, как обмен с этой записью завершается,
            оканчивается, истекает, не совпадает или отклоняется, когда Didit
            обновляет или систематизирует запись, а также при еженедельном
            обновлении каталога. Null для участника сети Didit.
        dd_score_semantic:
          type: string
          enum:
            - higher_is_safer
          description: 'Направление интерпретации dd_score: всегда higher_is_safer.'
        risk_level:
          type: string
          enum:
            - LOW
            - MEDIUM
            - HIGH
            - ''
          description: >-
            Диапазон, в который попадает dd_score: LOW (70 или выше), MEDIUM (от
            40 до 69) или HIGH (ниже 40). Не заполнено для участников сети Didit
            и записей, которые ещё не были оценены. Фильтруйте по нему с помощью
            risk. Ваша собственная отметка в скрининге никогда не меняет это
            общее значение: вместо этого она устанавливает
            counterparty_risk_level в HIGH в ваших правилах.
        responsiveness:
          type: object
          description: >-
            Отвечает ли VASP на запросы Travel Rule: доля запросов,
            инициированных клиентами Didit в его адрес за последние 90 дней, на
            которые он ответил. Учитываются только запросы, отправленные через
            сеть или протокольный канал, либо по электронной почте на общий
            адрес (комплаенс-адрес записи или контакт платформы); запрос,
            отправленный на адрес, введённый клиентом вручную, или личному
            контакту клиента, не учитывается никогда. Запрос с истекшим сроком
            действия считается оставшимся без ответа; завершённый обмен данными,
            отказ или несоответствие данных считаются ответом; отменённый запрос
            или недоступный канал не считаются ни тем, ни другим. Всегда UNKNOWN
            с нулевыми счётчиками для участника сети Didit.
          properties:
            status:
              type: string
              enum:
                - RESPONSIVE
                - UNRESPONSIVE
                - UNKNOWN
              description: >-
                UNKNOWN при менее чем 5 запросах, по которым принято решение, за
                период; UNRESPONSIVE, если ответ был дан менее чем на 10
                процентов из них; в остальных случаях RESPONSIVE.
            answered:
              type: integer
              description: Решённые запросы за период, на которые VASP ответил.
            total:
              type: integer
              description: 'Решённые запросы за период: получившие ответ плюс истёкшие.'
            computed_at:
              type: string
              format: date-time
              nullable: true
        essential_checks:
          type: object
          description: >-
            Отчёт об основных проверках записи каталога, сформированный
            исключительно на основе верифицированных платформой источников:
            регистрация (официальный реестр содержит VASP: временный реестр MiCA
            ЕС, публичный каталог TRISA или глобальный реестр LEI), лицензия
            (авторизация MiCA зафиксирована и действительна), домен (домен
            записи совпадает с её endpoint TRP или сайтом, указанным в реестре)
            и LEI (запись LEI активна, выпущена и соответствует наименованиям и
            стране записи). Компонент essentials в dd_score представляет собой
            долю успешно пройденных проверок среди завершённых. Поле пусто до
            тех пор, пока еженедельное обновление каталога впервые не проверит
            запись, и всегда пусто для участников сети Didit.
          properties:
            level:
              type: string
              enum:
                - essential
            checked_at:
              type: string
              format: date-time
            checks:
              type: array
              items:
                type: object
                properties:
                  id:
                    type: string
                    enum:
                      - registration
                      - licence
                      - domain
                      - lei
                  status:
                    type: string
                    enum:
                      - pass
                      - fail
                      - unknown
                    description: >-
                      unknown, если ни один из зарегистрированных источников не
                      может вынести решение по проверке.
                  reason:
                    type: string
                    description: Машиночитаемый код вердикта.
                  detail:
                    type: string
                    description: Однострочное объяснение на английском языке.
            passed:
              type: integer
            failed:
              type: integer
            unknown:
              type: integer
            total:
              type: integer
        decision:
          allOf:
            - $ref: '#/components/schemas/TravelRuleCounterpartyDecision'
          nullable: true
          description: >-
            Решение вашего приложения по этому VASP или, для сущности без
            собственного решения, решение её бренда (inherited_from указывает
            бренд). Null, если решения нет. Доступно только вашему приложению.
        entity_screening:
          allOf:
            - $ref: '#/components/schemas/TravelRuleCounterpartyScreening'
          nullable: true
          description: >-
            Последний скрининг по санкциям и негативным публикациям в СМИ для
            этого VASP в вашем приложении. Null, если вы никогда не проводили
            его скрининг. Доступно только вашему приложению.
        questionnaires:
          type: array
          items:
            $ref: '#/components/schemas/TravelRuleCounterpartyQuestionnaire'
          description: >-
            Анкеты комплексной проверки вашего приложения с этим VASP, сначала
            новые. Доступно только вашему приложению.
      example:
        id: 0d6f3c2a-6a1e-4c55-9a39-1f2b0c7d8e91
        kind: directory
        name: Example Counterparty VASP
        lei: 529900EXAMPLECPTY001
        jurisdiction: DE
        domains:
          - counterparty.example
        reachable: true
        aliases:
          - name: Example Counterparty
            kind: trading_name
        networks:
          - network: GTR
            code: EXAMPLE01
            listed_name: Example Counterparty VASP
            country: DE
            verified_at: '2026-10-12T09:30:00Z'
            last_seen_at: '2026-10-12T09:30:00Z'
            source: staff
        routes:
          - rail: GTR
            status: unavailable
            reason: no_membership
            via: ''
          - rail: EMAIL
            status: available
            reason: ''
            via: contact
        umbrella: null
        entities: []
        contacts:
          - id: 6c1f9b8e-2d4a-4f7e-8b3c-5a9d0e1f2a3b
            email: travelrule@counterparty.example
            name: Travel Rule desk
            source: staff
            scope: platform
            verified_at: null
        dd_status: NOT_STARTED
        dd_score: 62
        dd_score_breakdown:
          jurisdiction:
            points: 25
            max: 25
            reason: jurisdiction_not_high_risk
            detail: DEU is not on the high-risk jurisdiction list
          verification:
            points: 3.8
            max: 15
            reason: dd_status_not_started
            detail: due diligence status NOT_STARTED
          protocol:
            points: 6
            max: 15
            reason: email_only
            detail: reachable over the email fallback only
          lei:
            points: 10
            max: 10
            reason: lei_valid
            detail: valid LEI on record
          history:
            points: 5
            max: 10
            reason: no_history
            detail: no exchange history
          essentials:
            points: 7.5
            max: 15
            reason: no_essential_checks
            detail: no decided essential check yet
          responsiveness:
            points: 5
            max: 10
            reason: responsiveness_unknown
            detail: 0 decided recent requests, too few to judge
        dd_assessed_at: '2026-10-12T09:30:00Z'
        dd_score_semantic: higher_is_safer
        risk_level: MEDIUM
        responsiveness:
          status: UNKNOWN
          answered: 0
          total: 0
          computed_at: '2026-10-12T09:30:00Z'
        essential_checks: {}
        reachable_rails:
          - GTR
          - EMAIL
        is_didit_customer: false
        decision:
          decision: APPROVED
          reason: Licensed in DE, questionnaire reviewed
          decided_by: ''
          updated_at: '2026-10-14T10:05:00Z'
          inherited_from: null
        entity_screening:
          id: 7a1d2c3b-4e5f-4a6b-8c7d-9e0f1a2b3c4d
          status: Approved
          total_hits: 0
          score: null
          screened_at: '2026-10-14T09:58:00Z'
          fresh: true
          flagged: false
        questionnaires:
          - id: 8b7a6c5d-4e3f-4a2b-9c1d-0e9f8a7b6c5d
            status: ANSWERED
            form_version: '1'
            sent_to: travelrule@counterparty.example
            sent_at: '2026-09-02T08:00:00Z'
            expires_at: '2026-10-02T08:00:00Z'
            answered_at: '2026-09-04T15:20:00Z'
            valid_until: '2027-09-04T15:20:00Z'
            current: true
            answers:
              legal_name: >-
                Example Counterparty VASP, incorporated in the example
                jurisdiction.
              licensing: >-
                Crypto-asset service provider authorised under MiCA by its
                national regulator, licence active.
              jurisdictions: EU and EEA. We do not serve the United States.
              aml_program: >-
                Written AML/CFT policy, annual independent review, last
                completed in March 2026.
              compliance_officer: >-
                Head of Compliance, reachable at
                compliance@counterparty.example.
              sanctions_screening: >-
                Customers at onboarding and daily; counterparties on every
                transfer.
              transaction_monitoring: >-
                Rule-based monitoring with analyst review; suspicious activity
                reports filed with the FIU.
              travel_rule: TRP and email; we answer requests within one business day.
              custody: >-
                Segregated customer wallets held with a qualified custodian,
                insured.
              ownership: >-
                No shareholder holds 25 percent or more; parent company Example
                Holding Group.
              record_keeping: >-
                Five-year record-keeping for Travel Rule and transaction data,
                as our regulator requires.
              data_protection: Encrypted at rest and in transit, stored in the EU.
    TravelRuleCounterpartyDecision:
      type: object
      description: >-
        Решение вашего приложения по VASP-контрагенту. Доступно только вашему
        приложению: оно никогда не изменяет общую запись каталога, и другой
        клиент никогда его не увидит. Оно действует только через ваши правила
        транзакций (поле правила counterparty_dd_status и пресеты
        travel-rule-counterparty-blocked и travel-rule-counterparty-restricted);
        оно никогда не меняет маршрутизацию перевода.
      properties:
        decision:
          type: string
          enum:
            - APPROVED
            - RESTRICTED
            - BLOCKED
          description: >-
            APPROVED: ваша команда подтвердила контрагента. RESTRICTED: переводы
            в его адрес могут быть выполнены после проверки. BLOCKED: ваша
            команда отклонила его.
        reason:
          type: string
          maxLength: 255
          description: >-
            Указанная вами причина в виде произвольного текста; пустая строка,
            если причина не указана.
        decided_by:
          type: string
          description: >-
            Пользователь консоли, который принял или последним изменил решение.
            Пусто, если оно было принято с помощью API-ключа.
        updated_at:
          type: string
          format: date-time
        inherited_from:
          type: object
          nullable: true
          description: >-
            Бренд, решению которого следует эта сущность, поскольку вы не
            приняли решение по самой сущности. Null, если решение принято самим
            контрагентом.
          properties:
            id:
              type: string
              format: uuid
            name:
              type: string
    TravelRuleCounterpartyScreening:
      type: object
      description: >-
        Один скрининг контрагента на наличие санкций и негативных публикаций в
        СМИ, выполненный для вашего приложения и выставленный ему в счёт.
        Конфиденциально для вашего приложения: другой клиент никогда этого не
        увидит.
      properties:
        id:
          type: string
          format: uuid
        status:
          type: string
          enum:
            - Approved
            - In Review
            - Declined
          description: >-
            Одобрена: нет возможных совпадений, требующих внимания. На проверке
            или Отклонена: возможное совпадение по санкциям или негативным
            публикациям в СМИ.
        total_hits:
          type: integer
          description: Количество возможных совпадений, возвращённых скринингом.
        score:
          type: number
          nullable: true
          description: >-
            Наивысшая оценка риска среди возможных совпадений. Значение null,
            если совпадений не найдено.
        screened_at:
          type: string
          format: date-time
        fresh:
          type: boolean
          description: >-
            Выполнен ли скрининг менее чем fresh_days (30 дней) назад. Недавний
            скрининг используется повторно и не оплачивается снова.
        flagged:
          type: boolean
          description: >-
            true, пока скрининг актуален и имеет статус In Review или Declined.
            Пока ваш последний скрининг помечен флагом и скрининг контрагентов
            остаётся включённым, counterparty_risk_level в ваших правилах имеет
            значение HIGH.
    TravelRuleCounterpartyQuestionnaire:
      type: object
      description: >-
        Одна анкета надлежащей проверки, отправленная вашим приложением
        контрагенту: стандартная анкета Didit, направленная на
        зарегистрированный комплаенс-адрес электронной почты с одноразовой
        ссылкой для ответа. Доступна только вашему приложению.
      properties:
        id:
          type: string
          format: uuid
        status:
          type: string
          enum:
            - SENT
            - ANSWERED
            - EXPIRED
          description: >-
            SENT: ожидание ответов. ANSWERED: контрагент ответил на все вопросы.
            EXPIRED: ссылка на ответ закрыта без ответа (истёк срок её действия
            или её заменила более новая анкета), либо срок действия ответов
            истёк согласно valid_until.
        form_version:
          type: string
          description: >-
            Версия стандартной анкеты Didit, к которой относятся ответы. В
            настоящее время 1.
        sent_to:
          type: string
          format: email
        sent_at:
          type: string
          format: date-time
          nullable: true
        expires_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Срок для ответа составляет 30 дней после отправки. После этого
            ссылка перестаёт действовать.
        answered_at:
          type: string
          format: date-time
          nullable: true
        valid_until:
          type: string
          format: date-time
          nullable: true
          description: >-
            Срок актуальности ответов: 365 дней после ответа. Null до
            предоставления ответов.
        current:
          type: boolean
          description: >-
            true, пока анкета находится в статусе ANSWERED и срок valid_until не
            истёк.
        answers:
          type: object
          additionalProperties:
            type: string
          description: >-
            Ответы, сгруппированные по id вопроса: legal_name, licensing,
            jurisdictions, aml_program, compliance_officer, sanctions_screening,
            transaction_monitoring, travel_rule, custody, ownership,
            record_keeping, data_protection. Длина каждого ответа составляет до
            2 000 символов. Поле пустое, пока ответы не даны.
  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.