API для Viber рассылок

Создать Viber рассылку

Чтобы создать Viber рассылку, отправьте POST запрос по ссылке:

https://api.sendpulse.com/viber

Параметры запроса:

Параметр Тип Описание
task_name string Имя рассылки required
message_type* int Тип сообщения: 2 — рекламное, 3 — системное required
sender_id int ID активного имени отправителя; вы можете получить sender_id в методе «Получить список имен отправителя», для этого у пользователя должно быть зарегистрировано имя отправителя в настройках сервиса required
message_live_time int Время жизни сообщения(секунд), минимум 60с, максимум 86400 секунд (24 часа) required
send_date string Дата и время отправки: now если необходимо отправить сразу, или указать время в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС если нужно запланировать required
address_book* int ID адресной книги required
recipients* array Массив телефонов вида [380931111111,380931111112, 380931111113] required
message* string Текст сообщения (максимальная длина — 1000 символов) required
stretch_time int Постепенная отправка рассылки. Можно выставить значения от 0 до 5 часов и рассылка будет отправляться всем получателям в течение указанного времени небольшими частями. optional
additional object Дополнительные параметры: optional
button* Параметры кнопки:
text string Текст на кнопке optional
link string Ссылка на кнопке optional
image* Параметры картинки:
link string Ссылка на загруженную картинку optional
resend_sms Функция переотправки сообщения через СМС сервис:
status boolean true если включен, false если выключен optional
sms_text string Текст СМС сообщения optional
sms_sender_name string Имя отправителя СМС optional

Используйте параметр address_book или recipients для указания списка получателей (один из двух параметров обязательный).

Существуют такие типы сообщений:

  • Системное или рекламное (только текст): только параметр message;
  • Рекламное (текст + кнопка + картинка): параметры: message, button, image;
  • Рекламное (текст + кнопка): параметры: message, button;
  • Рекламное (картинка): параметры: image.

Обратите внимание, что при отправке системного сообщения ("message_type":3) проверяется текст в параметре message. Он должен совпадать с текстом одобренного шаблона. Подать шаблон на регистрацию вы можете в личном кабинете после регистрации отправителя

Пример запроса на отправку сообщения формата текст + кнопка + картинка:

{
   "recipients":[
      380931111111,
      380931111112,
      380931111113
   ],
   "message":"Ирина, вы получили скидку 50% на все товары в категории «Косметика» до 14.07.2017",
   "message_type":2,
   "message_live_time":1000,
   "sender_id":1,
   "send_date":"now",
   "additional":{
      "button":{
         "text":"Купить всю косметику",
         "link":"https://sendpulse.com/"
      },
      "image":{
         "link":"https://sendpulse.com/images/image.png"
      },
      "resend_sms":{
         "status":true,
         "sms_text":"Текст sms сообщения",
         "sms_sender_name":"sendpulse"
      }
   }
}

Пример запроса на отправку сообщения только с текстом:

{
   "recipients":[
      380931111111,
      380931111112,
      380931111113
   ],
   "message":"Ирина, вы получили скидку 50% на все товары в категории «Косметика» до 14.07.2017",
   "message_type":2,
   "message_live_time":1000,
   "sender_id":2222,
   "send_date":"now"
}

Пример запроса на отправку сообщения только с картинкой:

{
   "recipients":[
      380931111111,
      380931111112,
      380931111113
   ],
   "message":null,
   "message_type":2,
   "message_live_time":1000,
   "sender_id":1,
   "send_date":"now",
   "additional":{
      "image":{
         "link":"https://sendpulse.com/images/image.png"
      },
      "resend_sms":{
         "status":true,
         "sms_text":"Текст sms сообщения",
         "sms_sender_name":"sendpulse"
      }
   }
}

Пример запроса на отправку сообщения формата текст + кнопка:

