SMS API

SMS API — это определенный программный интерфейс, который позволяет приложениям отправлять SMS-сообщения.

Поскольку инфраструктуры для SMS-коммуникаций и Интернета в основном разделены, SMS API-интерфейсы часто используются для «преодоления разрыва» между сетями операторов связи и более широкой сетью. SMS API-интерфейсы используются, чтобы позволить веб-приложениям легко отправлять и получать текстовые сообщения с помощью логики, написанной для стандартных веб-фреймворков.

Также SMS API позволяет создавать сервисные SMS-рассылки на базе шаблонов. Такие рассылки информируют клиентов о статусе оказания им сервиса или услуги. Подробнее о шаблонах SMS вы можете узнать в нашей FAQ статье.

SMS API Exolve предлагает пользователям следующие методы для работы:

  • SendSMS - отправляет SMS-сообщение;

  • GetList - получает данные об отправленных и полученных SMS-сообщениях;

  • GetCount - получает количество отправленных и полученных SMS-сообщений по заданным параметрам;

  • GetAlphaNames - получает список всех созданных имён отправителя (альфа-имен);

  • CreateTemplate - создаёт SMS-шаблон;

  • GetTemplate - получает информацию об одном SMS-шаблоне;

  • GetTemplates - получает информацию обо всех SMS-шаблонах.

Решения, где используется SMS API

Попробовать бесплатно

Метод SendSMS

Примените этот метод для отправки SMS-сообщения c мобильного номера телефона или от имени отправителя (альфа-имени). Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.


Примечание
Отправка SMS с городских (ABC) или с федеральных номеров 8-800 невозможна, а доставка рассылок с мобильных номеров не гарантирована операторами. Сообщения с максимальной вероятностью будут доставлены, если отправлять их от индивидуального буквенного или буквенно-цифрового имени. Такое имя отправителя могут зарегистрировать только юрлица и ИП. Узнать подробнее можно здесь.


Точка подключения:

POST: https://api.exolve.ru/messaging/v1/SendSMS

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

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

Параметр Тип Описание
number string номер отправителя / имя отправителя (альфа-имя)
destination string номер получателя
text string текст сообщения
template_resource_id uint64 идентификатор ресурса шаблона

Примечание
С помощью персонального имени возможно отправлять не только рекламные, но и шаблонированные SMS. Они поддерживают переменные — можно обратиться к клиенту по имени, сообщить номер заказа или сумму покупки. Такие сообщения стоят дешевле, чем рекламные. Узнать подробнее о шаблонах можно здесь


Выходные параметры

Параметр Тип Описание
message_id string идентификатор сообщения

Возможные ошибки

Код Статус Пример сообщения Описание
404 Not Found page not found некорректно введен URL-адрес запроса
401 Unauthorized authorization token is invalid неправильно указан токен (API-ключ приложения)
400 Bad Request unknown field невалидный параметр
400 Bad Request syntax error синтаксическая ошибка
400 Bad Request invalid value невалидное значение в параметре
400 Bad Request fail to get number info/number does not belong to the client номер не принадлежит пользователю
400 Bad Request exceeded the limit of segments sms (maximum 10) превышено количество сегментов в сообщении, максимум — 10 сегментов
400 Bad Request destination is not permitted for delivery отправка сообщения с неактивированного аккаунта на неподтверждённый номер
400 Bad Request incorrect customer status нет доступа к отправке сообщений, т.к. аккаунт не активирован или заблокирован

Примеры

Входные параметры:

{
    "number": "79991112233",
    "destination": "79992223344",
    "text": "Test message"
}
{
    "number": "AlfaName",
    "destination": "79992223344",
    "text": "Test message",
    "template_resource_id": 136519
}

Выходные параметры:

{
    "message_id": "439166538239448536"
}

Метод GetCount

Примените этот метод для получения числа SMS-сообщений по заданным параметрам. Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/messaging/v1/GetCount

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Можно передать пустой запрос — тогда вы получите число всех SMS этого приложения без применения фильтров поиска.

