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

# Account Check API: проверка банковского счёта получателя

> Проверьте, что банковский счёт принадлежит названному человеку или компании, до перевода средств. Без сессии и без входа в систему. Didit.

> [!NOTE]
>
> В продакшене проверка счёта работает в Нигерии, Гане и Кении.
> Для других стран запрос возвращает `404` с `code: country_not_covered`, и за него не списывается плата.
> Со временем список стран будет расширяться. Актуальные возможности по каждой стране всегда указаны в разделе [Цены на банковскую верификацию](https://docs.didit.me/ru/getting-started/bank-verification-pricing.md).

Ваш бэкенд отправляет имя и счёт и получает результат. Это [проверка счёта](https://docs.didit.me/ru/core-technology/bank-verification/account-check.md) на шаге банковской верификации, но без проверки самого человека.

## Передайте счёт в формате его страны

| Страна | `account` |
| - | - |
| Страны с IBAN | `{"iban": "..."}` |
| Великобритания | `{"sort_code": "...", "account_number": "..."}` |
| США | `{"routing_number": "...", "account_number": "..."}` |
| Канада | `{"transit_institution": "...", "account_number": "..."}` |
| Австралия | `{"bsb": "...", "account_number": "..."}` |
| Индия | `{"ifsc": "...", "account_number": "..."}` |
| Нигерия | `{"bank_code": "...", "account_number": "..."}`, с 6-значным кодом банка NIP (у Access Bank это `000014`) и 10-значным NUBAN |
| Гана | `{"bank_code": "...", "account_number": "..."}`, с 3-буквенным кодом банка (у GCB Bank это `GCB`) |
| Кения | `{"bank_code": "...", "account_number": "..."}`, с 2-значным кодом банка (у KCB это `01`) |
| Мексика | `{"clabe": "..."}` |
| Аргентина | `{"cbu_cvu": "..."}` |

В некоторых странах также требуется `bic`, а для бизнес-счёта `registration_id`. Пробелы, дефисы и точки игнорируются. Если в проверке страны нужного ключа нет, возвращается `400` с его названием, например `"field": "account.bank_code", "reason": "required"`.

Передайте `holder.full_name`, чтобы проверить счёт физического лица, или `holder.business_name`, чтобы проверить счёт компании.

## Передайте согласие владельца счёта

В некоторых странах проверка счёта требует явного согласия владельца счёта перед каждой проверкой.
Запросите его в вашем продукте, затем передайте `"consent": true`.
Без этого поля проверка в таких странах отклоняется с `400` (`field: consent`, `reason: required`), и плата за неё не списывается.
В остальных странах `consent` необязателен. Если вы его передадите, Didit сохранит его вместе с начислением за проверку.
Ключ песочницы запрашивает согласие в тех же странах, что и боевой ключ.

## Прочитайте результат

| `result` | Что это значит | Типичный следующий шаг |
| - | - | - |
| `match` | Банк ведёт счёт на имя, которое вы передали. | Отправляйте деньги. |
| `close_match` | Банк ведёт счёт на похожее имя. `holder_name` содержит это имя, если банк его вернул. | Сравните `holder_name` или попросите человека подтвердить имя. |
| `no_match` | Банк ведёт счёт на другое имя или такого счёта нет. | Не отправляйте деньги. |
| `cannot_verify` | Банк ответил без сравнения имени, например для заблокированного или закрытого счёта. | Применяйте собственную политику, например попросите другой счёт. |

## Биллинг и повторные попытки

Каждая проверка, на которую банк ответил, оплачивается один раз по [цене проверки счёта](https://docs.didit.me/ru/getting-started/bank-verification-pricing.md) страны счёта, независимо от результата. Запрос, завершившийся ошибкой, никогда не оплачивается: это некорректное тело запроса (`400`), недостаточно средств на балансе (`402`), счёт, для которого проверка ещё не поддерживается (`404`), или банк, который не смог ответить (`503`).

Ключа идемпотентности и endpoint для получения сведений о проверке нет. Повторный запрос запускает новую проверку с новым `request_id` и оплачивается снова, поэтому сохраняйте ответ. Didit хранит только данные о начислении: идентификатор запроса, страну, результат и маскированный счёт. Имя и полный номер счёта Didit не хранит.

## Проверьте в песочнице

API-ключ для песочницы не обращается к банку и ничего не списывает. Последние 4 символа IBAN, а если IBAN нет, то номера счёта, определяют ответ:

| Оканчивается на | Ответ |
| - | - |
| `0001` | `close_match` с `holder_name` |
| `0002` | `close_match`, `holder_name: null` |
| `0003`, `0006` | `no_match` |
| `0004` | `cannot_verify` |
| `0005` | `503`, `account_check_unavailable` |
| `0009` | `400`, `reason: rejected` |
| Все остальные значения | `match` |

IBAN, CLABE и CBU содержат контрольные цифры. Используйте [тестовые значения песочницы](https://docs.didit.me/ru/core-technology/bank-verification/account-check.md#тестирование-в-песочнице), которые проходят все проверки формата.

## Доступ

Аутентифицируйтесь с помощью `x-api-key` вашего приложения или токена bearer, полученного с использованием учётных данных клиента. API-ключу с ограниченными правами нужен доступ на запись к сессиям. Endpoint использует общий лимит на запись: 300 запросов в минуту на API-ключ.


## OpenAPI

````yaml ru/openapi-25.json POST /v3/bank/account-check/
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/bank/account-check/:
    post:
      tags:
        - Standalone APIs
      summary: Проверить банковский счёт
      description: >-
        Проверьте, принадлежит ли банковский счёт указанному вами физическому
        лицу или компании, прежде чем отправлять на него средства. Без сессий и
        без авторизации: отправьте имя и счёт, получите результат. Это [проверка
        счёта](/ru/core-technology/bank-verification/account-check) в рамках
        шага верификации банка, выполняемая из вашего бэкенда.


        **Что вы отправляете.** Страну счёта `country` (ISO 3166-1 alpha-3),
        номер `account` в формате этой страны и имя владельца `holder`:
        `full_name` для физического лица или `business_name` для компании.
        Название компании проверяет корпоративный счёт.


        **Что вы получаете в ответ.** Поле `result` принимает значения `match`,
        `close_match`, `no_match` или `cannot_verify`. При `close_match` в поле
        `holder_name` возвращается имя, на которое счёт открыт в банке, если
        банк его предоставил. Поле `account` возвращается маскированным до
        последних 4 символов.


        **Биллинг.** Каждая проверка, на которую банк ответил, тарифицируется
        один раз по цене проверки счёта для страны этого счёта, независимо от
        результата: `no_match`, несуществующий счёт и `cannot_verify` также
        оплачиваются. Запрос, завершившийся ошибкой, никогда не тарифицируется.


        **Каждый запрос является новой проверкой.** Ключ идемпотентности и
        endpoint для повторного чтения проверки отсутствуют, поэтому повторный
        запрос выполняется и тарифицируется снова. Сохраняйте ответ.


        **Песочница.** Используйте API-ключ песочницы с тестовыми реквизитами
        счёта. Ключ песочницы не обращается к банку и не расходует средства.
        Последние 4 символа IBAN (или номера счёта) определяют ответ: `0001`:
        `close_match` с `holder_name`, `0002`: `close_match` без него, `0003` и
        `0006`: `no_match`, `0004`: `cannot_verify`, `0005`: `503`, а `0009`:
        `400`. Любое другое окончание возвращает `match`.


        **API-ключи.** API-ключу с ограниченными правами требуется доступ на
        запись к сессиям.
      operationId: post_v3_bank_account_check
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BankAccountCheckRequest'
            examples:
              Person, Nigeria:
                summary: >-
                  Банковский код и номер счёта, сверенные с именем физического
                  лица
                value:
                  country: NGA
                  account:
                    bank_code: '000014'
                    account_number: '0123450001'
                  holder:
                    full_name: Maria Oliveira
                  vendor_data: payout_20481
              Company, Nigeria:
                summary: >-
                  Банковский код и номер счёта, сверенные с наименованием
                  компании
                value:
                  country: NGA
                  account:
                    bank_code: '000014'
                    account_number: '0123456789'
                  holder:
                    business_name: Northwind Trading Ltd
      responses:
        '200':
          description: Банк ответил. Проверка тарифицируется независимо от результата.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankAccountCheckResponse'
              examples:
                Close match:
                  summary: Банк ведёт счёт на похожее имя
                  value:
                    request_id: c2f4a9e0-7b1d-4c3a-9e55-1d0a6b8f2a47
                    result: close_match
                    holder_name: MARIA R OLIVEIRA
                    account: '****0001'
                    vendor_data: payout_20481
                    created_at: '2026-10-21T14:32:08Z'
                Match:
                  summary: Банк ведёт счёт на указанное имя
                  value:
                    request_id: 5b0e2d7c-41a8-4f6e-9c3b-8e7d1a2f6c90
                    result: match
                    holder_name: null
                    account: '****6789'
                    vendor_data: null
                    created_at: '2026-10-21T14:35:41Z'
        '400':
          description: >-
            Отклонено в переданном виде, плата не взимается. `field` указывает
            поле тела запроса для исправления, а `reason` указывает причину: те
            же причины отображаются в размещённой форме аккаунта. Сообщается
            только о первом отклонённом поле.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankAccountCheckError'
              examples:
                Missing field:
                  summary: Для проверки в этой стране требуется банковский код
                  value:
                    detail: The bank code is not valid (required).
                    code: invalid_account_input
                    field: account.bank_code
                    reason: required
                Invalid IBAN:
                  summary: Длина IBAN не соответствует его стране
                  value:
                    detail: The iban is not valid (length).
                    code: invalid_account_input
                    field: account.iban
                    reason: length
                Refused by the bank:
                  summary: Банк отклонил счёт в отправленном виде
                  value:
                    detail: The account was refused as typed (rejected).
                    code: invalid_account_input
                    field: account.account_number
                    reason: rejected
                No name:
                  summary: '`holder` не содержит ни `full_name`, ни `business_name`'
                  value:
                    detail: >-
                      Send full_name for a person or business_name for a
                      company.
                    code: invalid_account_input
                    field: holder
                    reason: required
                Consent required:
                  summary: >-
                    Для проверки счета в этой стране требуется согласие
                    владельца счета
                  value:
                    detail: >-
                      Account checks in this country need the account holder's
                      explicit consent. Ask for it, then send `consent=true`.
                    code: invalid_account_input
                    field: consent
                    reason: required
        '401':
          description: Срок действия API-ключа с ограниченной областью действия истёк.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankAccountCheckError'
              examples:
                Expired key:
                  summary: Срок действия ключа истёк
                  value:
                    detail: This API key has expired.
        '402':
          description: >-
            Проверку невозможно оплатить, поэтому она не была выполнена.
            Пополните баланс и отправьте запрос снова.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankAccountCheckError'
              examples:
                Out of credit:
                  summary: Ваш баланс не покрывает одну проверку
                  value:
                    detail: >-
                      You don't have enough credits to perform this request.
                      Please top up at https://business.didit.me
                    code: insufficient_credits
                Not in your contract:
                  summary: В вашем договоре не указана цена для Account check API
                  value:
                    detail: >-
                      Your contract does not price the Account check API.
                      Contact your account manager.
                    code: contract_rate_missing
        '403':
          description: >-
            Заголовок `x-api-key` или bearer-token отсутствует либо
            недействителен, запрос поступил с адреса вне IP-списка ключа, либо
            ключ с ограниченной областью действия не имеет доступа на запись к
            сессиям.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankAccountCheckError'
              examples:
                Missing or invalid credentials:
                  summary: Нет валидного API-ключа или токена
                  value:
                    detail: You do not have permission to perform this action.
                No sessions write:
                  summary: >-
                    Ключ с ограниченной областью действия без доступа на запись
                    к сессиям
                  value:
                    detail: This API key has no write access to sessions.
        '404':
          description: >-
            Ни одна проверка счёта пока не обслуживает этот счёт, поэтому
            проверка и списание средств не проводились. `country_not_covered`:
            ни одна проверка не обслуживает страну счёта или соответствующий тип
            счёта (физическое лицо или компания) в ней. `bank_not_covered`: ни
            одна проверка не обслуживает банк счёта.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankAccountCheckError'
              examples:
                Country not covered:
                  summary: Ни одна проверка счёта не обслуживает эту страну
                  value:
                    detail: No account check serves this country yet.
                    code: country_not_covered
                Bank not covered:
                  summary: Ни одна проверка счёта не обслуживает банк этого счёта
                  value:
                    detail: No account check serves this account's bank yet.
                    code: bank_not_covered
        '429':
          $ref: '#/components/responses/RateLimitedWrite'
        '503':
          description: >-
            Банк не смог ответить. Проверка и списание средств не производились;
            отправьте запрос на проверку позже.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BankAccountCheckError'
              examples:
                Unavailable:
                  summary: Банк не ответил
                  value:
                    detail: >-
                      The account check is temporarily unavailable and this
                      request was not charged. Please try again.
                    code: account_check_unavailable
      security:
        - ApiKeyAuth: []
        - BearerAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: |-
            curl -X POST https://verification.didit.me/v3/bank/account-check/ \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{
                "country": "NGA",
                "account": {"bank_code": "000014", "account_number": "0123450001"},
                "holder": {"full_name": "Maria Oliveira"},
                "vendor_data": "payout_20481"
              }'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.bank.account_check(
                country="NGA",
                account={
                    "account_number": "0123450001",
                    "bank_code": "000014",
                },
                holder={
                    "full_name": "Maria Oliveira",
                },
                vendor_data="payout_20481",
            )
            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.bank.accountCheck({
              country: "NGA",
              account: {
                account_number: "0123450001",
                bank_code: "000014",
              },
              holder: {
                full_name: "Maria Oliveira",
              },
              vendor_data: "payout_20481",
            });
            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Bank.AccountCheck(ctx, didit.BankAccountCheckRequest{\n\tCountry: \"NGA\",\n\tAccount: didit.BankAccountCheckRequestAccount{\n\t\tAccountNumber: didit.String(\"0123450001\"),\n\t\tBankCode:      didit.String(\"000014\"),\n\t},\n\tHolder: didit.BankAccountCheckHolder{\n\t\tFullName: didit.String(\"Maria Oliveira\"),\n\t},\n\tVendorData: didit.String(\"payout_20481\"),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;

            import me.didit.types.BankAccountCheckHolder;

            import me.didit.types.BankAccountCheckPersonHolder;

            import me.didit.types.BankAccountCheckRequest;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.bank().accountCheck(BankAccountCheckRequest.builder()
                    .country("NGA")
                    .account(BankAccountCheckRequest.Account.builder()
                            .accountNumber("0123450001")
                            .bankCode("000014")
                            .build())
                    .holder(BankAccountCheckHolder.ofBankAccountCheckPersonHolder(BankAccountCheckPersonHolder.builder()
                            .fullName("Maria Oliveira")
                            .build()))
                    .vendorData("payout_20481")
                    .build());
            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->bank->accountCheck([
                'country' => 'NGA',
                'account' => [
                    'account_number' => '0123450001',
                    'bank_code' => '000014',
                ],
                'holder' => [
                    'full_name' => 'Maria Oliveira',
                ],
                'vendor_data' => 'payout_20481',
            ]);
            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

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

            result = didit.bank.account_check(
              country: "NGA",
              account: {
                account_number: "0123450001",
                bank_code: "000014",
              },
              holder: {
                full_name: "Maria Oliveira",
              },
              vendor_data: "payout_20481"
            )
            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.Bank.AccountCheckAsync(new
            BankAccountCheckRequest

            {
                Country = "NGA",
                Account = new()
                {
                    AccountNumber = "0123450001",
                    BankCode = "000014",
                },
                Holder = new()
                {
                    FullName = "Maria Oliveira",
                },
                VendorData = "payout_20481",
            });

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    BankAccountCheckRequest:
      type: object
      required:
        - country
        - account
        - holder
      properties:
        country:
          type: string
          minLength: 3
          maxLength: 3
          description: >-
            Страна счёта в виде кода ISO 3166-1 alpha-3, например `NGA`.
            Допускается строчный регистр.
          example: NGA
        account:
          type: object
          description: >-
            Счёт в формате, принятом в соответствующей стране: `iban` или
            `account_number` с кодом банка или отделения, требуемым страной
            (`sort_code`, `routing_number`, `transit_institution`, `bsb`,
            `ifsc`, `bank_code` или `bic`). Для Мексики используется `clabe`, а
            для Аргентины `cbu_cvu`, которые уже содержат код банка. Для счёта
            компании добавляется `registration_id`, если это требуется страной.
            Пробелы, дефисы и точки игнорируются. Ключи, не используемые
            проверкой соответствующей страны, игнорируются; отсутствие
            необходимого ключа приводит к ошибке `400` с указанием его имени.
          properties:
            iban:
              type: string
              maxLength: 64
              description: >-
                IBAN в стране, использующей IBAN. Он должен относиться к
                `country`.
            account_number:
              type: string
              maxLength: 64
              description: >-
                Номер счёта для страны, в которой счёт указывается с отдельным
                кодом банка или отделения.
            sort_code:
              type: string
              maxLength: 64
              description: 'Великобритания: 6-значный сорт-код.'
            routing_number:
              type: string
              maxLength: 64
              description: 'США: 9-значный маршрутный номер ABA (routing number).'
            transit_institution:
              type: string
              maxLength: 64
              description: 'Канада: 8-значный номер транзита и финансового учреждения.'
            bsb:
              type: string
              maxLength: 64
              description: 'Австралия: 6-значный код BSB.'
            ifsc:
              type: string
              maxLength: 64
              description: 'Индия: 11-символьный IFSC.'
            bank_code:
              type: string
              maxLength: 64
              description: Код банка, если требуется для страны, например в Нигерии.
            bic:
              type: string
              maxLength: 64
              description: BIC банка, если проверка в данной стране требует его указания.
            clabe:
              type: string
              maxLength: 64
              description: 'Мексика: 18-значный CLABE. В нём уже указан банк.'
            cbu_cvu:
              type: string
              maxLength: 64
              description: >-
                Аргентина: 22-значный CBU или CVU. Он уже содержит название
                банка.
            registration_id:
              type: string
              maxLength: 64
              description: >-
                Регистрационный номер бизнес-аккаунта, если страна требует его
                указания.
          additionalProperties:
            type: string
            maxLength: 64
          example:
            bank_code: '000014'
            account_number: '0123450001'
        holder:
          $ref: '#/components/schemas/BankAccountCheckHolder'
        vendor_data:
          type: string
          nullable: true
          description: >-
            Ваш собственный идентификатор этой проверки, возвращаемый без
            изменений.
          example: payout_20481
        consent:
          type: boolean
          default: false
          description: >-
            Установите значение `true`, если владелец счёта дал явное согласие
            на эту проверку. Обязательно в странах, где проверка счёта требует
            такого согласия: без него в проверке будет отказано с ошибкой `400`,
            где `field` равен `consent`, а `reason` равен `required`, при этом
            средства не списываются. В остальных странах параметр необязателен,
            и Didit фиксирует его вместе с начислением за проверку, если вы его
            передаёте.
          example: true
    BankAccountCheckResponse:
      type: object
      required:
        - request_id
        - result
        - holder_name
        - account
        - vendor_data
        - created_at
      properties:
        request_id:
          type: string
          format: uuid
          description: ID этой проверки.
        result:
          type: string
          enum:
            - match
            - close_match
            - no_match
            - cannot_verify
          description: >-
            `match`: банк ведет счет на указанное вами имя. `close_match`: на
            близкое имя, например, пропущено отчество/второе имя или допущена
            опечатка. `no_match`: на другое имя либо такого счета не существует.
            `cannot_verify`: банк вернул ответ без сравнения имени, например,
            для заблокированного или закрытого счета.
        holder_name:
          type: string
          nullable: true
          description: >-
            Только при `close_match` и только если банк его вернул: имя
            владельца счёта в том виде, в котором оно зарегистрировано в банке.
            В противном случае `null`.
        account:
          type: string
          description: Счёт, маскированный до последних 4 символов.
        vendor_data:
          type: string
          nullable: true
          description: >-
            Ваш собственный идентификатор в том виде, в котором вы его
            отправили.
        created_at:
          type: string
          format: date-time
          description: Когда выполнялась проверка, в UTC.
    BankAccountCheckError:
      type: object
      required:
        - detail
      properties:
        detail:
          type: string
          description: Что пошло не так, на английском языке.
        code:
          type: string
          description: Стабильный код для ветвления логики. Отсутствует при `401` и `403`.
        field:
          type: string
          description: >-
            Только для `400`: поле тела запроса, которое необходимо исправить, в
            виде пути через точку, например `account.sort_code`.
        reason:
          type: string
          enum:
            - required
            - length
            - format
            - checksum
            - country_mismatch
            - rejected
          description: >-
            Только для `400`: причина отклонения поля. `required`, `length`,
            `format`, `checksum` и `country_mismatch` (IBAN другой страны)
            являются собственными проверками Didit; `rejected` означает, что
            банк отклонил счёт в переданном виде.
    BankAccountCheckHolder:
      description: >-
        Имя, с которым проверяется учётная запись. Передайте ровно одно из
        полей: `full_name` или `business_name`.
      oneOf:
        - $ref: '#/components/schemas/BankAccountCheckPersonHolder'
        - $ref: '#/components/schemas/BankAccountCheckBusinessHolder'
    BankAccountCheckPersonHolder:
      type: object
      description: Человек, который должен быть владельцем аккаунта.
      required:
        - full_name
      properties:
        full_name:
          type: string
          maxLength: 255
          description: Полное имя лица, которое должно быть владельцем аккаунта.
          example: Maria Oliveira
    BankAccountCheckBusinessHolder:
      type: object
      description: Компания, которой должен принадлежать счет. Проверяет бизнес-счет.
      required:
        - business_name
      properties:
        business_name:
          type: string
          maxLength: 255
          description: >-
            Название компании, которой должен принадлежать счет. Выполняет
            проверку корпоративного счета.
  responses:
    RateLimitedWrite:
      description: >-
        Превышен общий лимит на запись в 300 запросов в минуту на один API-ключ.
        Подождите время, указанное в `Retry-After`, перед повторной попыткой.
      content:
        application/json:
          schema:
            type: object
            required:
              - detail
            properties:
              detail:
                type: string
          example:
            detail: >-
              Write request rate limit exceeded. You can make up to 300 requests
              per minute.
  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.
    BearerAuth:
      type: http
      scheme: bearer
      description: Токен доступа приложения, полученный по учётным данным клиента.

````

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