Интеграция с сервисом (API)

API позволяет рассылать сообщения через ваши проекты и сервисы по протоколам HTTP/HTTPS, SMTP и SMPP. Готовые библиотеки на разных языках программирования подключаются к вашему проекту и помогают отправлять сообщения из любого места с помощью одной команды. Для упрощенной авторизации вместо пары логин и пароль можно использовать специальный API-ключ.


HTTP/HTTPS SMTP SMPP SOAP OMS SMS-команды Библиотеки и примеры кода

ОТПРАВКА СООБЩЕНИЙ

Отправка SMS-сообщения

Комментарии в SMS-сообщениях

Отправка на группу номеров

Отправка HLR-запроса

Отправка e-mail сообщения

Отправка голосового сообщения (звонок)

Отправка viber-сообщения

Отправка сообщения в Telegram

Отправка сообщения в чат-бот Telegram

Использование префиксов при отправке сообщений

Управление шаблонами сообщений

Управление шаблонами операторов

Виртуальная отправка (режим тестирования)

Уведомления о событиях

УПРАВЛЕНИЕ РАССЫЛКАМИ

СТАТУСЫ СООБЩЕНИЙ

ПРОВЕРКА СОСТОЯНИЯ БАЛАНСА

УПРАВЛЕНИЕ КОНТАКТАМИ

УПРАВЛЕНИЕ КЛИЕНТАМИ

УПРАВЛЕНИЕ ИМЕНАМИ ОТПРАВИТЕЛЕЙ (SENDER ID)

ПОЛУЧЕНИЕ ДАННЫХ

РАЗНОЕ

Ответ сервера и коды ошибок

В случае ошибки Сервер возвращает следующую строку:
  • ERROR = N (описание)

  • При fmt = 1:
    0,-N

  • При fmt = 2:
    <result>
    <error>описание</error>
    <error_code>N</error_code>
    </result>

  • При fmt = 3:
    {
    "error": "описание",
    "error_code": N
    }
N – номер ошибки, может принимать следующие значения:

ЗначениеОписание
1Ошибка в параметрах.
2Неверный логин или пароль. Также возникает при попытке отправки сообщения с IP-адреса, не входящего в список разрешенных Клиентом (если такой список был настроен Клиентом ранее).
3Имя отправителя не найдено.
4IP-адрес временно заблокирован.
5Ошибка сохранения или удаления имени отправителя.
7Неверный формат номера.
8Код подтверждения на указанный номер не может быть доставлен.
9Попытка отправки более трех одинаковых запросов на получение списка доступных имен отправителей или пяти запросов на создание нового имени отправителя в течение минуты.
Данная ошибка возникает также при попытке отправки пятнадцати и более запросов одновременно с разных подключений под одним логином (too many concurrent requests).
10Код уже был отправлен на указанный номер. Повторная попытка возможна через 8 часов.
11Неверный код подтверждения.

В случае успешного запроса Сервер возвращает ответ в виде строки.

