Запрос на отправку SMS#
Примеры запросов#
 1 {
 2     "messages": [
 3         {
 4             "from": "MyCompany",
 5             "to": "79034567890",
 6             "text": "Code: 1234"
 7         },
 8         {
 9             "from": "TAXI",
10             "to": " 89034567890",
11             "text": "Code: 1234"
12         }
13     ]
14 }
Примечание
Значения параметров scheduleInfo и useTimeDiff применяются для всего переданного пакета SMS-сообщений.
 1 {
 2 "useTimeDiff": true,
 3 "scheduleInfo": {
 4     "timeBegin": "10:00",
 5     "timeEnd": "12:00",
 6     "weekdaysSchedule": "123",
 7     "deadline": "2024-08-30T16:29:30+0300"
 8 },
 9
10 "messages": [
11         {
12             "from": "0000",
13             "to": "79034561231",
14             "text": "СМС сообщение 1",
15             "id": "super_id_1"
16         },
17         {
18             "from": "0000",
19             "to": "79034561232",
20             "text": "СМС сообщение 2",
21             "id": "super_id_2",
22             "validity": 60,
23             "priority": 1,
24             "callbackUrl": "http://url_Partner.ru"
25         },
26         {
27             "from": "0001",
28             "to": "79034561233",
29             "text": "СМС сообщение 3",
30             "id": "super_id_3",
31             "validity": 90,
32             "priority": 3,
33             "callbackUrl": "https://url_Partner.ru",
34         },
35         {
36             "from": "0002",
37             "to": "79034561234",
38             "text": "Текст. Follow link: <http://verylongurl.com/very/long/url>",
39             "id": "super_id_4"
40         }
41     ]
42 }
Параметры запроса#
Обязательные параметры выделены полужирным шрифтом.
| Параметр | Тип | Описание | 
|---|---|---|
| shortenUrl | boolean | Флаг, который сокращает длину ссылки: если true, то ссылка будет сокращена. По умолчанию: false. Примечание Значение параметра применяется для всех SMS-сообщений переданного пакета. По умолчанию опция недоступна. Для подключения данной опции следует обратиться в Службу технической поддержки. | 
| scheduleInfo | object | Расписание рассылки. Если расписание не указано, сообщения отправляются сразу же, в момент получения запроса. | 
| scheduleInfo/timeBegin | string | Время начала рассылки в формате ЧЧ:ММ, например, «10:00». | 
| scheduleInfo/timeEnd | string | Время окончания рассылки в формате ЧЧ:ММ, например, «21:00». | 
| scheduleInfo/weekdaysSchedule | string | Дни рассылки. Задаются цифрами от 1 (понедельник) до 7 (воскресение), например, «12345». Если ограничений по дням недели нет, то данный параметр может быть пустым или не передан в запросе. | 
| scheduleInfo/deadline | string | Дата окончания рассылки в формате «YYYY-MM-ДДTчч:мм:сс+UTC», например, «2024-05-10T16:29:30+0300», где: 
 Примечание Всем сообщениям, которые не были переданы до наступления даты окончания рассылки, Платформой присваивается статус EXPIRED (Сообщение просрочено по сроку жизни). | 
| useTimeDiff | boolean | Если true, то сообщение отправляется с учетом часового пояса абонента. Если false, то часовой пояс абонента не учитывается. Значение по умолчанию: false. | 
| messages | array of object | Массив объектов, который содержит пакет сообщений на отправку. Примечание В данном параметре возможно отправить сообщения абонентам с разных Сервисных имён, доступных Партнёру, а также с разным текстом. | 
| messages/from | string | Сервисное имя. | 
| messages/to | string | Номер телефона в международном формате XXX YYY ZZZ ZZ ZZ, согласно стандарту E.164, где: 
 Пример: 79031234567 | 
| messages/text | string | Текст сообщения. Максимальная длина текста: 2000 символов. | 
| messages/id | string | Уникальный идентификатор сообщения на стороне Партнёра. Максимальная длина: 50 символов. Сервис-провайдер возвращает этот параметр в ответе на запрос вместе со статусом сообщения
(см. Сервис получения статусов доставки). Данный параметр может быть использован, в том числе, для контроля повторных отправок и дублирования. В случае, если установлен запрет на отправку дубликатов, будет произведена проверка дубликатов сообщений по
переданному  id. | 
| messages/validity | integer | Срок жизни сообщения в секундах. Минимальное значение: 60 секунд. Максимальное значение: 259200 секунд (3 суток). По умолчанию: 172800 секунд (2 суток). | 
| messages/priority | integer | Приоритет отправки сообщения, от 0 до 3, где 0 – низкий приоритет, 3 – наивысший. По умолчанию: 0. По умолчанию опция недоступна. Для подключения данной опции следует обратиться в
Службу технической поддержки. | 
| messages/callbackUrl | string | URL, на который Платформа будет отправлять уведомления об изменениях статуса сообщения. Любой валидный URL со схемой HTTP или HTTPS. | 
Ответ на запрос#
 1   {
 2       "result": [
 3           {
 4               "code": "OK",
 5               "messageId": "3482512350952730368"
 6           },
 7           {
 8               "code": "REJECTED",
 9               "messageId": null,
10               "reasons": [
11                   {
12                       "key": "not.available",
13                       "ref": "messages[0].from"
14                   }
15               ],
16               "description": "Error: Source address in not available. Source address: TAXI"
17           }
18       ]
19   }
| Параметр | Тип | Описание | 
|---|---|---|
| result | array of object | Массив объектов, содержащий результаты обработки для каждого SMS-сообщения исходного пакета. | 
| code | string | Результат обработки сообщения. Возможные значение: 
 | 
| messageId | string | Идентификатор сообщения. При code=OK возвращается реальное значение. При code=REJECTED возвращается значение null. | 
| description | string | Описание ошибки. Возвращается только при code=REJECTED. | 
| id | string | Идентификатор сообщения на стороне Партнёра. | 
| packetId | integer | Идентификатор пакета SMS-сообщений. У всех сообщений пакета будет одинаковый идентификатор, присвоенный данному пакету сообщений. В ответ на запрос по данному параметру Партнёр имеет возможность запросить статусы сообщений. Для передачи данного параметра в запросе Партнёру необходимо обратиться в
Службу технической поддержки. | 
| reasons | array of object | Массив объектов, содержащий параметры ошибок, возникших при обработке сообщения. Возвращается только при code=REJECTED. | 
| reasons/key | string | Код ошибки (см. Ошибки при отправке). | 
| reasons/ref | string | Ссылка на параметр, в котором произошла ошибка (см. Ошибки при отправке). | 
Ошибки при отправке#
Ошибки параметра reasons/key, возвращаемые при первичном приёме пакета сообщений.
| key | ref | Описание | 
|---|---|---|
| forbidden | Отправка запрещена. | |
| unknown | Неизвестная ошибка. | |
| invalid | messages[i].to | Неправильно указан номер телефона. | 
| messages[i].validity | Неправильно указан срок жизни. | |
| messages[i].callbackUrl | Неправильно указан URL. | |
| length.too.long | messages[i].text | Превышена максимальная длина текста сообщения. | 
| must.be.not.null | messages | Массив messages не может быть пустым. | 
| not.available | messages[i].from | Неправильно указан отправитель. | 
| too.many.messages | messages | Превышен максимальный размер массива messages. | 
Статусы доставки SMS-сообщений#
Для получения статусов SMS-сообщений необходимо настроить Сервис получения статусов доставки.