Создание рассылок

Создание рассылки

POST https://direct.i-dgtl.ru/api/v1/dispatch

Метод позволяет создать как рассылку по одному каналу, так и каскадную рассылку.

Headers

Name
Type
Description

Authorization*

string

Basic {TOKEN_1}

Content-Type*

string

application/json

Request Body

Name
Type
Description

dispatchName*

string

Название рассылки

cascade

array

Массив каскадной отправки; описан ниже

channelType

string

Канал рассылки; обязателен при отсутствии массива cascade

content

object

Содержимое сообщения; обязателен при отсутствии массива cascade

localSendTime*

string

Нижняя граница допустимого времени начала рассылки (с учетом useLocalTime) Дата в формате YYYY-MM-DD hh:mm:ss в диапазоне от (текущее время в UTC - 12 часов) до (текущее время в UTC + 70 дней)

localCompletionTime

string

Верхняя граница допустимого времени завершения рассылки (с учетом useLocalTime) в диапазоне от localSendTime до (текущее время в UTC + 70 дней)

useLocalTime

boolean

Флаг, отвечающий за таймзону, в которой будут отправляться сообщения true- отправка в таймзоне абонента false- отправка по МСК По умолчанию true

hours*

array

Допустимые часы отправки (массив чисел). В массиве могут быть переданы целые числа от 0 до 23, каждое из которых соответствует разрешенному для отправки часовому интервалу с учетом useLocalTime; значения должны быть уникальны.

days*

array

Допустимые дни отправки (массив чисел). В массиве могут быть переданы целые числа от 1 (пн) до 7 (вс), каждое из которых соответствует разрешенному для отправки дню недели; значения должны быть уникальны.

tags

array

Теги рассылки (массив строк). Каждый тег должен соответствовать выражению ^\w+$ (допускаются буквы в любом регистре, цифры и нижнее подчеркивание "_")

senderName

string

Имя отправителя; обязателен при отсутствии массива cascade; допустимые значения зависят от канала: SMS: допускаются sms-отправители в статусе "Одобрено" с датой начала действия не позднее, чем время отправки запроса VIBER: допускаются viber-отправители в статусе "Одобрено" с датой начала действия не позднее, чем время отправки запроса

shortUrl

boolean

Флаг, отвечающий за сокращение ссылок в сообщении: true - ссылки в сообщении будут сокращены. По умолчанию false

rate

integer

Максимальное количество сообщений рассылки, которые можно отправить в единицу времени rateTerm: 'm': от 1 до 1000 'h': от 1 до 1000 * 60 'd': от 1 до 1000 * 60 * {количество элементов в массиве hours} Обязателен в запросе при наличии rateTerm

rateTerm

string

Единица времени для ограничения rate Обязателен в запросе при наличии rate

callbackUrl

string

Адрес для отправки callback

callbackEvents

array

События, по которым будут отправлены callback (массив строк). При наличии callbackUrl и отсутствии callbackEvents в запросе, будет отправлен callback по событию delivered

При успешном создании рассылки возвращается ее идентификатор.

circle-exclamation
circle-info
  • Имена отправителей можно создать в личном кабинете. Имена отправителей для канала SMS также можно создать при помощи API

  • Параметры rate и rateTerm вместе образуют максимально допустимую скорость отправки, которую рассылка гарантированно не превысит

Возможные варианты перечислений:

Параметр

Варианты

channelType

SMS, VIBER

Создание одноканальной рассылки

Для создания рассылки по одному каналу в объекте:

  • передаются параметры channelType, senderName, content

  • не передается массив cascade

Контент рассылки

Для канала VIBER формат и валидация объекта content описаны в разделе Отправка VIBER

Для канала SMS формат и валидация объекта content описаны в разделе Каскадная отправка

При этом в тексте сообщения могут присутствовать переменные, которые будут заменены на строки для каждого отдельного сообщения при наполнении рассылки сообщениями.

Переменными являются все строки в двойных фигурных скобках, которые находятся в строке content.text

Пример:

Пример запроса

Создание каскадной рассылки

Для создания каскадной рассылки в объекте:

  • не передаются параметры channelType, senderName, content

  • передается массив cascade

Описание массива cascade

Параметр

Тип

Описание

cascade

array (objects)

required

Массив объектов, описывающих каскад; отправка сообщений будет производиться в соответствии с порядком объектов в массиве (аналогично отправке одиночных каскадных сообщений)

cascade.channelType

string

required

Канал отправки; одно из значений:

  • SMS

  • VIBER

cascade.content

object

required

Контент для сообщений данного шага; объекты соответствуют объектам контента соответствующего канала для одноканальной рассылки; в тексте также допускаются подстановки

cascade.senderName

string

required

Имя отправителя соответствующего канала в статусе "Одобрено" с датой начала действия не позднее момента отправки запроса

cascade.condition

string

optional

cascade.ttl

integer

optional

Время жизни сообщения в секундах. По истечении ttl: сообщению данного шага каскада будет присвоен финальный статус, а также при выполнении cascade.condition будет создано следующее сообщение

60 ≤ ttl ≤ 86400

По умолчанию время жизни сообщения составляет 25 часов

Пример запроса

В данной рассылке для каждого получателя рассылки будет отправлено VIBER-сообщение; если для VIBER-сообщения не будет получен статус "Прочитано" в течение 12 часов, то для получателя будет отправлено SMS-сообщение.

При этом сообщения отправляются с 10 до 16 часов со скоростью не более 100 сообщений в час.

Подстановки {{A}}, {{B}}, {{C}}, указанные в параметрах content.text, обязательно должны быть переданы для каждого сообщения на следующем шаге.

Last updated