При запросе списка имен отправителей:
  • при fmt = 0 и all = 0:
    name = <sender>, id = <id>
    ...

  • при fmt = 1 и all = 0:
    <sender>,<id>
    ...

  • при fmt = 2 и all = 0:
    <list>
    <sender id="<id>">sender</sender>
    ...
    </list>

  • при fmt = 3 и all = 0:
    [{
    "sender": "<sender>",
    "id": <id>
    },
    ...]

  • при fmt = 0 и all = 1:
    name = <sender>, status = <status>, id = <id>
    ...

  • при fmt = 1 и all = 1:
    <sender>,<status>,<id>
    ...

  • при fmt = 2 и all = 1:
    <list>
    <sender status="<status>" id="<id>">sender</sender>
    ...
    </list>

  • при fmt = 3 и all = 1:
    [{
    "sender": "<sender>",
    "status": <status>,
    "id": <id>
    },
    ...]

  • при fmt = 0 и operators = 1:
    name = <sender>, mega_step = <mega_step_status>, bee_step = <bee_step_status>, motiv_step = <motiv_step_status>, sber_step = <sber_step_status>, winmob_step = <winmob_step>, volnamob_step = <volnamob_step>, mts_step = <mts_step_status>, tele2_step = <tele2_step_status>, tele2 = <tele2_status>, ua_reg = <ua_reg_status>, ua_int = <ua_int_status>, mega_int = <mega_int_status>, motiv_int = <motiv_int_status>, mts_int = <mts_int_status>, motiv = <motiv_status>, by_reg = <by_reg_status>, by_int = <by_int_status>, tele2_int = <tele2_int_status>, sber_int = <sber_int_status>, id = <id>
    ...

  • при fmt = 2 и operators = 1:
    <list>
    <sender mega_step="<mega_step_status>" bee_step="<bee_step_status>" motiv_step="<motiv_step_status>" sber_step="<sber_step_status>" winmob_step="<winmob_step_status>" volnamob_step="<volnamob_step_status>" mts_step="<mts_step_status>" tele2_step="<tele2_step_status>" tele2="<tele2_status>" ua_reg="<ua_reg_status>" ua_int="<ua_int_status>" mega_int="<mega_int_status>" motiv_int="<motiv_int_status>" mts_int="<mts_int_status>" motiv="<motiv_status>" by_reg="<by_reg_status>" by_int="<by_int_status>" tele2_int="<tele2_int_status>" sber_int="<sber_int_status>" id="<id>">sender</sender>
    ...
    </list>

  • при fmt = 3 и operators = 1:
    [{
    "sender": "<sender>",
    "mega_step": "<mega_step_status>",
    "mega_int": "<mega_int_status>",
    "bee_step": "<bee_step_status>",
    "motiv": "<motiv_status>",
    "motiv_step": "<motiv_step_status>",
    "motiv_int": "<motiv_int_status>",
    "sber_step": "<sber_step_status>",
    "sber_int": "<sber_int_status>",
    "winmob_step": "<winmob_step_status>",
    "volnamob_step": "<volnamob_step_status>",
    "mts_step": "<mts_step_status>",
    "mts_int": "<mts_int_status>",
    "tele2_step": "<tele2_step_status>",
    "tele2": "<tele2_status>",
    "tele2_int": "<tele2_int_status>",
    "ua_reg": "<ua_reg_status>",
    "ua_int": "<ua_int_status>",
    "by_reg": "<by_reg_status>",
    "by_int": "<by_int_status>",
    "id": "<id>"
    },
    ...]

Где:
<sender> – зарегистрированное и допущенное к использованию имя отправителя.
<mega_step_status>, <mega_int_status>, <bee_step_status>, <motiv_status>, <motiv_step_status>, <motiv_int_status>, <sber_step_status>, <sber_int_status>, <winmob_step_status>, <volnamob_step_status>, <mts_step_status>, <mts_int_status>, <tele2_step_status>, <tele2_status>, <tele2_int_status>, <ua_reg_status>, <ua_int_status>, <by_reg_status>, <by_int_status> – код статуса имени отправителя у соответствующего оператора (0 - ожидает регистрации, 1 - отправлено на регистрацию, 2 - допущено оператором, 3 - не принято оператором, 4 - временно отключено, 5 - недостаточно средств на счете, 8 - необходимы подтверждающие документы, 9 - активация с начала месяца), 255 - допущено, но помечено на снятие с регистрации).
<status> – статус имени отправителя (0 - ожидает модерации, 1 - допущено к использованию, 2 - выключено).
<id> – уникальный идентификатор имени отправителя (назначается Сервером автоматически при создании имени).

Если для какого-либо оператора имя отправителя имеет заменяющий аналог, то при operators = 1 и fmt = 0,2,3 в ответ сервера дополнительно будет включена данная замена.

При добавлении нового имени отправителя:
  • при fmt = 0: ID = <id>

  • при fmt = 1: <id>

  • при fmt = 2:
    <sender>
    <id>id</id>
    </sender>

  • при fmt = 3:
    {
    "sender": <id>
    }

Где:
<id> – идентификатор имени отправителя, назначенный Сервером автоматически.

При изменении имени отправителя, отправке кода, подтверждении и удалении имени отправителя:
  • при fmt = 0, 1: OK

  • при fmt = 2:
    <result>OK</result>

  • при fmt = 3:
    {
    "result": "OK"
    }