{
   "recipients":[
      380931111111,
      380931111112,
      380931111113
   ],
   "message":"Ирина, вы получили скидку 50% на все товары в категории «Косметика» до 14.07.2018",
   "message_type":2,
   "message_live_time":1000,
   "sender_id":2222,
   "send_date":"now",
   "additional":{
      "button":{
         "text":"Купить всю косметику",
         "link":"https://sendpulse.com"
      },
      "resend_sms":{
         "status":true,
         "sms_text":"Текст sms сообщения",
         "sms_sender_name":"sendpulse"
      }
   }
}

Пример запроса отправки частями:

{
   "recipients":[
      380683850429
   ],
   "message":"Test",
   "message_type":2,
   "message_live_time":1000,
   "sender_id":4647,
   "send_date":"now",
   "stretch_time":1
}

В случае успешного запроса вы получите ответ: 

{
    "result": true,
    "data": {
        "address_book_id": null,
        "button_link": null,
        "button_text": null,
        "image_link": null,
        "message": "Ciao! Вас вітає офіційний viber-канал бренду Yamamay та нагадує, що Ви - найчарівніша.",
        "message_live_time": "1000",
        "message_type": 3,
        "resend_sms": 0,
        "send_date": "2019-03-26 12:40:05",
        "sender_id": 4501,
        "sms_sender_name": null,
        "sms_text": null,
        "task_id": 90241,
        "task_name": "Viber campaign for the personal list on 2019-03-26 12:40"
    }
}

Редактировать запланированную Viber рассылку

Чтобы редактировать Viber рассылку, отправьте POST запрос по ссылке:

https://api.sendpulse.com/viber/update

Параметры запроса:

Параметр Тип Описание
main_task_id int ID рассылки required
task_name string Название рассылки optional
message string Текст сообщения optional
message_type int Тип сообщения: 2 — рекламное, 3 — системное required
button_text string Текст на кнопке; если не указан, вернет null optional
button_link string Ссылка для перехода; если не указана, вернет null optional
image_link string Адрес картинки; если не указано, вернет null optional
address_book int ID адресной книги; если использовался ручной ввод, вернет null optional
sender_id int ID отправителя; вы можете получить sender_id в методе «Получить список имен отправителя», для этого у пользователя должно быть зарегистрировано имя отправителя в настройках сервиса required
message_live_time int Время жизни сообщения (в секундах) optional
send_date string Время отправки optional

В случае успешного запроса вы получите ответ:

{
    "result": true,
    "data": {
        "address_book_id": null,
        "button_link": null,
        "button_text": null,
        "image_link": null,
        "message": "Ciao! Ciao Ciao Ciao Ciao Вас вітає офіційний viber-канал бренду Yamamay та нагадує, що Ви - найчарівніша.",
        "message_live_time": "1000",
        "message_type": "3",
        "send_date": "2019-03-26 15:16:00",
        "sender_id": "4495",
        "task_id": 9380939,
        "task_name": "Viber campaign for the personal list on 2019-03-26 15:15"
    }
}

Отменить Viber рассылку

Чтобы отменить запланированную Viber рассылку, отправьте PUT запрос по ссылке:

https://api.sendpulse.com/v2/viber-service/tasks/cancel

Параметр запроса:

Параметр Тип Описание
task_id int ID рассылки required

В случае успешного запроса вы получите ответ:

{
    "data": {
        "result": true
    }
}

Получить список рассылок

Чтобы получить список рассылок, отправьте GET запрос по ссылке:

https://api.sendpulse.com/viber/task

Параметры запроса:

Параметр Тип Описание
limit int Количество рассылок optional
offset int Смещение для выборки optional

В случае успешного запроса вы получите ответ:

[
    {
        "id": 9380939,
        "name": "Viber campaign for the personal list on 2019-03-26 15:02",
        "message": "Ciao! Ciao Ciao Ciao Ciao Вас вітає офіційний viber-канал бренду Yamamay та нагадує, що Ви - найчарівніша.",
        "button_text": null,
        "button_link": null,
        "image_link": null,
        "address_book": null,
        "sender_name": "YAMAMAY",
        "sender_id": 4495,
        "message_live_time": 1000,
        "send_date": "2019-03-29 10:00:00",
        "status": "moderation",
        "created": "2019-03-26 12:50:02"
    },
    {
        "id": 9380926,
        "name": "Viber campaign for the personal list on 2019-03-26 14:48",
        "message": "Ciao! Вас вітає офіційний viber-канал бренду Yamamay та нагадує, що Ви - найчарівніша.",
        "button_text": null,
        "button_link": null,
        "image_link": null,
        "address_book": 0,
        "sender_name": "YAMAMAY",
        "sender_id": 4495,
        "message_live_time": 1000,
        "send_date": "2019-03-29 10:00:00",
        "status": null,
        "created": "2019-03-26 12:48:23"
    }
]

Параметры ответа:

Параметр Тип Описание
id int ID рассылки
name string Название рассылки
message string Текст сообщения
button_text string Текст на кнопке; если не указан, вернет null
button_link string Ссылка для перехода; если не указана, вернет null
image_link string Адрес картинки; если не указан, вернет null
address_book_id int ID адресной книги; если использовался ручной ввод, вернет null
sender_name string Имя отправителя
sender_id int ID отправителя
message_live_time int Время жизни сообщения (в секундах)
send_date string Дата отправки
status string Статус рассылки
created string Дата создания рассылки

Получить статистику по рассылке

Чтобы получить статистику по рассылке, отправьте GET запрос по ссылке:

https://api.sendpulse.com/viber/task/{id}

Параметр запроса:

Параметр Тип Описание
id int ID рассылки required

В случае успешного запроса вы получите ответ: 

{
   "id":38,
   "name":"Viber_Campaign_38",
   "message":"Это текст для вайбер сообщения",
   "button_text":"Кнопка",
   "button_link":"https://sendpulse.com",
   "image_link":null,
   "address_book":null,
   "sender_name":"infoservice",
   "send_date":"2017-06-22 09:51:35",
   "status":"send",
   "statistic":{
      "sent":1,
      "delivered":1,
      "read":0,
      "redirected":0,
      "undelivered":0,
      "errors":0
   },
   "created":"2017-06-22 09:51:22"
}

Параметры ответа:

Параметр Тип Описание
id int ID рассылки
name string
Название рассылки
message string Текст сообщения
button_text string Текст на кнопке; если не указан, вернет null
button_link string Ссылка для перехода; если не указана, вернет null
image_link string
Адрес картинки; если не указан, вернет null
address_book_id int
ID адресной книги; если использовался ручной ввод, вернет null
sender_name string
Имя отправителя
send_date string
Время отправки
status string
Статус отправки рассылки
statistic object Статистика отправленной рассылки:
sent int Количество отправленных сообщений
delivered int Количество доставленных сообщений
read int Количество открытых сообщений
redirected int Количество переходов по ссылке
undelivered int Количество недоставленных сообщений
errors int Количество ошибок (абонент не является пользователем Viber)
created string Дата создания рассылки

Получить список имен отправителя

Чтобы получить список имен отправителя, отправьте GET запрос по ссылке:

https://api.sendpulse.com/viber/senders

В случае успешного запроса вы получите ответ: 

{
   "id":2222,
   "status":"verified",
   "name":"Foxkids",
   "service_type":"Магазин iграшок",
   "web_site":"www.foxkids.com",
   "description":"Магазин Foxkids –«Королівство іграшок» де знайдете багато речей, необхідних для комфорту і розвитку вашого малюка",
   "countries":[
      "UA"
   ],
   "traffic_type":"Рекламные сообщения",
   "admin_comment":null,
   "owner":"you"
}

Параметры ответа:

Параметр Тип Описание
id int ID отправителя
status string Текущий статус отправителя
name string Имя отправителя
service_type string Тип сервиса
web_site string Веб-сайт 
description  string Описание сервиса 
country  array Страна отправки 
traffic_type  string Тип трафика 
admin_comment  string Комментарий администратора; если комментарий существует придет текст, иначе null 