Параметр Тип Описание
message_id string уникальный идентификатор сообщения (указывается, если нужна информация по одному сообщению)
limit uint32 лимит выводимых строк
offset uint64 номер строки, с которой начинать выборку (начинается с 0)
number string номер телефона / имя отправителя (альфа-имя)
direction enum Direction направление сообщения
delivery_status enum DeliveryStatus статус доставки сообщения
billing_status enum BillingStatus статус оплаты сообщения
status enum Status (объединяет в себе доставку и оплату)
date_gte string дата в формате RFC-3339 / ISO-8601, с которой начинать выборку сообщений
date_lte string дата в формате RFC-3339 / ISO-8601, до которой продолжать выборку сообщений

Direction

Параметр Тип Описание
1 string входящее сообщение
2 string исходящее сообщение

DeliveryStatus

Параметр Тип Описание
1 string сообщение поставлено в очередь на отправку
2 string сообщение доставлено в SMS-центр
3 string сообщение доставлено получателю
4 string сообщение не может быть доставлено получателю
5 string ошибка — закончились попытки переотправки сообщения
6 string приём и отправка сообщений заблокированы

BillingStatus

Параметр Тип Описание
1 string сообщение поставлено в очередь на обработку и оплату
2 string сообщение оплачено
4 string недостаточно средств на балансе для отправки сообщения
6 string ошибка оплаты сообщения
7 string плата за сообщение зарезервирована
8 string ошибка — закончились попытки оплаты сообщения

Status

Параметр Тип Описание
1 string сообщение в очереди на отправку
2 string сообщение отправлено
3 string сообщение доставлено
4 string не удалось отправить сообщение
5 string недостаточно средств на балансе для отправки сообщения
6 string прием и отправка сообщений заблокированы

Выходные параметры

Параметр Тип Описание
count int64 количество сообщений

Возможные ошибки

Код Статус Пример сообщения Описание
404 Not Found page not found некорректно введен URL-адрес запроса
401 Unauthorized authorization token is invalid неправильно указан токен (API-ключ приложения)
400 Bad Request unknown field невалидный параметр
400 Bad Request syntax error синтаксическая ошибка
400 Bad Request invalid value невалидное значение в параметре

Примеры

Входные параметры:

{
    "message_id": "444067567615608452",
    "limit": "10000",
    "offset": "0",
    "number": "79678880033",
    "direction": "2",
    "delivery_status": "3",
    "billing_status": "2",
    "status":"3",
    "date_gte":"2023-01-20T11:30:01.335Z",
    "date_lte":"2023-01-20T11:39:01.335Z"
}

Выходные параметры:

{
    "count": "1"
}

Метод GetList

Примените этот метод для получения информации об SMS-сообщениях по заданным параметрам. Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/messaging/v1/GetList

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие параметры в теле запроса в JSON-формате. Можно передать пустой запрос — тогда вы получите информацию обо всех SMS этого приложения без применения фильтров поиска.

Параметр Тип Описание
message_id string уникальный идентификатор сообщения (указывается, если нужна информация по одному сообщению)
limit uint32 лимит выводимых строк
offset uint64 номер строки, с которой начинать выборку (начинается с 0)
number string номер телефона / имя отправителя
direction enum Direction направление сообщения
delivery_status enum DeliveryStatus статус доставки сообщения
billing_status enum BillingStatus статус оплаты сообщения
status enum Status (объединяет в себе доставку и оплату)
date_gte string дата в формате RFC-3339 / ISO-8601, с которой начинать выборку сообщений
date_lte string дата в формате RFC-3339 / ISO-8601, до которой продолжать выборку сообщений
sort Array OrderBy сортировка по дате отправки сообщения или по количеству сегментов (можно применить только один тип сортировки)
receiver_mcc string MCC-код оператора получателя сообщения, формат: 250
receiver_mnc string MNC-код оператора получателя сообщения, формат: 42
receiver_mobile_operator string оператор получателя сообщения, формат: MTT
category enum CategoryType категория сообщения, подробнее
receiver string номер получателя сообщения

MCC/MNC коды оператора

  • MCC (Mobile Country Code) — код страны, в которой находится оператор мобильной связи. Состоит из 3 цифр.
  • MNC (Mobile Network Code) — код мобильной сети (оператора), следует после MCC. Состоит из 2 или 3 цифр, уникален для каждого оператора он уникален.

Комбинация MCC + MNC + наименование оператора позволяет однозначно определить сеть. Эти коды унифицированы — вы можете воспользоваться любым справочником, чтобы найти нужный код.


CategoryType

