WhatsApp#
Отправка WhatsApp-сообщения#
Поддерживается отправка следующих типов WhatsApp-сообщений:
только текст;
только изображение.
Примечание
Одновременная отправка в запросе двух типов контента (например, текста с изображением) недопустима.
Примеры запросов на отправку WhatsApp-сообщений#
Для формирования тестового запроса с вашими параметрами Открыть генератор запросов
1{
2 "login":"ВАШ_ЛОГИН",
3 "password":"ВАШ_ПАРОЛЬ",
4 "useTimeDiff":false,
5 "id":"8770100",
6 "scheduleInfo":
7 {
8 "timeBegin":"10:00",
9 "timeEnd":"20:00",
10 "weekdaysSchedule":"12345"
11 },
12 "destAddr":"Номер_Абонента",
13 "message":
14 {
15 "type":"WHATSAPP",
16 "data":
17 {
18 "instantContent":
19 {
20 "type":"TEXT",
21 "data":
22 {
23 "text":"Текст WhatsApp-сообщения"
24 }
25 },
26 "serviceNumber":"НОМЕР_ОТПРАВИТЕЛЯ",
27 "ttl":1440
28 }
29 }
30}
1 {
2 "login":"ВАШ_ЛОГИН",
3 "password":"ВАШ_ПАРОЛЬ",
4 "useTimeDiff":false,
5 "id":"8770100",
6 "scheduleInfo":
7 {
8 "timeBegin":"10:00",
9 "timeEnd":"20:00",
10 "weekdaysSchedule":"12345"
11 },
12 "destAddr":"Номер_Абонента",
13 "message":
14 {
15 "type":"WHATSAPP",
16 "data":
17 {
18 "instantContent":
19 {
20 "type":"IMAGE_URL",
21 "data":
22 {
23 "imageURL":"https://example.ru/image"
24 }
25 },
26 "serviceNumber":"НОМЕР_ОТПРАВИТЕЛЯ",
27 "ttl":1440
28 }
29 }
30 }
Параметры запросов#
Обязательные параметры выделены жирным шрифтом.
Параметр |
Тип данных |
Описание |
---|---|---|
login |
string |
Имя Партнёра. |
password |
string |
Пароль Партнёра для отправки сообщений. |
useTimeDiff |
boolean |
Учитывание часового пояса при запуске рассылки. Если true, то отправка сообщения осуществляется абоненту согласно расписанию рассылки и его часовому поясу. Если false, то сообщение отправляется согласно расписанию инициатора рассылки UTC+3, не обращая внимание на часовой пояс получателя сообщения. Значение по умолчанию: false. |
shortenLinks |
boolean |
Параметр управляет включением автоматического сокращения длинных ссылок в сообщении. Возможные значения - true - для сокращения ссылок (значение по умолчанию), false - сокращение ссылки не требуется. Если параметр в запросе не приходит, но, при этом, сервис Партнёру доступен, то ссылки будут сокращаться по умолчанию. Возможность пользоваться данным сервисом предварительно оговаривается и настраивается Сервис-Провайдером. Подробнее: Сервис сокращения ссылок. |
id |
string |
Уникальный идентификатор на стороне Партнёра. Данный параметр нужен для контроля повторных отправок и дублирования (сервис контроля включается отдельно). Партнёр может вызывать Сервис-провайдера (запрос на отправку сообщения) с одним и тем же id несколько раз. При этом: отправка сообщения абоненту будет выполнена только один раз (по первому запросу). В ответах на запросы Сервис-провайдер вернет Партнёру один и тот же идентификатор сообщения в системе Сервис-провайдера (тот же, что на первый запрос). Сервис-провайдер опционально возвращает Партнёру данный идентификатор при его наличии в отчёте о доставке сообщения. |
scheduleInfo |
object |
Расписание рассылки. Если не указано, отправляется сразу же, в момент получения запроса. |
scheduleInfo/timeBegin |
string |
Время начала, например, «10:00». |
scheduleInfo/timeEnd |
string |
Время окончания, например, «21:00». |
scheduleInfo/weekdaysSchedule |
string |
Дни рассылки. Задаются цифрами от 1 (понедельник) до 7 (воскресенье), например, «12345». Если ограничений по дням недели нет, то параметр можно не передавать в запросе, либо можно не указывать его значение. |
scheduleInfo/deadline |
string |
Дата окончания рассылки, например, 2019-05-10T16:29:30+0300. |
destAddr |
string |
Номер телефона абонента. Содержит код страны, код оператора и номер телефона. Для РФ код может быть „8“, „7“ или „+7“. Примеры: 72101234567, +72101234567, 8-210-123-45-67, 82101234567. |
message |
object |
Параметры отправляемого сообщения. |
message/type |
enum |
Тип сообщения. Передается значение WHATSAPP. |
message/data/instantContent |
object |
Параметры отправляемого WhatsApp-сообщения (изображения, кнопки). |
instantContent/type |
enum |
Тип параметра сообщения. Допустимые значения: TEXT (для передачи только текста), IMAGE_URL (для передачи только изображения). |
instantContent/data |
object |
Параметры отправляемых данных. Допустимые значения: text (текст сообщения), imageURL (адрес изображения). |
instantContent/data/text |
string |
Текст сообщения. Максимальная длина: 1000 символов. |
instantContent/data/imageURL |
string |
URL изображения для передачи. Рекомендовано использовать изображение размером 400x400px с расширением JPG или PNG. |
message/data/serviceNumber |
string |
Сервисное имя, от которого осуществляется отправка сообщения. |
message/data/ttl |
integer |
Срок жизни WhatsApp-сообщения. Допустимые значения (кратно суткам), мин: 1440, 2880, 4320, 5760, 7200, 8640, 10080. Примечание. При ttl = 0 или отсутствии параметра в запросе берётся значение из настроек по умолчанию, которые задаются при настройке интеграции отдельно для каждого клиента. |
message/data/ttlUnit |
enum |
Единица измерения периода доставки сообщения. Передается только вместе с ttl. Допустимые значения: SECONDS; MINUTES (значение по-умолчанию); HOURS. |
extraParam |
string |
Дополнительные параметры, передаваемые в виде param1=value1,param2=value2, где param1 и param2 – названия параметров, value1 и value2 – значения. Символ запятой в название параметра входить не может, но может входить в его значение - в этом случае он должен удваиваться. Пример: строка место=абзаково,название=гостевой дом-2,координаты=53.8085896,, 58.6362112,c=23.02.09,по=05.03.09. |
registeredDelivery |
integer |
Необходимость отчётов о доставке. Возможные значения: 0 - статусы не нужны; 1 - нужны статусы (по умолчанию); 2 - нужен только статус НЕ ДОСТАВЛЕНО. |
notifyUrl |
string |
Hostname входящего api для получения отчета о доставке. Этот параметр в запросе необязательный, но при его отправке нужно учесть следующее: если парметр указан, он не может быть пустым. Длина строки notifyUrl не должна превышать 2048 символов. При невыполнении любого из указанных условий будет сгенерирована ошибка, запрос не будет выполнен. |
cascadeChainLink |
object |
Параметры каскадных сообщений. См. Каскадная рассылка. |
Ответ на запрос#
После отправки сообщения Сервис-провайдер синхронно возвращает ответ. В случае успешной отправки возвращается HTTP-code 200 OK.
Ответ при успешной отправке WhatsApp-сообщения#
1 {
2 "mtNum": "107930572",
3 "id": "8770599"
4 }
Параметр |
Тип данных |
Описание |
---|---|---|
mtNum |
string |
Идентификатор цепочки отправки, присваиваемый платформой Сервис-провайдера. |
id |
string |
Уникальный идентификатор на стороне Партнёра. Присутствует, если был передан при отправке. |
Ошибки при отправке WhatsApp-сообщений#
Для ошибочных результатов HTTP-код ответа будет отличный от 200 (см. Коды ошибок отправки).
1 {
2 "error": {
3 "code": 4,
4 "description": "Invalid request"
5 },
6 "extendedDescription": "Message is too long (2024 symbols). WHATSAPP message max length is 1000 symbols."
7 }
Параметр |
Тип данных |
Описание |
---|---|---|
error |
object |
Информация об ошибке. |
error/code |
int |
Код ошибки. |
error/description |
string |
Краткое описание ошибки. |
extendedDescription |
string |
Подробное описание ошибки (необязательный параметр). |
Коды ошибок отправки#
Код |
Описание |
HTTP-код |
---|---|---|
1 |
Service is unavailable |
503 |
2 |
Invalid IP-address |
403 |
3 |
Too many connections |
429 |
4 |
Invalid request |
400 |
5 |
Invalid login |
401 |
6 |
Invalid password |
401 |
7 |
serviceNumber is not defined |
400 |
8 |
destAddr is not correct |
406 |
9 |
Message type is not correct |
406 |
10 |
Prohibited sending duplicates |
409 |
11 |
Invalid TTL |
406 |
100 |
100 |
500 |
Статусы доставки WhatsApp-сообщений#
Для получения статусов WhatsApp-сообщений необходимо настроить Сервис получения статусов доставки сообщений.