SMS API — это программный интерфейс, который позволяет приложениям отправлять и получать SMS-сообщения, а также получать отчёты о доставке и статистические данные. Решение легко интегрируется в любые бизнес-системы и подходит для уведомлений, подтверждений операций и маркетинговых рассылок.
SMS можно отправлять не только с использованием мобильного номера, но и от индивидуального имени, отражающего название компании. Отправка от согласованного операторами имени обеспечивает максимальную гарантию доставки сообщений и позволяет запускать шаблонные рассылки с кодами подтверждения, уведомлениями о доставке и финансовых операциях.
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 |
текст сообщения |
Примечание
С помощью имени отправителя возможно отправлять не только рекламные, но и шаблонированные SMS. Они поддерживают переменные — можно обратиться к клиенту по имени, сообщить номер заказа или сумму покупки. Такие сообщения стоят дешевле, чем рекламные. Узнать подробнее о шаблонах можно здесь
Для отправки шаблонированного SMS не нужно указывать идентификатор шаблона. Подходящий шаблон будет найден и использован во время отправки при условии согласования операторами и соответствия текста SMS шаблону. В выходных параметрах в таком случае будет указан идентификатор использованного шаблона.
Требования к оформлению шаблонов можно посмотреть здесь.
Во время тестового периода текст отправленного SMS (параметр text) автоматически меняется на “Это тестовое SMS от МТС Exolve. Подпишите договор, чтобы изменить текст на свой”. Какие есть ограничения на тестовом аккаунте можно посмотреть здесь.
Выходные параметры
Параметр |
Тип |
Описание |
message_id |
string |
идентификатор сообщения |
template_resource_id |
uint64 |
идентификатор шаблона, указывается при отправке шаблонированного SMS |
Возможные ошибки
Код |
Статус |
Пример сообщения |
Описание |
404 |
Not Found |
page not found |
некорректно введен URL-адрес запроса |
401 |
Unauthorized |
authorization token is invalid |
неправильно указан токен (API-ключ приложения) |
400 |
Bad Request |
unknown field |
невалидный параметр |
400 |
Bad Request |
text does not match the template |
текст сообщения не соответствует указанному при отправке шаблону |
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"
}
Выходные параметры:
{
"message_id": "439166538239448536",
"template_resource_id": 136519
}
Метод 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, 9 |
enum |
сообщение поставлено в очередь на обработку и оплату |
2, 10 |
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"
}
Выходные параметры:
Метод 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, 9 |
enum |
сообщение поставлено в очередь на обработку и оплату |
2, 10 |
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 |
5 |
enum |
Смартс, Мотив |
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 |
5 |
enum |
Смартс, Мотив |
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) |
resource_id |
uint64 |
идентификатор шаблона |
template_name |
string |
название шаблона |
alpha_name |
string |
имя отправителя |
Выходные параметры
Параметр |
Тип |
Описание |
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 |
5 |
enum |
Смартс, Мотив |
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 |
количество сегментов в сообщении |
delivery_status |
enum DeliveryStatus |
статус доставки сообщения |
status |
enum Status |
общий статус сообщения (объединяет в себе доставку и оплату) |
message_channel |
enum MessageChannel |
канал, в котором отправлено или получено сообщение |
Direction
Параметр |
Тип |
Описание |
DIRECTION_INCOMING |
string |
входящее сообщение |
DIRECTION_OUTGOING |
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,
"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,
"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,
"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,
"delivery_status": "DELIVERY_STATUS_DELIVERED",
"message_channel": "MESSAGE_CHANNEL_SMS",
"status": "STATUS_DELIVERED"
}
Решения, где используется SMS API
Попробовать бесплатно