SMS.RU API: Подтвердить номер телефона звонком

Сценарий из mcp-everything. Актуально на 2026-10-24.

Бесплатная для пользователя альтернатива SMS-коду: он звонит на выданный номер, звонок сбрасывается, номер подтверждён.

  1. Запусти проверку: GET /callcheck/add с phone — номером пользователя — и ip пользователя. В ответе check_id и call_phone_pretty — номер, на который нужно позвонить.
  2. Покажи пользователю номер и попроси позвонить в течение 5 минут. Звонок бесплатный, система сама его сбросит.
  3. Проверяй результат: GET /callcheck/status с check_id раз в несколько секунд или получай статус вебхуком. check_status = 401 — номер подтверждён, 400 — ещё нет.
  4. Ошибка 402 значит, что время проверки истекло или check_id неверный — запусти проверку заново.
curl -G https://sms.ru/callcheck/add -d api_id=<api_id> -d phone=79991234567 -d ip=203.0.113.7 -d json=1
# в ответе: check_id и call_phone_pretty — номер, на который пользователь должен позвонить

curl -G https://sms.ru/callcheck/status -d api_id=<api_id> -d check_id=<check_id> -d json=1
# → check_status: 401 — номер подтверждён

Базовые URL

Авторизация

Тип: API-ключ

Рекомендуемый способ — параметр api_id (выдаётся на главной странице личного кабинета). Альтернатива — login (номер телефона) и password; в этом случае обязательно HTTPS.

Методы сценария

GET /callcheck/add — Авторизация по звонку: запуск

Пользователь должен позвонить на выданный номер в течение 5 минут; звонок бесплатный, система его сбрасывает. В JSON-ответе: check_id, call_phone, call_phone_pretty, call_phone_html.

Параметр Где Тип Обяз. Описание
api_id query string да Ключ API
phone query string да Номер пользователя, с которого ожидается звонок
ip query string нет IP пользователя (из-за границы выдаётся обычный номер вместо 8-800)
json query integer нет 1 — ответ в JSON

Пример запроса:

https://sms.ru/callcheck/add?api_id=[зарегистрируйтесь, чтобы получить api_id]&phone=79255070602&json=1

GET /callcheck/status — Авторизация по звонку: статус

В JSON-ответе: check_status (400 — не подтверждён, 401 — подтверждён), check_status_text.

Параметр Где Тип Обяз. Описание
api_id query string да Ключ API
check_id query string да ID из callcheck/add
json query integer нет 1 — ответ в JSON

Пример запроса:

https://sms.ru/callcheck/status?api_id=[зарегистрируйтесь, чтобы получить api_id]&check_id=[идентификатор авторизации]&json=1

Нюансы

Другие сценарии


Если этого недостаточно — официальная документация: https://sms.ru/api Вся интеграция одним документом: https://mcp-everything.ru/integrations/sms-ru.md