Документація для розробників
RCS
SMS / 2Way SMS API
Viber API
Number Intelligence
Контакти
Відправники
Списки
Стоп-листи
Статистика
Надіслати RCS-повідомлення
Метод: POST
Ендпоінт: /api/campaigns/rcs/send
Опис: Цей метод дає змогу надіслати одне RCS-повідомлення або виконати масове розсилання RCS-повідомлень. Також підтримується надсилання повідомлень через альтернативний SMS-канал.
Вхідні параметри
| Параметр | Обовʼязковий | Тип | Опис. |
|---|---|---|---|
| phones | Так | Array of objects | Обʼєкт містить інформацію про номер телефону (number) та ідентифікатор (reference_id) для надсилання повідомлення абоненту. Можна вказати від 1 до 5000 номерів. |
| sender | Так | string | Імʼя агента, який використовується для надсилання RCS-повідомлення. Від 1 до 40 символів. |
| options | Так | Object | Обʼєкт містить інформацію про вміст повідомлення. |
| validity | Ні | integer | Термін дії RCS-повідомлення в годинах. Після закінчення цього періоду повідомлення отримає статус EXPIRED або буде переадресоване на SMS-канал для надсилання, якщо це було вказано в запиті. Значення — від 1 до 72. За замовчуванням — 72 години. |
| alternative_channel | Ні | Object | Обʼєкт містить інформацію для надсилання повідомлення через альтернативний SMS-канал у разі недоставлення RCS-повідомлення. |
| start_at | Ні | string | Дата й час надсилання повідомлення для планування кампанії. Максимально допустима дата й час для планування кампанії — 30 днів, включно з поточною датою, до 23:59:59 30-го дня. Формат: «yyyy-mm-dd hh:mm:ss» |
| add_to_contact_book | Ні | boolean | Визначає, чи додавати вказаний номер телефону отримувача повідомлення до книги контактів. Можливі значення: true / false. За замовчуванням — “true”. |
| tariff_code | Ні | integer | Номер тарифу для тарифікації RCS-повідомлень, підключеного до облікового запису користувача. |
| check_stop_list | Ні | boolean | Перевіряти номер телефону отримувача на наявність у стоп-листі RCS. Можливі значення: true — якщо номер знайдено в стоп-листі RCS, не надсилати повідомлення; false — ігнорувати стоп-лист RCS. За замовчуванням — «true». |
Параметри обʼєкта phones
| Параметр | Обовʼязковий | Тип | Опис. |
|---|---|---|---|
| number | Так | string | Номер мобільного телефону отримувача. 9–15 символів: код країни без “+” і номер телефону. |
| reference_id | Ні | string | Зовнішній ідентифікатор повідомлення. До 36 символів. Може містити: /a-zA-Z0-9/. |
Параметри обʼєкта alternative_channel
| Параметр | Обовʼязковий | Тип | Опис. |
|---|---|---|---|
| sms | Ні | Object | Обʼєкт містить інформацію про повідомлення для альтернативної доставки через SMS |
Параметри обʼєкта sms
| Параметр | Обовʼязковий | Тип | Опис. |
|---|---|---|---|
| text | Так | string | Текст повідомлення для SMS: максимум — 335 символів у кодуванні Unicode, 765 — у кодуванні GSM. |
| sender | Так | string | Імʼя відправника SMS. Довжина — до 15 символів: від 1 до 11 символів (латинські літери, символи, цифри, дозволені пробіли). Пробіл може бути всередині імені відправника, але тільки не на першому символі (один пробіл рахується як 1 символ). Для числового відправника пробіли не допускаються, довжина — від 1 до 15 символів (лише цифри та знак «+» перед першою цифрою). |
| validity | Ні | integer | Термін дії SMS-повідомлення в годинах. Після завершення цього періоду повідомлення отримає статус EXPIRED Значення — від 1 до 72. За замовчуванням — 72 години. |
| check_stop_list | Ні | boolean | Перевіряти номер телефону отримувача на наявність у стоп-листі SMS. Можливі значення: true — якщо номер знайдено в стоп-листі SMS, не надсилати повідомлення; false — ігнорувати стоп-лист SMS. За замовчуванням — «true». |
Параметри обʼєкта options
Обʼєкт options, залежно від типу RCS-повідомлення, може приймати лише text (для текстового повідомлення) або масив card (для повідомлень Single card і Carousel):
| Параметр | Обовʼязковий | Тип | Опис. |
|---|---|---|---|
| text | Так | string | Вказується лише для “text” message type . Текст RCS-повідомлення — 1–160 символів. Може містити емодзі (кількість символів для емодзі рахується за кодовими точками UTF-16: прості емодзі — 2 кодові точки, складні — 4, кирилиця — 1). Якщо повідомлення містить посилання у форматі http://nosms.cc/XXXX, система згенерує посилання для відписки під час надсилання повідомлення. |
| cards | Так | Array |
Масив містить інформацію про картку. Максимальна кількість карток — 5. Повідомлення з однією карткою називаються «Single card», повідомлення з 2 і більше картками — «Carousel». Залежно від обраного тарифу кількість карток може бути обмежена (наприклад, можна надсилати лише Single card).
Деталі надасть менеджер. |
Параметри масиву cards
Для повідомлень Single card і кожної картки Carousel має бути вказано принаймні один із параметрів: text або media.
| Параметр | Обовʼязковий | Тип | Опис |
|---|---|---|---|
| text | Так/Ні | string |
Текст RCS-повідомлення.
До 1000 символів. Може містити емодзі (кількість символів для емодзі рахується за кодовими точками UTF-16. Прості емодзі — 2 кодові точки, складні — 4, кирилиця — 1). Якщо текст повідомлення містить посилання у форматі http://nosms.cc/XXXX, система згенерує система згенерує посилання для відписки під час надсилання повідомлення. Якщо повідомлення містить обʼєкт media, параметр text є необовʼязковим і може бути пропущений |
| media | Так/Ні | Object |
Обʼєкт містить інформацію про медіафайл, надісланий у повідомленні. Якщо повідомлення містить
text
, the
media
object is
параметр є необовʼязковим і може бути пропущений. |
| suggestions | Ні | Array of | Масив обʼєктів з інформацією про вкладені кнопки. До картки можна додати не більше 2 кнопок. |
Параметри обʼєкта media
| Параметр | Обовʼязковий | Тип | Опис |
|---|---|---|---|
| url | Так / Ні | string |
Містить посилання на зображення або відео, яке буде
додано до повідомлення. Посилання повинно починатися з http/https. Макс. довжина — до 1000 символів. Допустимі формати для зображень/відео: – зображення: jpeg, jpg, gif, png – відео: h263, m4v, mp4, mpeg, mpeg4, webm – розмір: зображення — 2 МБ, відео — 10 МБ Обовʼязковий, якщо повідомлення містить обʼєкт media object. |
Параметри масиву suggestions
| Параметр | Обовʼязковий | Тип | Опис. |
|---|---|---|---|
| text | Так / Ні | string | Містить текст кнопки, 1–25 символів |
| Можна вказати лише один із параметрів: url або phone. | |||
| url | Так / Ні | string |
Посилання, яке відкривається натисканням кнопки. Посилання повинно починатися з http/https.
Макс. довжина — до 1000 символів. Якщо потрібно додати кнопку для відписки користувача від розсилки, вкажіть посилання у форматі http://nosms.cc/XXXX — система BSG згенерує посилання для відписки під час надсилання повідомлення. Коли користувач натисне кнопку відписки, його номер буде додано до стоп-листа RCS. Обовʼязковий, якщо вказано значення параметра «text» і не вказано «phone» |
| phone | Так / Ні | string |
Номер телефону для дзвінка натисканням кнопки.
9–15 символів (довжина має враховувати код країни та номер телефону; номер телефону вказується без +). При надсиланні RCS-повідомлень в Україну номер телефону для дзвінка через кнопку має бути українським. Обовʼязковий, якщо вказано значення параметра «text» і не вказано «url» |
Answer elements
| Параметр | Тип | Опис. |
|---|---|---|
| id | integer | Унікальний ідентифікатор створеної RCS-кампанії. |
| name | string | Назва кампанії, яку автоматично генерує система: «RCS api campaign / {yyyyy-mm-dd hh:mm:ss}», де yyyy-mm-dd hh:mm:ss — дата й час створення кампанії. |
| sender | string | Імʼя агента. |
| status | string | Статус кампанії. На момент створення кампанії відображається статус «creation». |
| message_type | string | Тип повідомлення: rcs |
| start_at | string | Дата й час початку кампанії (заплановані) у форматі: yyyy-mm-dd hh:mm:ss |
| real_start_at | string | Фактичні дата й час початку кампанії у форматі: yyyy-mm-dd hh:mm:ss. |
| finished_at | null|string | Дата й час завершення кампанії у форматі: yyyy-mm-dd hh:mm:ss. При створенні кампанії значення — null. |
| created_at | string | Дата й час створення кампанії у форматі: yyyy-mm-dd hh:mm:ss | |||
|---|---|---|---|---|---|
| statistics | object | Обʼєкт статистики кампанії. | |||
| delivered | integer | Загальна кількість доставлених rcs-повідомлень у межах кампанії зі статусами: DELIVERED, READ. При створенні кампанії значення завжди = 0. | |||
| sent | integer | Загальна кількість надісланих rcs-повідомлень у межах кампанії зі статусами: DELIVERED, SENT, ACCEPTED, SENDING, UNDELIVERED, FAILED, EXPIRED, UNKNOWN. При створенні кампанії значення завжди = 0. | |||
| calculated_price | float | Попередньо розрахована вартість кампанії згідно з тарифом користувача. | |||
| alternative_channels | object | Обʼєкт містить інформацію про повідомлення, надіслані через альтернативний канал. | |||
| sms | object | Альтернативний канал для надсилання повідомлень. | |||
| statistics | object | Обʼєкт статистики SMS-повідомлень, надісланих у межах кампанії. | |||
| delivere d | integer | Загальна кількість доставлених SMS-повідомлень у межах кампанії зі статусом: DELIVERED. При створенні кампанії значення завжди = 0. | |||
| sent | integer |
Загальна кількість надісланих SMS-повідомлень у межах кампанії зі статусами:
DELIVERED SENT ACCEPTED SENDING UNDELIVERED FAILED EXPIRED UNKNOWN При створенні кампанії значення завжди = 0. |
Приклад запиту для надсилання RCS-повідомлення:
{
"phones":[
{
"number":"380661231231",
"reference_id":"string"
}
],
"sender":"Agent Name",
"options":{
"cards":[
{
"text":"This is the first card text",
"media":{
"url":"https://domain.com/image.png"
},
"suggestions":[
{
"text":"Go to site",
"url":"https://domain.com/"
},
{
"text":"Call us",
"phone":"380971112233"
}
]
},
{
"text":"This is the second card text",
"media":{
"url":"https://domain.com/image2.png"
},
"suggestions":[
{
"text":"Go to site",
"url":"https://domain.com/"
}
]
}
]
},
"alternative_channel":{
"sms":{
"text":"Hello, world!",
"sender":"string",
"validity":72,
"check_stop_list":true
}
},
"start_at":"2024-09-01 09:00:00",
"tariff_code":0,
"validity":72,
"add_to_contact_book":true,
"check_stop_list":true
}
Приклад відповіді:
Якщо запит виконано успішно.
{
"data":{
"id":1235643,
"name":"string",
"sender":"string",
"status":"creation",
"message_type":"rcs",
"start_at":"2021-04-27 19:44:06",
"real_start_at":"2021-04-27 19:44:06",
"finished_at":"2021-04-27 19:44:06",
"created_at":"2021-04-27 19:44:06",
"statistics":{
"delivered":0,
"sent":0
},
"calculated_price":123.4,
"alternative_channels":{
"sms":{
"statistic":{
"delivered":0,
"sent":0
}
}
}
}
}
Зацікавлені у спеціальній пропозиції?
Готові розширювати можливості?
Давайте обговоримо.
Надіслати