API для отправки SMS

Инструкции для подключения шлюза

Протестируйте API бесплатно, Вам будет начислен тестовый баланс — 50 руб., создайте аккаунт на платформе и следуйте инструкциям ниже

Как начать?

  1. Зарегистрируйте аккаунт на платформе
  2. Добавьте необходимый отправитель в личном кабинете в разделе "Отправители".
  3. Привяжите Ваш номер телефона в личном кабинете в разделе "Настройки" - "Контактная информация и общие настройки"
  4. Активируйте API шлюз. Как включить?
  5. Протестируйте отправку SMS, воспользуйтесь одним из готовых модулей или примеров, либо напишите свой обработчик, для этого используйте документацию.
Отправка SMS (метод push_msg)


Вызов методов осуществляется посредством GET или POST HTTPS-запросов к серверу:

Адрес сервера: ssl.bs00.ru
Порт (протокол): 443 (HTTPS)
Метод: GET или POST
Кодировка для запроса: UTF-8

В GET- или POST-переменных запроса передаются аргументы:
method - вызываемый метод.
- набор переменных, зависящий от конкретного метода (см. ниже).
format - (необязательный) формат выходных данных (XML, JSON), без указания этого параметра, по умолчанию данные выдаются в формате XML.
Список всех параметров можно посмотреть в таблице

Пример GET HTTP запроса, который Вы можете выполнить в браузере

https://ssl.bs00.ru/?method=push_msg&key=YOUR_API_KEY&text=SMS_TEXT&phone=SMS_PHONE_NUMBER_OF_THE_RECIPIENT&sender_name=MyBrandName

где
YOUR_API_KEY – API Key
SMS_TEXT – Текст SMS сообщения
SMS_PHONE_NUMBER_OF_THE_RECIPIENT – Номер телефона получателя SMS, в любом формате
MyBrandName – Буквенное имя отправителя, добавленное в раздел "Отправители".
Все методы возвращают ответ (XML или JSON):

msg - сообщение о выполнении действия в виде массива с ключами:
err_code - числовой код ошибки (0 - нет ошибок),
text - текстовое сообщение,
type - тип сообщения (message – нет ошибок, notice и error – ошибки).
data - запрашиваемые данные в виде массива.
Примеры ответа сервера в случае ошибки (err_code > 0)
в формате XML (формат ответа задается при запросе параметром format=XML)

/* XML */
<response>
	<msg>
	    <err_code>5</err_code>
	    <text>Неизвестный метод</text>
	    <type>error</type>
	</msg>
	<data/>
</response>
в формате JSON (формат ответа задается при запросе параметром format=JSON)

/* JSON */
{
  "response": {
	"msg":{
	   "err_code":"5",
	   "text":"Неизвестный метод",
	   "type":"error"
	},
	"data":null
  }
}
Список кодов ошибок, которые возвращает параметр err_code можно посмотреть по ссылке

Примеры ответа сервера в случае успешной отправки SMS (err_code = 0)
в формате XML (формат ответа задается при запросе параметром format=XML)

/* XML */
<response>
	<msg>
	     <err_code>0</err_code>
	     <text>OK</text>
	     <type>message</type>
	</msg>
	<data>
	     <id>21528183</id>
	     <credits>1.90</credits>
	     <n_raw_sms>1</n_raw_sms>
	     <sender_name>MyBrandName</sender_name>
	</data>
</response>
в формате JSON (формат ответа задается при запросе format=JSON)

/* JSON */
{
"response":{
	"msg":{
		"err_code":"0", /* err_code = 0, SMS принято успешно */
		"text":"OK",
		"type":"message"
		},
		"data":{
			"id":21528183, /* id на стороне шлюза */
			"credits":"1.90", /* стоимость */
			"n_raw_sms":1, /* количество сегментов */
			"sender_name":"MyBrandName" /* отправитель */
		}
	}
}