Можно и POST. Обязательны login, psw и phones + mes (или list).
Расчёт стоимости без отправки — тот же запрос с cost=1.
Ответ при fmt=3: cost=0 — id, cnt; cost=1 — cost, cnt; cost=2 — id, cnt, cost; cost=3 — плюс balance.
| Параметр | Где | Тип | Обяз. | Описание |
|---|---|---|---|---|
login |
query | string | да | Логин (или apikey) |
psw |
query | string | да | Пароль |
phones |
query | string | да | Номера в международном формате через запятую или точку с запятой; также коды групп G<номер>, email, ник Telegram |
mes |
query | string | да | Текст, до 1000 символов |
id |
query | string | нет | ID сообщения клиента: число 1–2147483647 или строка до 40 символов |
sender |
query | string | нет | Зарегистрированное имя отправителя, до 11 символов или 15 цифр |
fmt |
query | integer | нет | Формат ответа: 0 строка, 1 числа, 2 XML, 3 JSON |
cost |
query | integer | нет | 0 отправить, 1 только стоимость, 2 отправить и вернуть стоимость, 3 + баланс |
charset |
query | string | нет | utf-8 или koi8-r (по умолчанию windows-1251) |
translit |
query | integer | нет | 0 нет, 1 translit, 2 mpaHc/Ium |
tinyurl |
query | integer | нет | 1 — сокращать ссылки |
time |
query | string | нет | Время отправки: DDMMYYhhmm, DD.MM.YY hh:mm, h1-h2, 0ts, +m |
tz |
query | string | нет | Часовой пояс относительно Москвы |
period |
query | number | нет | Растянуть рассылку на 0.1–720 часов (с freq) |
freq |
query | integer | нет | Интервал между частями рассылки, 1–1440 минут |
valid |
query | string | нет | Срок жизни: 1–24 часа или чч:мм |
maxsms |
query | integer | нет | Максимум частей в сообщении |
list |
query | string | нет | Пакет номер:сообщение, по одному в строке (%0A) |
flash |
query | integer | нет | 1 — Flash SMS |
hlr |
query | integer | нет | 1 — HLR-запрос без отправки SMS |
ping |
query | integer | нет | 1 — ping-SMS (невидимое) |
call |
query | integer | нет | 1 — голосовое сообщение |
voice |
query | string | нет | Голос: m, m2, m3, m4, w, w2, w3, w4 |
mail |
query | integer | нет | 1 — email (нужны subj и sender) |
subj |
query | string | нет | Тема MMS или email |
viber |
query | integer | нет | 1 — Viber |
tg |
query | integer | нет | 1 — код подтверждения в Telegram (4–8 цифр в mes) |
bot |
query | string | нет | Бот: Telegram @botname_bot, WhatsApp wa:номер |
fileurl |
query | string | нет | URL прикрепляемого файла |
err |
query | integer | нет | 1 — вернуть номера с ошибками |
op |
query | integer | нет | 1 — вернуть по номерам mccmnc, стоимость, статус, ошибку |
userip |
query | string | нет | IP пользователя для лимита сообщений на IP |
Пример запроса:
https://smsc.ru/sys/send.php?login=alex&psw=123&phones=79999999999&mes=Hello!
Пример ответа:
https://smsc.ru/sys/send.php?login=<login>&psw=<password>&phones=<phones>&mes=<message>&cost=1
https://smsc.ruhttps://www2.smsc.ruТип: API-ключ
Параметры login и psw (пароль создаётся или меняется на странице паролей в кабинете) либо apikey вместо пары логин/пароль. Если в кабинете задан список разрешённых IP, запросы с других адресов отклоняются с ошибкой 2.
fmt=0 — ERROR = N (описание), при fmt=1 — 0,-N, при fmt=3 — {"error": "...", "error_code": N}; для ошибок 3, 6, 7, 8 дополнительно возвращается id.__PING__, __CALL__, __HLR__, __auth__./sys/templates.php (шаблоны), /sys/op_templates.php (шаблоны операторов), /sys/jobs.php (рассылки), /sys/ping.php (уведомления).Если этого недостаточно — официальная документация: https://smsc.ru/api/http/ Вся интеграция одним документом: https://mcp-everything.ru/integrations/smsc.md