Отправка WHATSAPP

circle-exclamation
circle-info

Отправка сообщений происходит в режиме чата:

  • если чат инициируется клиентом, первое сообщение должно соответствовать зарегистрированному шаблону. После каждого ответа абонента открывается 24-часовое окно для отправки сообщений с произвольным содержанием. Если абонент не ответил, клиент может отправлять сообщения пользователю вне рамок 24-часового окна с использованием заранее зарегистрированных шаблонов сообщений;

  • если чат инициируется абонентом, в течение 24-часового окна клиент может отправлять сообщения с произвольным содержанием.

Отправка WHATSAPP-сообщений

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

Метод позволяет отправлять массив одиночных сообщений (от 1 до 1000)

Headers

Name
Type
Description

Authorization*

string

Basic {TOKEN_1}

Content-Type*

string

application/json

Request Body

Name
Type
Description

channelType*

string

Канал отправки (WHATSAPP)

senderName*

string

Имя отправителя. Допускаются WHATSAPP-имена в статусе "Одобрено"

destination*

string

Номер абонента

content*

object

Контент сообщения. Ниже описаны возможные варианты содержимого.

tags

array

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

useLocalTime

boolean

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

localSendTime

string

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

localCompletionTime

string

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

ttl

integer

Время жизни сообщения в секундах. По истечении ttl сообщению устанавливается финальный статус. 60 ≤ ttl ≤ 86400

hours

array

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

days

array

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

shortUrl

boolean

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

callbackUrl

string

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

callbackEvents

array

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

externalMessageId

string

Внутренний id сообщения в вашей системе. До 100 символов

В случае успешного запроса возвращается ответ, в котором перечислены идентификаторы сообщений и коды результата. При значении errors = false гарантируется, что все переданные сообщения успешно созданы.

circle-exclamation
triangle-exclamation
circle-info

Для использования личного домена в сокращенных ссылках необходимо обратиться в поддержку

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

Параметр

Варианты

Текстовое сообщение

Текстовое WHATSAPP-сообщение, помимо текста, может содержать заголовок, подпись и кнопки.

Для отправки текстового WHATSAPP-сообщения используется следующий объект content:

Параметр

Тип

Описание

contentType

string

required

Тип контента (text)

text

string

required

Текст сообщения; строка в кодировке UTF-8 без Byte Order Mark

От 1 до 1000 символов

header

object optional

Заголовок сообщения

header.text

string optonal

Текст для заголовка От 1 до 60 символов

header.documentUrl

string optional

Ссылка на документ для заголовка. Документ должен быть в формате PDF.

header.documentName

string optional

Название документа для заголовка; может присутствовать только при наличии documentUrl

header.imageUrl

string optional

Ссылка на изображение для заголовка. Изображение должно быть в формате JPG или PNG

footer

object optional

Подпись сообщения

footer.text

string optional

Текст для подписи; от 1 до 60 символов

buttons

array (objects) optional

Массив с объектами кнопок

buttons.text

string optonal

Текст кнопки; от 1 до 25 символов

buttons.url

string optional

Ссылка, на которую происходит переход при нажатии на кнопку; от 1 до 1000 символов; должна начинаться с http

buttons.phone

string optional

Телефонный номер, на который предлагается сделать вызов при нажатии на кнопку; от 1 до 1000 символов

buttons.payload

string optional

Скрытый текст, который будет передан во входящем сообщении, если пользователь нажмет на кнопку; от 1 до 1000 символов

в объекте header допускается использовать только одно из:

  • text

  • documentUrl и documentName

  • imageUrl

Кнопки в сообщениях

  • кнопки передаются объектами в массиве buttons

  • в каждом объекте обязателен text

  • существует два типа кнопок:

    • кнопка с ссылкой: содержит text и url или text и phone

    • кнопка с текстом: содержит text и payload

  • в одном сообщении допускается передача кнопок только одного типа (то есть передача payload-кнопок вместе с url/phone-кнопками не допускается)

  • в сообщении допускается только одна кнопка с параметром url

  • в сообщении допускается только одна кнопка с параметром phone

  • при передаче кнопок с текстом допускается не более трех объектов в массиве

  • при передаче кнопок с ссылкой допускается не более двух объектов в массиве

  • наличие кнопок в сообщении не влияет на возможность наличия заголовка и подписи

Примеры объектов

Аутентификационное сообщение

Для отправки аутентификационного WHATSAPP-сообщения используется следующий объект content:

Параметр
Тип
Описание

contentType

string required

Тип контента (authentication)

text

string required

Текст сообщения, не более 15 символов

lang

string required

Язык сообщения, не более 2 символов

addSecurityRecommendation

boolean required

Определяет, будет ли сообщение содержать предустановленный текст безопасности

codeExpirationMinutes

integer optional

Срок действия пароля или кода в минутах. Если не указывать этот параметр, сообщение не будет содержать предупреждение об истечении срока действия пароля. Допустимые значения: от 1 до 90.

buttons

array required

Массив кнопок. Должен содержать ровно одну кнопку.

buttons.text

string required

Текст на кнопке, не более 25 символов

circle-exclamation

Сообщение с изображением

Для отправки WHATSAPP-сообщения с изображением используется следующий объект content:

Параметр

Тип

Описание

contentType

string

required

Тип контента (image)

imageUrl

string

required

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

imageName

string required

Название изображения

Сообщение с документом

Для отправки WHATSAPP-сообщения с документом используется следующий объект content:

Параметр

Тип

Описание

contentType

string

required

Тип контента (document)

documentUrl

string

required

Ссылка на документ

documentName

string required

Название документа

Сообщение с видео

Для отправки WHATSAPP-сообщения с видео используется следующий объект content:

Параметр

Тип

Описание

contentType

string

required

Тип контента (video)

videoUrl

string

required

Ссылка на видео

videoName

string optional

Название видео

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

circle-info

В примере указан минимальный набор параметров, который позволяет моментально отправить WHATSAPP-сообщение (при наличии зарегистрированного имени отправителя и шаблона). Вы можете кастомизировать контент, время отправки, настроить коллбэки и добавить теги, используя опциональные параметры, описанные выше на данной странице.

Last updated