Получить одно имя отправителя

Чтобы получить одно имя отправителя, отправьте GET запрос по ссылке:

https://api.sendpulse.com/viber/senders/{id}

Параметр запроса:

Параметр Тип Описание
id int ID отправителя required

В случае успешного запроса вы получите ответ: 

{
    "id": 1,
    "status": "verified",
    "name": "infoservice",
    "service_type": "Тестовый сервис",
    "web_site": "https://www.sendpulse.com",
    "description": "Мы тестируем финальную отправку сообщений",
    "country": "UA",
    "traffic_type": "Публичная информация",
    "admin_comment": "Ваше имя одобрено, спасибо что выбрали наш сервис для отправки вайбер сообщений. Команда Sendpulse" 
}

Параметры ответа:

Параметр Тип Описание
id int ID отправителя
status string Текущий статус отправителя
name string Имя отправителя
service_type string Тип сервиса
web_site string Веб-сайт 
description  stirng Описание сервиса 
country  string Страна отправки 
traffic_type  string Тип трафика 
admin_comment  string Комментарий администратора; если комментарий существует придет текст, иначе null 

Получить список получателей в Viber рассылке

Чтобы получить список получателей в Viber рассылке, отправьте GET запрос по ссылке:

https://api.sendpulse.com/viber/task/{id}/recipients

Параметры запроса:

Параметр Тип Описание
id int ID рассылки required

В случае успешного запроса вы получите ответ: 

{
   "task_id":44,
   "recipients":[
      {
         "phone":380934760182,
         "address_book_id":850852,
         "status":"send",
         "send_date":"2017-06-23 08:54:01",
         "price":0.74,
         "currency":"RUR",
         "last_update":"2017-06-23 08:53:38"
      }
   ]
}

Параметры ответа:

Параметр Тип Описание
task_id int ID рассылки
recipients array Массив получателей:
phone int Номер телефона получателя
address_book_id int ID адресной книги, в которой был номер телефона; если же ручной ввод, вернет null
status string Статус сообщения на этот номер (отправлено, доставлено, доставлено и прочитано, доставлено и прочитано и был переход, не доставлено, ошибка) 
send_date string Дата и время отправки
price  float Цена за данное сообщение
currency string Текущая валюта пользователя
last_update string Последнее обновление статистики

Получить информацию по черному списку

Чтобы получить список получателей в черном списке, отправьте GET запрос по ссылке:

https://api.sendpulse.com/v2/viber-service/phone-exception

Параметры запроса:

Параметр Тип Описание
limit int Количество рассылок optional
offset int Смещение для выборки optional

В случае успешного запроса вы получите ответ: 

{
   "data":{
      "list":[
         {
            "id":164,
            "user_id":7046460,
            "phone":73832370050,
            "description":"",
            "add_date":"2021-11-05 13:34:03"
         },
         {
            "id":165,
            "user_id":7046460,
            "phone":73912050915,
            "description":"",
            "add_date":"2021-11-05 13:34:03"
         }
      ],
      "total":29
   }
}

Добавить номер в черный список

Чтобы добавить номер в черный список, отправьте POST запрос по ссылке:

https://api.sendpulse.com/v2/viber-service/phone-exception

Параметры запроса:

Параметр Тип Описание
phones array Массив телефонов вида ["380977217975", "380977217977", "380977217978"] required
description string Описание причины добавления номера в черный список optional

В случае успешного запроса вы получите ответ: 

{
    "result": true,
    "counters": {
        "added": 7,
        "exists": 0
    }
}

Удалить номер из черного списка 

Чтобы удалить номер из черного списка, отправьте DELETE запрос по ссылке:

https://api.sendpulse.com/v2/viber-service/phone-exception

Параметры запроса:

Параметр Тип Описание
phones array Массив телефонов вида ["380977217975", "380977217977", "380977217978"] required

В случае успешного запроса вы получите ответ: 

{
    "result": true,
    "deleted": 7
}