Перейти к основному содержанию
POST
curl

Обработка сбоев у провайдера

Если провайдер телефонии временно недоступен, этот endpoint возвращает 502 со стабильным машиночитаемым кодом:
Считайте, что этот ответ допускает повторную попытку. Сделайте небольшую паузу перед повторным запросом и покажите пользователю сообщение о временной недоступности сервиса, а не просите его изменить правильный номер телефона или код.

Дополнительная функция интеллектуального анализа

Установите enable_enrichment в true, чтобы дополнительно запустить анализ телефонного номера: оценку риска, тип линии, признак недавнего переноса номера к другому оператору и индекс доверия. Дополнительная функция тарифицируется по $0.05 за запрос по стандартной цене, сверх стоимости самой проверки. Запрос возвращает 403, если на вашем балансе недостаточно средств для её оплаты. Четыре поля определяют, как действуют сигналы. Каждое принимает значение NO_ACTION (по умолчанию) или DECLINE, и каждое учитывается только тогда, когда enable_enrichment равно true. При значении NO_ACTION сигнал всё равно возвращается в phone.phone_intelligence, так что вы можете применить собственное правило.

Авторизации

x-api-key
string
header
обязательно

API-ключ вашего приложения из раздела «Разработчикам» -> «API-ключи» в Business Console. Основной ключ имеет полный доступ. Именованный ключ может иметь ограниченную область действия: без доступа, чтение или запись для каждого ресурса, ограничение определенными сценариями или одобренными сессиями, списком IP-адресов и сроком действия. 401 означает, что ключ неверен, отозван или его срок действия истек; 403 означает, что ключ не был передан, у ключа нет доступа к этому ресурсу или действию, либо запрос поступил с адреса вне его списка IP-адресов; 404 на маршруте сессии означает, что сессия не входит в сценарии или статусы ключа. Ключ без доступа к медиа получает URL изображений, видео и PDF как null, а ключ без прав на запись сессий получает ссылки на сессии и токены как null. См. https://docs.didit.me/console/api-keys.

Тело

application/json
phone_number
string
обязательно

Тот же номер телефона, что использовался в соответствующем вызове POST /v3/phone/send/, в формате E.164. Именно он связывает проверку с отправкой.

Maximum string length: 20
Пример:

"+14155552671"

code
string
обязательно

Одноразовый код (OTP), полученный конечным пользователем. Должен содержать от 4 до 8 цифр — любое другое значение возвращает 400 без списания попытки. Корректно сформированный, но неверный код возвращает 200 со статусом status: "Failed" и списывает одну из 3 попыток.

Required string length: 4 - 8
Pattern: ^[0-9]{4,8}$
Пример:

"123456"

duplicated_phone_number_action
enum<string>
по умолчанию:NO_ACTION

Что делать, если тот же номер уже использовался другим пользователем (другой vendor_data) вашего приложения. DECLINE меняет итоговый status на Declined; NO_ACTION фиксирует риск в phone.warnings и заполняет phone.matches.

Доступные опции:
NO_ACTION,
DECLINE
disposable_number_action
enum<string>
по умолчанию:NO_ACTION

Действие, если проверка оператора связи помечает номер как временный/одноразовый (phone.is_disposable). DECLINE меняет итоговый status на Declined; NO_ACTION фиксирует риск в phone.warnings.

Доступные опции:
NO_ACTION,
DECLINE
voip_number_action
enum<string>
по умолчанию:NO_ACTION

Действие, если проверка оператора сообщает о виртуальном типе линии — voip, isp или vpn (phone.is_virtual). DECLINE переводит финальный status в Declined; NO_ACTION фиксирует риск в phone.warnings.

Доступные опции:
NO_ACTION,
DECLINE
enable_enrichment
boolean
по умолчанию:false

