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 сообщений доступна только с мобильных номеров (DEF). Отправка SMS сообщений с городских (ABC) и 7800 номеров невозможна.
Точка подключения:
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 |
идентификатор ресурса шаблона |
Выходные параметры
Параметр |
Тип |
Описание |
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) |
превышено количество сегментов в сообщении |
400 |
Bad Request |
destination is not permitted for delivery |
отправка сообщения с неактивированного аккаунта на неподтвержденный номер |
400 |
Bad Request |
incorrect customer status |
нет доступа к отправке сообщений из-за статуса аккаунта пользователя (не активирован/заблокирован) |
Примеры
Входные параметры:
{
"number": "79991112233",
"destination": "79992223344",
"text": "Test message",
"template_resource_id": 136519
}
{
"number": "TestAlfaName",
"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 формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр |
Тип |
Описание |
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
Параметр |
Тип |
Описание |
DIRECTION_INCOMING = 1 |
string |
входящее сообщение |
DIRECTION_OUTGOING = 2 |
string |
исходящее сообщение |
DeliveryStatus
Параметр |
Тип |
Описание |
DELIVERY_STATUS_QUEUED = 1 |
string |
сообщение ожидает отправки в SMS-центр |
DELIVERY_STATUS_TRANSMITTED = 2 |
string |
сообщение отправлено в SMS-центр, SMS-центр назначил ему идентификатор (internal_id) |
DELIVERY_STATUS_DELIVERED = 3 |
string |
сообщение доставлено получателю (SMS-центр отправил уведомление о доставке) |
DELIVERY_STATUS_FAILED = 4 |
string |
сообщение не может быть доставлено получателю (SMS-центр отправил уведомление о недоставке) |
BillingStatus
Параметр |
Тип |
Описание |
BILLING_STATUS_PREBILLED = 1 |
string |
сообщение предоплачено |
BILLING_STATUS_BILLED = 2 |
string |
сообщение оплачено |
BILLING_STATUS_REFUNDING = 3 |
string |
оплата за сообщение будет возвращена |
BILLING_STATUS_UNDERFUNDED = 4 |
string |
недостаточно средств для отправки сообщения |
BILLING_STATUS_REFUNDED = 5 |
string |
оплата за сообщение возвращена |
BILLING_STATUS_FAILED = 6 |
string |
оплата за сообщение не прошла |
BILLING_STATUS_AUTHORIZED = 7 |
string |
оплата авторизована |
Status
Параметр |
Тип |
Описание |
STATUS_QUEUED = 1 |
string |
сообщение в очереди на отправку |
STATUS_TRANSMITTED = 2 |
string |
сообщение отправлено |
STATUS_DELIVERED = 3 |
string |
сообщение доставлено |
STATUS_FAILED = 4 |
string |
не удалось отправить сообщение |
STATUS_UNDERFUNDED = 5 |
string |
недостаточно средств на балансе для отправки сообщения |
STATUS_PROHIBITED = 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": "DIRECTION_OUTGOING",
"delivery_status": "DELIVERY_STATUS_DELIVERED",
"billing_status": "BILLING_STATUS_BILLED",
"status":"STATUS_DELIVERED",
"date_gte":"2023-01-20T11:30:01.335Z",
"date_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 формате. Параметры, отмеченные жирным шрифтом, являются обязательными.
Параметр |
Тип |
Описание |
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, до которой продолжать выборку сообщений |
Выходные параметры
Параметр |
Тип |
Описание |
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 |
тип мессенджера (сейчас поддерживается только 1 = SMS ) |
status |
enum Status |
общий статус, объединяет в себе статус доставки и биллинга сообщения |
Direction
Параметр |
Тип |
Описание |
DIRECTION_INCOMING = 1 |
string |
входящее сообщение |
DIRECTION_OUTGOING = 2 |
string |
исходящее сообщение |
DeliveryStatus
Параметр |
Тип |
Описание |
DELIVERY_STATUS_QUEUED = 1 |
string |
сообщение ожидает отправки в SMS-центр |
DELIVERY_STATUS_TRANSMITTED = 2 |
string |
сообщение отправлено в SMS-центр, SMS-центр назначил ему идентификатор (internal_id) |
DELIVERY_STATUS_DELIVERED = 3 |
string |
сообщение доставлено получателю (SMS-центр отправил уведомление о доставке) |
DELIVERY_STATUS_FAILED = 4 |
string |
сообщение не может быть доставлено получателю (SMS-центр отправил уведомление о недоставке) |
DELIVERY_STATUS_RETRIES_EXCEEDED = 5 |
string |
превышено количество попыток отправки сообщения |
DELIVERY_STATUS_PROHIBITED = 6 |
string |
прием и отправка сообщений заблокированы |
BillingStatus
Параметр |
Тип |
Описание |
BILLING_STATUS_PREBILLED = 1 |
string |
сообщение предоплачено |
BILLING_STATUS_BILLED = 2 |
string |
сообщение оплачено |
BILLING_STATUS_UNDERFUNDED = 4 |
string |
недостаточно средств для отправки сообщения |
BILLING_STATUS_FAILED = 6 |
string |
оплата за сообщение не прошла |
BILLING_STATUS_AUTHORIZED = 7 |
string |
оплата авторизована |
Status
Параметр |
Тип |
Описание |
STATUS_QUEUED = 1 |
string |
сообщение в очереди на отправку |
STATUS_TRANSMITTED = 2 |
string |
сообщение отправлено |
STATUS_DELIVERED = 3 |
string |
сообщение доставлено |
STATUS_FAILED = 4 |
string |
не удалось отправить сообщение |
STATUS_UNDERFUNDED = 5 |
string |
недостаточно средств на балансе для отправки сообщения |
STATUS_PROHIBITED = 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": "DIRECTION_OUTGOING",
"delivery_status": "DELIVERY_STATUS_DELIVERED",
"billing_status": "BILLING_STATUS_BILLED",
"status":"STATUS_DELIVERED",
"date_gte":"2023-01-20T11:30:01.335Z",
"date_lte":"2023-01-20T11:39:01.335Z"
}
Выходные параметры:
{
"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
}
]
}
Метод 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 |
Ростелеком |
Соотношение категорий к операторам
|
Авторизационный |
Сервисный |
Транзакционный |
МТС |
✅ |
✅ |
✅ |
Мегафон |
✅ |
✅ |
✅ |
Билайн |
❌ |
✅ |
✅ |
Теле2 |
❌ |
✅ |
✅ |
Ростелеком |
❌ |
✅ |
✅ |
Для каждого оператора можно выбрать только одну категорию.
Выходные параметры
Параметр |
Тип |
Описание |
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 в теле запроса.
Выходные параметры
Параметр |
Тип |
Описание |
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_OUTGOING |
string |
исходящее сообщение |
DIRECTION_INCOMING |
string |
входящее сообщение |
BillingStatus
Параметр |
Тип |
Описание |
BILLING_STATUS_PREBILLED |
string |
сообщение предоплачено (поставлено в очередь на обработку) |
BILLING_STATUS_AUTHORIZED |
string |
оплата за сообщение зарезервирована (отправка в SMS-центр) |
BILLING_STATUS_BILLED |
string |
сообщение оплачено (доставлено получателю) |
BILLING_STATUS_UNDERFUNDED |
string |
недостаточно средств для отправки сообщения |
BILLING_STATUS_FAILED |
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 |
сообщение отправлено |
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": "79677099159",
"receiver": "79677090942",
"text": "Тест 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": "79677099159",
"receiver": "79677090942",
"text": "Тест 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": "79677099159",
"receiver": "79677090942",
"text": "Тест 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": "79677099159",
"receiver": "79677090942",
"text": "Тест 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": "79677099159",
"receiver": "79677090942",
"text": "Тест 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": "79677099159",
"receiver": "79677090942",
"text": "Тест 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": "79677099159",
"receiver": "79677090942",
"text": "Тест 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
Попробовать бесплатно