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 Array Direction направление сообщения
billing_status Array BillingStatus статус оплаты сообщения
delivery_status Array DeliveryStatus статус доставки сообщения
status Array Status статус сообщения (объединяет в себе доставку и оплату)
date_gte string дата последнего изменения статуса сообщения в формате RFC-3339 / ISO-8601, с которой начинать выборку сообщений
date_lte string дата последнего изменения статуса сообщения в формате RFC-3339 / ISO-8601, до которой продолжать выборку сообщений
date_sent_received_gte string дата отправки исходящего/получения входящего сообщения в формате RFC-3339 / ISO-8601, с которой начинать выборку сообщений
date_sent_received_lte string дата отправки исходящего/получения входящего сообщения в формате RFC-3339 / ISO-8601, до которой продолжать выборку сообщений
receiver string номер получателя
sender string номер отправителя / имя отправителя
receiver_mcc string MCC-код оператора получателя, формат: 250
receiver_mnc string MNC-код оператора получателя, формат: 42
receiver_mobile_operator string оператор получателя, формат: MTT
category Array CategoryType категория сообщения, подробнее

Direction

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

BillingStatus

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

DeliveryStatus

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

Status

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

CategoryType

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

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

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

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

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

Примеры

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

{
    "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",
    "date_sent_received_gte":"2023-01-20T11:30:01.335Z",
    "date_sent_received_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 int64 идентификатор сообщения (указывается, если нужна информация по одному сообщению)
limit uint32 лимит выводимых строк
offset uint64 номер строки, с которой начинать выборку (начинается с 0)
number string номер телефона / имя отправителя
direction Array Direction направление сообщения
delivery_status Array DeliveryStatus статус доставки сообщения
billing_status Array BillingStatus статус оплаты сообщения
status Array Status (объединяет в себе доставку и оплату)
date_gte string дата последнего изменения статуса сообщения в формате RFC-3339 / ISO-8601, с которой начинать выборку сообщений
date_lte string дата последнего изменения статуса сообщения в формате RFC-3339 / ISO-8601, до которой продолжать выборку сообщений
date_sent_received_gte string дата отправки исходящего/получения входящего сообщения в формате RFC-3339 / ISO-8601, с которой начинать выборку сообщений
date_sent_received_lte string дата отправки исходящего/получения входящего сообщения в формате RFC-3339 / ISO-8601, до которой продолжать выборку сообщений
receiver string номер получателя
sender string номер отправителя / имя отправителя
receiver_mcc string MCC-код оператора получателя, формат: 250
receiver_mnc string MNC-код оператора получателя, формат: 42
receiver_mobile_operator string оператор получателя, формат: MTT
category Array CategoryType категория сообщения, подробнее
sort Array SortOrder сортировка по дате отправки сообщения или по количеству сегментов (можно применить только один тип сортировки)
receiver string номер получателя
campaign_id string идентификатор рассылки, в рамках которой было отправлено SMS
campaign_name string название рассылки, в рамках которой было отправлено SMS

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

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

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


CategoryType

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

SortOrder

Параметр Тип Описание
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
date_sent_received string дата и время отправки исходящего/получения входящего сообщения в формате RFC-3339 / ISO-8601
number string номер телефона / имя отправителя
sender string номер отправителя / имя отправителя
receiver string номер получателя
text string текст сообщения
direction Array Direction направление сообщения
segments_count uint32 количество сегментов в сообщении
billing_status Array BillingStatus статус оплаты сообщения
delivery_status Array DeliveryStatus статус доставки сообщения
status Array Status общий статус, объединяет в себе статус доставки и оплаты сообщения
channel Array Channel канал, в котором отправлено / получено сообщение
category Array 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
campaign_id string идентификатор рассылки, в рамках которой было отправлено SMS
campaign_name string название рассылки, в рамках которой было отправлено SMS

Direction

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

BillingStatus

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

DeliveryStatus

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

Status

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

Channel

Параметр Тип Описание
1 enum SMS

CategoryType

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

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

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

Примеры

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

{
    "message_id": 535103102366598674,
    "limit": 100,
    "offset": 0,
    "number": "79813330013",
    "sender": "79813340013",
    "direction": 2,
    "delivery_status": 3,
    "billing_status": 2,
    "status": 3,
    "date_gte": "2024-10-01T10:00:56.759Z",
    "date_lte": "2024-12-10T10:00:56.759Z",
    "date_sent_received_gte":"2023-01-20T11:30:01.335Z",
    "date_sent_received_lte":"2023-01-20T11:39:01.335Z",
    "receiver": "79873558880",
    "receiver_mcc": "250",
    "receiver_mnc": "1",
    "receiver_mobile_operator": "MTS",
    "category": 1,
    "campaign_id": "12345",
    "campaign_name": "test",
    "sort": {
        "order_by_date": 1
    }
}

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

{
    "messages": [
        {
            "message_id": "535103152366598674",
            "application_uuid": "6cb49297-8cd2-4f34-8e8b-856679a82437",
            "date": "2024-10-09T12:12:18.303Z",
            "date_sent_received": "2024-10-09T12:12:18.303Z",
            "number": "79813330013",
            "sender": "79813340013",
            "receiver": "79873558880",
            "text": "МТС Exolve — конструктор омниканальных диалогов для бизнеса",
            "direction": 2,
            "segments_count": 1,
            "billing_status": 2,
            "delivery_status": 3,
            "channel": 1,
            "status": 3,
            "sender_mcc": "250",
            "sender_mnc": "42",
            "sender_mobile_operator": "MTT",
            "receiver_mcc": "250",
            "receiver_mnc": "1",
            "receiver_mobile_operator": "MTS",
            "campaign_id": "12345",
            "campaign_name": "test",
            "category": 1
        }
    ]
}

Метод 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 Ростелеком
7 enum Прочие операторы РФ
8 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 содержат коды, пароли, логины и т.д.
  • Сервисные SMS уведомляют о доставке товара, напоминают о предстоящих мероприятиях или сообщают о результатах рассмотрения обращений
  • Транзакционные 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

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