---
title: "OTP SMS API для кодов подтверждения"
description: "Отправляйте OTP по SMS одним REST-запросом с bearer-токеном. Unicode и арабский, зарегистрированные имена отправителя, статусы доставки в webhook и голосовой резерв."
canonical: "https://omnichannels.ai/ru/channels/sms/otp-api/"
language: "ru"
updated: "2026-10-10"
publisher: "BroadNet Technologies"
brand: "OmniChannels.ai"
---

# OTP SMS API для кодов подтверждения

Canonical: https://omnichannels.ai/ru/channels/sms/otp-api/
Language: ru
Publisher: OmniChannels.ai by BroadNet Technologies

Отправляйте одноразовые пароли из бэкенда одним HTTPS-запросом к REST API BroadNet. Ваше приложение генерирует и проверяет код, а мы доставляем его с зарегистрированного имени отправителя, или альфа-имени, по прямым операторским маршрутам и передаём каждый статус на ваш webhook.

**Короткий ответ:** Чтобы отправить OTP по SMS через OmniChannels.ai, ваш бэкенд генерирует код и вызывает POST /sms/sendSms на https://api.broadnet.me с bearer-токеном, именем отправителя, номером и текстом сообщения. API возвращает ID сообщения, а статусы доставки приходят на ваш webhook. Поддерживаются Unicode и арабский язык, а WhatsApp или голосовой вызов могут работать как резервные каналы (fallback).

## Что OTP SMS API даёт разработчикам

- **Один REST-запрос на один код:** POST /sms/sendSms с JSON-телом и bearer-токеном. В ответ вы получаете ID сообщения, который сохраняете вместе с попыткой верификации.
- **Статусы доставки через webhook:** Получайте SUBMITTED, SENT, DELIVERED, FAILED и REJECTED в едином формате, чтобы знать, когда предложить повторную отправку или сменить канал.
- **Коды в Unicode и на арабском:** Укажите messageType UNICODE для арабского или других алфавитов. POST /sms/identify возвращает кодировку и число сегментов до отправки.
- **Зарегистрированные имена отправителя:** Отправляйте с альфа-имени, зарегистрированного для транзакционного трафика, в странах, где это требуется, например в ОАЭ и Саудовской Аравии.
- **Проверка номера перед отправкой:** POST /sms/lookup проверяет номер в сети (HLR и MNP) и помогает отсеять недействительные номера до того, как вы заплатите за отправку кода.
- **Резерв через WhatsApp и голос:** Переключайтесь на аутентификационный шаблон (authentication) в WhatsApp или на голосовой вызов, если SMS не доставлено или код не введён.
- **SMPP для очень больших объёмов:** Если у вас уже есть SMPP-клиент, отправляйте OTP по SMPP 3.4 с TLS по тем же маршрутам и получайте отчёты в сессии.
- **SDK и MCP-сервер:** Используйте TypeScript SDK @broadnet/cpaas-sdk, спецификацию OpenAPI 3.1 или MCP-сервер для ИИ-агентов.

## Что делает ваш код, а что делает API

| Позиция | Подробности |
|---|---|
| Генерация кода | Ваш бэкенд создаёт случайный код, сохраняет хеш со сроком действия и ограничивает число попыток для номера, устройства и IP-адреса. |
| Отправка SMS | POST /sms/sendSms с senderId, destinationNumber (код страны и номер, только цифры), message и messageType. |
| Отслеживание доставки | Сохраните возвращённый ID сообщения и сопоставляйте с ним статусы из webhook. Отсутствие DELIVERED в пределах вашего таймаута может запускать резервный канал. |
| Проверка кода | Ваш бэкенд сравнивает введённое пользователем значение с сохранённым хешем. Платформа никогда не проверяет и не хранит состояние вашей верификации. |
| Резервный канал | Отправьте код повторно в WhatsApp с аутентификационным шаблоном (authentication) или голосовым вызовом, который наша команда настраивает вместе с вами. |
| Цены | Оплата за SMS-сегмент по направлению, по опубликованным прайс-листовым ставкам BroadNet, без платы за подключение и без ежемесячного минимума. См. цены на SMS по странам. |