Параметр Тип Описание
0 string категория не указана
1 string сообщение с мобильного номера
2 string рекламное сообщение от имени отправителя
3 string авторизационное сообщение от имени отправителя
4 string сервисное сообщение от имени отправителя
5 string транзакционное сообщение от имени отправителя

OrderBy

Параметр Тип Описание
order_by_date Array OrderByDate сортировка по дате отправки
order_by_segments_count Array OrderBySegmentsCount сортировка по количеству сегментов в сообщении

OrderByDate/OrderBySegmentsCount

Параметр Тип Описание
1 enum ascending order (по возрастанию)
2 enum descending order (по убыванию) — по умолчанию для даты

Выходные параметры

Параметр Тип Описание
messages JSON Array список сообщений
message_id int64 уникальный идентификатор сообщения
application_uuid string уникальный идентификатор приложения, через которое отправляли / получали сообщения
date string дата отправки / получения сообщения в формате RFC-3339 / ISO-8601
number string номер телефона / имя отправителя
sender string номер отправителя / имя отправителя
receiver string номер получателя
text string текст сообщения
direction enum Direction направление сообщения
segments_count uint32 количество сегментов в сообщении
billing_status enum BillingStatus статус оплаты сообщения
delivery_status enum DeliveryStatus статус доставки сообщения
channel enum канал, в котором отправлено или получено сообщение
status enum Status общий статус, объединяет в себе статус доставки и оплаты сообщения
category enum CategoryType категория сообщения, подробнее
sender_mobile_operator string оператор отправителя сообщения, формат: MTT
sender_mcc string MCC-код оператора отправителя сообщения, формат: 250
sender_mnc string MNC-код оператора отправителя сообщения, формат 42
receiver_mobile_operator string оператор получателя сообщения, формат: MTT
receiver_mcc string MCC-код оператора получателя сообщения, формат: 250
receiver_mnc string MNC-код оператора получателя сообщения, формат: 42

Direction

Параметр Тип Описание
1 string входящее сообщение
2 string исходящее сообщение

BillingStatus

Параметр Тип Описание
1 string сообщение поставлено в очередь на обработку и оплату
2 string сообщение оплачено
4 string недостаточно средств на балансе для отправки сообщения
6 string ошибка оплаты сообщения
7 string плата за сообщение зарезервирована
8 string ошибка — закончились попытки оплаты сообщения

DeliveryStatus

Параметр Тип Описание
1 string сообщение поставлено в очередь на отправку
2 string сообщение доставлено в SMS-центр
3 string сообщение доставлено получателю
4 string сообщение не может быть доставлено получателю
5 string ошибка — закончились попытки переотправки сообщения
6 string приём и отправка сообщений заблокированы

Status

Параметр Тип Описание
1 string сообщение в очереди на отправку
2 string сообщение отправлено
3 string сообщение доставлено
4 string не удалось отправить сообщение
5 string недостаточно средств на балансе для отправки сообщения
6 string прием и отправка сообщений заблокированы

Возможные ошибки

Код Статус Пример сообщения Описание
404 Not Found page not found некорректно введен URL запроса
401 Unauthorized authorization token is invalid неправильно указан токен (API-ключ приложения)
400 Bad Request unknown field невалидный параметр
400 Bad Request syntax error синтаксическая ошибка
400 Bad Request invalid value невалидное значение в параметре

Примеры

Входные параметры:

{
    "message_id": "444067567615608452",
    "limit": "10000",
    "offset": "0",
    "number": "79678880033",
    "direction": "2",
    "delivery_status": "3",
    "billing_status": "2",
    "status":"3",
    "date_gte":"2023-01-20T11:30:01.335Z",
    "date_lte":"2023-01-20T11:39:01.335Z",
    "sort": {
        "order_by_segments_count": 1
        },
    "receiver_mobile_operator": "MTT",
    "receiver_mcc": "250",
    "receiver_mnc": "42",
    "category ": "1",
    "receiver": "79678880033"
}

Выходные параметры:

{
    "messages": [
        {
            "message_id": "444067567615608452",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-01-20T11:35:01.335Z",
            "number": "79679990044",
            "sender": "79679990044",
            "receiver": "79678880033",
            "text": "Test message",
            "direction": 2,
            "segments_count": 1,
            "billing_status": 2,
            "delivery_status": 3,
            "channel": 1,
            "status": 3,
            "category ": "1",
            "receiver_mobile_operator": "MTT",
            "receiver_mcc": "250",
            "receiver_mnc": "42"
        }
    ]
}