Когда true, также выполняет проверку номера телефона (phone intelligence): оценку риска, тип линии, факт недавнего переноса номера и индекс доверия. Тарифицируется как одна единица phone_intelligence_api за запрос ($0.05 по прайс-листу) в дополнение к собственной цене этого endpoint. Запрос возвращает 403, если ваш баланс не может покрыть списание.

Пример:

false

phone_intelligence_score_action
enum<string>
по умолчанию:NO_ACTION

Действие, когда оценка риска при анализе телефона превышает порог. DECLINE меняет итоговый status на Declined; NO_ACTION фиксирует сигнал без отклонения. Действует только тогда, когда enable_enrichment имеет значение true.

Доступные опции:
NO_ACTION,
DECLINE
phone_type_risk_action
enum<string>
по умолчанию:NO_ACTION

Действие, когда номер относится к типу линии с высоким уровнем риска. DECLINE меняет итоговый status на Declined; NO_ACTION фиксирует сигнал без отклонения. Действует только тогда, когда enable_enrichment имеет значение true.

Доступные опции:
NO_ACTION,
DECLINE
recent_port_action
enum<string>
по умолчанию:NO_ACTION

Действие, когда номер был недавно перенесён к другому оператору связи. DECLINE меняет итоговый status на Declined; NO_ACTION фиксирует сигнал без отклонения. Действует только тогда, когда enable_enrichment имеет значение true.

Доступные опции:
NO_ACTION,
DECLINE
low_phone_trust_action
enum<string>
по умолчанию:NO_ACTION

Действие, когда индекс доверия при анализе телефона находится на уровне порога или ниже. DECLINE меняет итоговый status на Declined; NO_ACTION фиксирует сигнал без отклонения. Действует только тогда, когда enable_enrichment имеет значение true.

Доступные опции:
NO_ACTION,
DECLINE
enable_social
boolean
по умолчанию:false

Если true, также запрашивает цифровой след номера: мессенджеры, социальные сети, площадки электронной коммерции и профессиональные платформы, где он зарегистрирован. Тарифицируется как одна единица phone_social за запрос дополнительно к цене самого endpoint.

Пример:

true

phone_no_social_presence_action
enum<string>
по умолчанию:NO_ACTION

Действие, когда проверка цифрового следа в соцсетях не находит номер ни на одной из поддерживаемых платформ. В этом endpoint принимаются только NO_ACTION и DECLINE; REVIEW доступно в одноимённом ключе конфигурации сценария.

Доступные опции:
NO_ACTION,
DECLINE

Ответ

Проверка завершена — неверные коды и отсутствующие верификации также возвращают 200; проверяйте status, а не HTTP-код. Поле phone заполняется только при финальных результатах (Approved/Declined), равно null при Failed и отсутствует при Expired or Not Found.

request_id
string<uuid>

При Approved/Declined: id сессии сопоставленной верификации — совпадает с request_id, возвращаемым POST /v3/phone/send/. При Failed и Expired or Not Found: случайный разовый UUID, который впоследствии нельзя найти по запросу.

status
enum<string>

Approved — правильный код, отсутствуют отклоняющие риски. Declined — терминальный статус: сработал отклоняющий риск или исчерпан лимит попыток (3). Failed — неверный код, попытки ещё остались. Expired or Not Found — нет ожидающей верификации для этого номера за последние 5 минут.

Доступные опции:
Approved,
Declined,
Failed,
Expired or Not Found
message
string

Понятное объяснение результата, включая количество оставшихся попыток после неверного ввода кода.

phone
object | null

Полный отчёт по номеру телефона. Присутствует (не null) только при финальных результатах (Approved/Declined); null при Failed и отсутствует при Expired or Not Found.

vendor_data
string | null

vendor_data сессии совпавшей верификации. null при Expired or Not Found.

metadata
object | null

metadata сессии совпавшей верификации. null при Expired or Not Found.

created_at
string<date-time>

Временная метка ответа на эту проверку.

Последнее изменение 7 ноября 2026 г.