## Как интегрировать OTP SMS API

1. **Получите токен:** Запросите доступ: для вашего аккаунта выдаётся bearer-токен, а тестовые сообщения отправляются на ваши собственные подтверждённые номера.
2. **Зарегистрируйте имя отправителя:** Выберите транзакционное имя отправителя и зарегистрируйте его в странах, где это требуется, до запуска в работу.
3. **Составьте текст сообщения:** Поставьте код в начало, назовите свой бренд, укажите срок действия и добавьте предупреждение не сообщать код другим. Уложитесь в один сегмент.
4. **Отправляйте и отслеживайте:** Вызовите POST /sms/sendSms, сохраните ID сообщения и обрабатывайте статусы из webhook идемпотентно.
5. **Добавьте резервный канал и лимиты:** Подключите WhatsApp или голос как следующий шаг и до запуска ограничьте частоту запросов, чтобы защититься от SMS pumping (накрутки SMS-трафика).

## Когда OTP SMS API вам подходит

### Подходит, если

- Вы встраиваете подтверждение регистрации, входа или платежа в собственное приложение и хотите полностью контролировать код.
- Вам нужны OTP в ОАЭ, Саудовской Аравии и других странах GCC и MENA на арабском и английском языках.
- Вам нужен один API: SMS сейчас, а резерв через WhatsApp, RCS или голос позже.
- Вы предпочитаете REST и webhook, а при росте объёмов можете перейти на SMPP.

### Что важно знать перед стартом

- Готового эндпоинта верификации (verify) нет: ваше приложение само генерирует, хранит и проверяет код.
- Боевой доступ проверяет наша команда; мгновенной самостоятельной регистрации нет.
- Регистрация имени отправителя в некоторых странах занимает несколько дней, поэтому начните её до даты запуска.
- Эндпоинты OTP — мишень для мошенничества SMS pumping: белые списки стран, лимиты частоты и защита от ботов остаются на вашей стороне, в приложении.

## Вопросы об OTP SMS API

### Как отправить OTP по SMS через API?

Сгенерируйте код в бэкенде, затем вызовите POST https://api.broadnet.me/sms/sendSms с заголовком Authorization: Bearer и JSON-телом, содержащим senderId, destinationNumber, message и messageType. В ответ вы получите ID сообщения, а статусы доставки придут на ваш webhook.

### API сам генерирует и проверяет код?

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

### Можно ли отправлять OTP по SMS на арабском?

Да. Укажите messageType UNICODE. В арабском SMS в один сегмент помещается 70 символов, поэтому делайте сообщение коротким. Заранее можно вызвать POST /sms/identify, чтобы получить кодировку и число сегментов.

### Какой формат OTP-сообщения лучше всего?

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

### Что делать, если OTP SMS не доставлено?

Следите за статусами webhook по ID сообщения. Если вы не видите DELIVERED или пользователь не вводит код в пределах вашего таймаута, предложите повторную отправку либо переключитесь на WhatsApp или голосовой вызов. Не повторяйте попытки бесконечно на один и тот же номер.

### Как защитить эндпоинт OTP от SMS pumping?

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

### Сколько стоит OTP SMS?

OTP SMS оплачивается за сегмент по ставке направления. Ориентировочные прайс-листовые ставки BroadNet по странам указаны на страницах цен на SMS, например от US$0.0123 за сегмент в ОАЭ. Платы за подключение и ежемесячного минимума нет; ставки подтверждаются в коммерческом предложении.

### Есть ли песочница?

Тестовый доступ отправляет сообщения на ваши собственные подтверждённые номера через тот же API, так что до запуска в работу вы проверяете реальную доставку и статусы. Отдельной публичной песочницы и мгновенной самостоятельной регистрации нет.

Обновлено: 2026-10-10