Метод GetAlphaNames

Примените этот метод для получения списка созданных имен отправителя (альфа-имен). Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/messaging/v1/GetAlphaNames

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте пустой JSON.

Выходные параметры

Параметр Тип Описание
alpha_names array AlphaName список всех имен отправителя (альфа-имен)

AlphaName

Параметр Тип Описание
resource_id uint64 уникальный идентификатор имени отправителя (альфа-имени)
name string имя отправителя (альфа-имя)
status enum AlphaNameStatus статус имени отправителя (альфа-имени)
operators array AlphaNameOperator статусы согласования имён отправителя (альфа-имён) с операторами
activation_date string дата активации имени отправителя (альфа-имени) в формате RFC-3339 / ISO-8601

AlphaNameStatus

Параметр Тип Описание
1 enum имя отправителя (альфа-имя) активно и готово к использованию
2 enum имя отправителя (альфа-имя) неактивно
3 enum имя отправителя (альфа-имя) отключено

AlphaNameOperator

Параметр Тип Описание
operator enum Operator имя оператора
status enum ApprovalStatus статус согласования имя отправителя (альфа-имени) с оператором
subscription_fee float абонентская плата

Operator

Параметр Тип Описание
0 enum нет имени оператора
1 enum МТС
2 enum Мегафон
3 enum Билайн
4 enum Теле2
5 enum Смартс
6 enum Ростелеком

ApprovalStatus

Параметр Тип Описание
0 enum статус согласования неизвестен
1 enum имя отправителя (альфа-имя) на согласовании у оператора
2 enum имя отправителя (альфа-имя) согласовано с оператором
3 enum имя отправителя (альфа-имя) отклонено оператором
4 enum имя отправителя (альфа-имя) отключено

Пример

Входные параметры:

{}

Выходные параметры:

{
    "alpha_names": [
        {
            "resource_id": "113441",
            "name": "Test1",
            "status": 2, // неактивно
            "operators": [
                {
                    "operator": 1, // МТС
                    "status": 1 // на согласовании
                }
            ]
        },
        {
            "resource_id": "113440",
            "name": "Test2",
            "status": 1, // активно
            "operators": [
                {
                    "operator": 1, // МТС
                    "status": 2, // согласовано 
                    "subscription_fee": 2500
                },
                {
                    "operator": 2, // Мегафон
                    "status": 3 // отклонено
                }
            ],
            "activation_date": "2023-07-25T12:56:48.890632Z"
        }
   ]
}

Метод CreateTemplate

Примените этот метод для создания SMS-шаблона. Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/messaging/v1/CreateTemplate

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

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

Параметр Тип Описание
template_name string название шаблона
alpha_name string имя отправителя (альфа-имя)
template_text string текст шаблона
example_text string пример текста шаблона
template_category enum TemplateCategory категория шаблона

TemplateCategory

Параметр Тип Описание
category_type enum CategoryType тип шаблона
operators enum Operators операторы связи

CategoryType

Параметр Тип Описание
1 enum авторизационный
2 enum сервисный
3 enum транзакционный

Operators

Параметр Тип Описание
1 enum МТС
2 enum МегаФон
3 enum Билайн
4 enum Теле2
6 enum Ростелеком

Соотношение категорий к операторам

Авторизационный Сервисный Транзакционный
МТС
МегаФон
Билайн
Tele2
Ростелеком

Для каждого оператора можно выбрать только одну категорию:

  • Авторизационными признаются SMS, содержащие коды, пароли, логины, OTP (one-time password — одноразовые пароли) и т.д.
  • Сервисные SMS, как правило, уведомляют о доставке товара, напоминают о предстоящих мероприятиях или информируют о результатах рассмотрения обращений. Исключение — Tele2. Сервисное (идентификационное) SMS абонентам Tele2 должно содержать коды, пароли и логины для прохождения авторизации, верификации, подтверждения каких-либо действий или предоставления согласий.
  • Транзакционные SMS используются для информирования пользователей об операциях с денежными средствами, либо о невозможности выполнения такой операции.

Подробнее о требованиях к шаблонам можно прочитать здесь.

Выходные параметры

Параметр Тип Описание
template_resource_id uint64 идентификатор шаблона

Примеры

Входные параметры:

{
    "alpha_name": "SHOP",
    "template_name": "Доставка заказа",
    "template_text": "Заказ: %w{1,3} на сумму %d руб. Доставит курьер %w. Дата доставки: %w{1,2} с %d по %d",
    "example_text": "Заказ: 1234 на сумму 1000 руб. Доставит курьер Олег. Дата доставки: 12 мая с 15:00 по 20:00",
    "template_category": [
        {
            "template_category_type": 2, // сервисная
            "operators": [
                1, 3 // МТС, Билайн
            ]
        },
        {
            "template_category_type": 1, // авторизационная
            "operators": [
                2 // МегаФон
            ]
        }
    ]
}

Выходные параметры:

{
    "template_resource_id": 132637
}

Метод GetTemplate

Примените этот метод для получения информации об SMS-шаблоне. Для этого выполните POST-запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/messaging/v1/GetTemplate

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

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

Параметр Тип Описание
template_resource_id int64 идентификатор шаблона

Выходные параметры

Параметр Тип Описание
template Template данные о шаблоне

Template

Параметр Тип Описание
resource_id uint64 идентификатор шаблона
template_name string название шаблона
template_text string текст шаблона
example_text string пример текста шаблона
alpha_name string имя отправителя (альфа-имя)
alpha_name_resource_id uint64 идентификатор имени отправителя (альфа-имени)
operators TemplateOperators данные по операторам и категориям шаблона
history TemplateHistory история согласования шаблона у операторов
creation_date string дата создания в формате RFC-3339 / ISO-8601

TemplateOperators

Параметр Тип Описание
operator enum Operator название оператора
status enum Status статус согласования у оператора
template_category enum Category категория шаблона

Operator

Параметр Тип Описание
1 enum МТС
2 enum Мегафон
3 enum Билайн
4 enum Теле2
6 enum Ростелеком

Status

Параметр Тип Описание
1 enum на согласовании
2 enum согласован
3 enum отклонён
4 enum отключён

Category

Параметр Тип Описание
1 enum авторизационый
2 enum сервисный
3 enum транзакционный

TemplateHistory

Параметр Тип Описание
action string действие
status enum Status статус согласования у оператора
action_date string дата действия в формате RFC-3339 / ISO-8601
comment string комментарий к действию

Примеры

Входные параметры:

{
    "template_resource_id": "132680"
}

Выходные параметры:

{
    "template": {
        "resource_id": "132680",
        "template_name": "Заказ принят",
        "template_text": "Заказ: %w{1,n} %d на сумму %d руб принят. Планируемое время отгрузки в пункт выдачи: %d в интервале %d.",
        "example_text": "Заказ: SV TRT 860700 на сумму 7700 руб принят. Планируемое время отгрузки в пункт выдачи: 07.11.19 в интервале 17:00-20:00.",
        "alpha_name": "SHOP",
        "alpha_name_resource_id": "132669",
        "operators": [
            {
                "operator": 1,
                "status": 1,
                "template_category": 1
            }
        ],
        "history": [
            {
                "action": "МТС изменил статус на На согласовании",
                "status": 1,
                "action_date": "2023-10-30T16:36:36Z",
                "comment": ""
            }
        ],
        "creation_date": "2023-10-30T16:36:32.671312Z"
    }
}

Метод GetTemplates

Примените этот метод для получения информации обо всех SMS-шаблонах приложения. Для этого выполните POST запрос с входными параметрами к точке подключения, указанными ниже.

Точка подключения:

POST: https://api.exolve.ru/messaging/v1/GetTemplates

Авторизация

Передайте следующие Заголовки HTTP для успешной авторизации.

Имя Тип Описание
Authorization string API-ключ приложения с Bearer перед ним. Пример: Bearer e***s0, где e***s0 замените на API-ключ вашего приложения

Входные параметры

Передайте следующие необязательные параметры в теле запроса в JSON-формате.

Параметр Тип Описание
limit uint64 лимит выводимых строк
offset uint64 номер строки, с которой начинать выборку (начинается с 0)

Выходные параметры

Параметр Тип Описание
templates Templates массив с данными о шаблонах

Templates

Параметр Тип Описание
resource_id uint64 идентификатор шаблона
template_name string название шаблона
template_text string текст шаблона
alpha_name string имя отправителя (альфа-имя)
alpha_name_resource_id uint64 идентификатор имени отправителя (альфа-имени)
operators TemplateOperators данные по операторам и категориям шаблона
creation_date string дата создания в формате RFC-3339 / ISO-8601

