Метод, описанный в этой статье, предназначен только для SME.
В результате выполнения запроса будет получен статус доставки SMS-сообщения с заданным идентификатором. В случае успешного выполнения запроса вернется ответ от сервера с кодом 200, содержащий JSON с данными о текущем статусе SMS-сообщения. В случае неуспешного выполнения запроса возвращается один из следующих кодов ошибки:
- 400 — некорректный идентификатор SMS;
- 404 — SMS с таким идентификатором не найдено.
URL-адрес подключения
Для отправки SMS выполняется GET-запрос на URL-адрес: https://sms.edna.ru/connector_sme/api/smsOutMessage/{smsOutMessageId}
Параметры запроса
Запрос имеет один обязательный параметр {smsOutMessageId}
, который передается как часть URL. Это идентификатор SMS-сообщения.
Формат ответа
В ответ на запрос возвращается JSON-объект с данными о доставке SMS-сообщения.
{ "smsOutMessageId": "test-001", "dlvStatus": "undelivered", "dlvStatusAt": "2017-01-01T12:10:00.000Z", "dlvError": "absent-subscriber", "rate": "2.35", "segment": { "total": 2, "sent": 2, "delivered": 0, "undelivered": 2, "unknown": 0 } }
Параметры ответа
Параметр | Тип данных | Описание |
smsOutMessageId | string (required) | Идентификатор SMS-сообщения |
dlvStatus | string (required) | Статус сообщения. Возможные значения |
dlvStatusAt | string (required) | Время последнего обновления статуса сообщения. Указывается в следующем формате, например, 2014-07-17T12:00:00.000Z. Дата и время, разделенные буквой Т. «00.000» — количество секунд и миллисекунд. «Z» — означает время по UTC |
dlvError | string (optional) | Ошибка, возникшая при доставке SMS. Возможные значения |
rate | string (required) | Цена доставки одного SMS-сообщения (общая стоимость доставки вычисляется по количеству сегментов, см. ниже) |
segment | (optional) | Структура с данными о количестве сегментов сообщения и статусе их доставки. Если текст сообщения превышает допустимое количество символов, то оно разбивается на сегменты и каждый сегмент будет отправлен как отдельное сообщение |
Данные, вложенные в segment
:
Параметр | Тип данных | Описание |
total | int (required) | Общее количество SMS, на которые было разбито исходное сообщение |
sent | int (required) | Количество SMS, отправленных на платформу оператора сотовой связи для доставки абоненту |
delivered | int (required) | Количество SMS, доставленных абоненту |
undelivered | int (required) | Количество SMS, не доставленных абоненту |
unknown | int (required) | Количество SMS, статус которых неизвестен (и не будет известен) |
Если сообщение состоит из одного сегмента (размер сообщения меньше допустимого), то параметр
segment
не возвращается и таким образом не является обязательным. Но если сообщение составное и значение segment
возвращается, то все его вложенные значения являются обязательными.