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

Укажите бренд в SMS

SMS-коды содержат имя отправителя SMS вашего приложения, которое задаётся в Business Console, без дополнительной платы:
123456, ваш код подтверждения для Acme Bank
Чтобы подписать код другим именем, передайте options.sms_sender_name (от 1 до 30 символов: только буквы, цифры, пробелы и символы ’ & - ! и не только цифры):
Имя, которое не соответствует этим правилам, возвращает 400, и код не отправляется. WhatsApp-коды используют фиксированный текст и не брендируются. Чтобы отправлять их от имени вашей компании, подключите собственный номер WhatsApp Business в Business Console. См. Отправка WhatsApp-кодов с собственного номера. См. Брендированные сообщения для верификации, где описано, какое имя получает код, и дневной лимит на новые имена.

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

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

Авторизации

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
обязательно

Номер телефона получателя в формате E.164 — с начальным + и кодом страны (например, +14155552671). Номера проверяются и нормализуются до формата E.164; нераспознаваемые или недействительные номера возвращают 400 с ошибкой поля phone_number.

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

"+14155552671"

options
object

Параметры доставки одноразового кода. Все поля необязательны.

signals
object

Необязательные сигналы об устройстве и сети конечного пользователя, передаваемые на уровень защиты от фрода для улучшения обнаружения злоупотреблений или автоматизированного трафика. Все поля необязательны.

vendor_data
string

Необязательный идентификатор, контролируемый вызывающей стороной (ваш внутренний идентификатор пользователя, email, UUID и т. д.), сохраняемый в сессии и возвращаемый в ответе на отправку, ответе проверки соответствия, webhook и Business Console. Используйте его для сопоставления request_id от Didit с вашей записью пользователя.

metadata
object | null

Необязательный JSON-объект в свободной форме, сохраняемый в сессии и возвращаемый в ответе на отправку, в ответе проверки соответствия, в webhook и в Business Console.

Ответ

Отправка подтверждена. Проверьте status: Success и Retry означают, что код в пути; Blocked означает, что антифрод-система отклонила операцию и верификация уже завершена со статусом Declined. Поле request_id содержит сохранённый идентификатор сессии (тот же id при Retry).

request_id
string<uuid>

ID сессии верификации. Отправка с Retry возвращает тот же request_id, что и исходная отправка. Этот ID отображается в Business Console, возвращается повторно при завершённом POST /v3/phone/check/ и может быть передан в GET /v3/session/{sessionId}/decision/.

status
enum<string>

Success — OTP отправлен для новой верификации. Retry — OTP отправлен повторно для ожидающей верификации, созданной предыдущей отправкой. Blocked — антифрод-система заблокировала отправку; верификация сразу переводится в статус Declined, средства не списываются.

Доступные опции:
Success,
Retry,
Blocked
reason
string | null

Причина, по которой отправка получила статус Blocked (например, repeated_attempts, suspicious, spam). null при Success и Retry.

vendor_data
string | null

Эхо-значение vendor_data, сохранённого в сессии (из первой отправки).

metadata
object | null

Эхо-значение metadata, сохранённого в сессии (из первой отправки).

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