TemplateOperators

Параметр Тип Описание
operator enum Operator название оператора
status enum Status статус согласования у оператора
template_category enum Category категория шаблона

Operator

Параметр Тип Описание
1 enum МТС
2 enum Мегафон
3 enum Билайн
4 enum Теле2
6 enum Ростелеком

Status

Параметр Тип Описание
1 enum на согласовании
2 enum согласован
3 enum отклонён
4 enum отключён

Category

Параметр Тип Описание
1 enum авторизационый
2 enum сервисный
3 enum транзакционный

Примеры

Входные параметры:

{}

Выходные параметры:

{
    "templates":[ 
        {
            "resource_id": "132680",
            "template_name": "Заказ принят",
            "template_text": "Заказ: %w{1,n} %d на сумму %d руб принят. Планируемое время отгрузки в пункт выдачи: %d в интервале %d.",
            "alpha_name": "SHOP",
            "alpha_name_resource_id": "132669",
            "operators": [
                {
                    "operator": 1,
                    "status": 1,
                    "template_category": 1
                }
            ],
            "creation_date": "2023-10-30T16:36:32.671312Z"
        },
        {
            "resource_id": "132683",
            "template_name": "Доставка заказа",
            "template_text": "Заказ: %w{1,3} на сумму %d руб. Доставит курьер %w. Дата доставки: %w{1,2} с %d по %d",
            "alpha_name": "SHOP",
            "alpha_name_resource_id": "132669",
            "operators": [
                {
                    "operator": 2,
                    "status": 1,
                    "template_category": 3
                },
                {
                    "operator": 3,
                    "status": 1,
                    "template_category": 3
                }
            ],
            "creation_date": "2023-10-30T16:36:32.671312Z"
        },
    ]
}

Параметры уведомлений о входящих и исходящих сообщениях

Параметр Тип Описание
event_id uint64 уникальный идентификатор события (отправка или получение SMS)
message_id uint64 уникальный идентификатор сообщения
application_id string уникальный идентификатор приложения, через которое прошло сообщение
date string дата отправки / получения сообщения в формате RFC-3339 / ISO-8601
sender string номер отправителя / имя отправителя (альфа-имя) сообщения
receiver string номер получателя сообщения
text string текст сообщения
direction enum Direction направление сообщения
segments_count uint32 количество сегментов в сообщении
billing_status enum BillingStatus статус оплаты сообщения
delivery_status enum DeliveryStatus статус доставки сообщения
status enum Status общий статус сообщения (объединяет в себе доставку и оплату)
message_channel enum MessageChannel канал, в котором отправлено или получено сообщение

Direction

Параметр Тип Описание
DIRECTION_INCOMING string входящее сообщение
DIRECTION_OUTGOING string исходящее сообщение

BillingStatus

Параметр Тип Описание
BILLING_STATUS_PREBILLED string сообщение поставлено в очередь на обработку и оплату
BILLING_STATUS_BILLED string сообщение оплачено
BILLING_STATUS_UNDERFUNDED string недостаточно средств на балансе для отправки сообщения
BILLING_STATUS_FAILED string ошибка оплаты сообщения
BILLING_STATUS_AUTHORIZED string плата за сообщение зарезервирована
BILLING_STATUS_RETRIES_EXCEEDED string ошибка — закончились попытки переотправки сообщения

DeliveryStatus

Параметр Тип Описание
DELIVERY_STATUS_QUEUED string сообщение поставлено в очередь на отправку
DELIVERY_STATUS_TRANSMITTED string сообщение передано в SMS-центр
DELIVERY_STATUS_DELIVERED string сообщение доставлено получателю
DELIVERY_STATUS_FAILED string сообщение не может быть доставлено получателю
DELIVERY_STATUS_RETRIES_EXCEEDED string ошибка — закончились попытки переотправки сообщения
DELIVERY_STATUS_PROHIBITED string приём и отправка сообщений заблокированы

Status

Параметр Тип Описание
STATUS_QUEUED string сообщение в очереди на отправку
STATUS_TRANSMITTED string сообщение отправлено в SMS-центр
STATUS_DELIVERED string сообщение доставлено получателю
STATUS_FAILED string не удалось отправить сообщение
STATUS_UNDERFUNDED string недостаточно средств на балансе для отправки сообщения
STATUS_PROHIBITED string прием и отправка сообщений заблокированы

MessageChannel

Параметр Тип Описание
MESSAGE_CHANNEL_SMS string SMS-сообщение

Примеры

Исходящие сообщения

{
            "event_id": "449727651343549249",
            "message_id": "449727651326723744",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-02-28T12:42:49.040913196Z",
            "sender": "79999999999",
            "receiver": "79133333333",
            "text": "Test events",
            "direction": "DIRECTION_OUTGOING",
            "segments_count": 1,
            "billing_status": "BILLING_STATUS_PREBILLED",
            "delivery_status": "DELIVERY_STATUS_QUEUED",
            "message_channel": "MESSAGE_CHANNEL_SMS",
            "status": "STATUS_QUEUED"
}
{
            "event_id": "449727651444212545",
            "message_id": "449727651326723744",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-02-28T12:42:49.107040342Z",
            "sender": "79999999999",
            "receiver": "79133333333",
            "text": "Test events",
            "direction": "DIRECTION_OUTGOING",
            "segments_count": 1,
            "billing_status": "BILLING_STATUS_AUTHORIZED",
            "delivery_status": "DELIVERY_STATUS_QUEUED",
            "message_channel": "MESSAGE_CHANNEL_SMS",
            "status": "STATUS_QUEUED"
}
{
            "event_id": "449727651460989761",
            "message_id": "449727651326723744",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-02-28T12:42:49.113153506Z",
            "sender": "79999999999",
            "receiver": "79133333333",
            "text": "Test events",
            "direction": "DIRECTION_OUTGOING",
            "segments_count": 1,
            "billing_status": "BILLING_STATUS_AUTHORIZED",
            "delivery_status": "DELIVERY_STATUS_TRANSMITTED",
            "message_channel": "MESSAGE_CHANNEL_SMS",
            "status": "STATUS_TRANSMITTED"
}
{
            "event_id": "449727651528098625",
            "message_id": "449727651326723744",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-02-28T12:42:49.157362833Z",
            "sender": "79999999999",
            "receiver": "79133333333",
            "text": "Test events",
            "direction": "DIRECTION_OUTGOING",
            "segments_count": 1,
            "billing_status": "BILLING_STATUS_BILLED",
            "delivery_status": "DELIVERY_STATUS_TRANSMITTED",
            "message_channel": "MESSAGE_CHANNEL_SMS",
            "status": "STATUS_TRANSMITTED"
}
{
            "event_id": "449727659866374977",
            "message_id": "449727651326723744",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-02-28T12:42:54.117363454Z",
            "sender": "79999999999",
            "receiver": "79133333333",
            "text": "Test events",
            "direction": "DIRECTION_OUTGOING",
            "segments_count": 1,
            "billing_status": "BILLING_STATUS_BILLED",
            "delivery_status": "DELIVERY_STATUS_DELIVERED",
            "message_channel": "MESSAGE_CHANNEL_SMS",
            "status": "STATUS_DELIVERED"
}

Входящие сообщения

{
            "event_id": "449727660168364865",
            "message_id": "449727659849588395",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-02-28T12:42:54.298316597Z",
            "sender": "79133333333",
            "receiver": "79999999999",
            "text": "Test events",
            "direction": "DIRECTION_INCOMING",
            "segments_count": 1,
            "billing_status": "BILLING_STATUS_PREBILLED",
            "delivery_status": "DELIVERY_STATUS_DELIVERED",
            "message_channel": "MESSAGE_CHANNEL_SMS",
            "status": "STATUS_DELIVERED"
}
{
            "event_id": "449727660302582593",
            "message_id": "449727659849588395",
            "application_id": "74caefbc-5615-49db-aca1-07ba829e728c",
            "date": "2023-02-28T12:42:54.381193714Z",
            "sender": "79133333333",
            "receiver": "79999999999",
            "text": "Test events",
            "direction": "DIRECTION_INCOMING",
            "segments_count": 1,
            "billing_status": "BILLING_STATUS_BILLED",
            "delivery_status": "DELIVERY_STATUS_DELIVERED",
            "message_channel": "MESSAGE_CHANNEL_SMS",
            "status": "STATUS_DELIVERED"
}

Решения, где используется SMS API

Попробовать бесплатно