Channel object
Используется в API-запросах, связанных c добавлением и обновлением шаблонов сообщений.
- JSON
- XML
{
"sid": "email",
"fields": {
"text": "Hello, world!",
"html": "<html>Hello, world!</html>",
"subject": "Welcome"
}
},
{
"sid": "sms",
"fields": {
"sms": "Hello, world!"
}
},
{
"sid": "push",
"fields": {
"title": "Welcome",
"body": "Hello, world!",
"icon": "https://example.com/images/picture.jpg",
"click_url": "https://example.com"
}
}
<channels>
<sid>email</sid>
<fields>
<text>Hello, world!</text>
<html><html>Hello, world!</html></html>
<subject>Welcome</subject>
</fields>
</channels>
<channels>
<sid>sms</sid>
<fields>
<sms>Hello, world!</sms>
</fields>
</channels>
<channels>
<sid>push</sid>
<fields>
<body>Hello, world!</body>
<click_url>https://example.com</click_url>
<icon>https://example.com/images/picture.jpg</icon>
<title>Welcome</title>
</fields>
</channels>
Описание
Параметр | Тип | Пример | Описание |
---|---|---|---|
sid | string | "email" "sms" "push" "telegram_bot" "telegram_group" "custom_channel" | Название канала |
fields | object | "fields": { | Настройки шаблона для конкретного канала |
Fields object
Каждый объект channel
содержит объект fields
:
Email fields
- JSON
- XML
{
"sid": "email",
"fields": {
"text": "Текстовая версия письма",
"html": "<html>HTML версия письма</html>",
"subject": "Тема письма",
"from_email": "test@example.com",
"from_name": "Jenny's List",
"replyto_email": "test_reply@example.com",
"replyto_name": "Jenny",
"is_not_inline": true
}
}
<xml>
<sid>email</sid>
<fields>
<text>Текстовая версия письма</text>
<html><html>HTML версия письма</html></html>
<subject>Тема письма</subject>
<from_email>test@example.com</from_email>
<from_name>Jenny's List</from_name>
<replyto_email>test_reply@example.com</replyto_email>
<replyto_name>Jenny</replyto_name>
<is_not_inline>true</is_not_inline>
</fields>
</xml>
Описание
Параметр | Тип | Пример | Описание |
---|---|---|---|
text | string | "Hello, world!" | Текстовая версия письма |
html | string | "<html>Hello, world!</html>" | HTML версия письма |
is_amp | bool | false | Есть ли в шаблоне amp-версия |
amp | string | "<html>Hello, world!</html>" | AMP HTML версия письма |
subject | string | "Weather alert" | Тема сообщения |
from_email | string | "test@example.com" | Перезаписать from-email |
from_name | string | "Jenny's List" | Перезаписать from-name |
replyto_email | string | "test_reply@example.com" | Перезаписать replyto_email |
replyto_name | string | "Jenny" | Перезаписать replyto_name |
is_not_inline | bool | true | Не конвертировать CSS в inline |
SMS fields
- JSON
- XML
{
"sid": "sms",
"fields": {
"sms": "Содержание SMS сообщения",
"sms_max_count": 0,
"add_sms_url_scheme": true
}
}
<xml>
<sid>sms</sid>
<fields>
<sms>Содержание SMS сообщения</sms>
<sms_max_count>0</sms_max_count>
<add_sms_url_scheme>true</add_sms_url_scheme>
</fields>
</xml>
Описание
Параметр | Тип | Пример | Описание |
---|---|---|---|
sms | string | "Hello, world!" | Текст сообщения |
sms_max_count | int | 0 | Лимит на количество SMS |
add_sms_url_scheme | bool | true | Добавлять "http://" в ссылки |
Push fields
- JSON
- XML
{
"sid": "push",
"fields": {
"title": "Заголовок push уведомления",
"body": "Содержание push уведомления",
"icon": "https://example.com/images/icon.jpg",
"click_url": "https://example.com",
"custom_push_json_raw": "{}"
}
}
<xml>
<sid>push</sid>
<fields>
<title>Заголовок push уведомления</title>
<body>Содержание push уведомления</body>
<icon>https://example.com/images/icon.jpg</icon>
<click_url>https://example.com</click_url>
<custom_push_json_raw>{}</custom_push_json_raw>
</fields>
</xml>
Описание
Параметр | Тип | Пример | Описание |
---|---|---|---|
title | string | "Welcome" | Заголовок сообщения |
body | string | "Hello, world!" | Текст сообщения |
icon | string | "https://example.com/images/test.jpg" | URL-адрес, по которому расположена иконка для уведомления |
click_url | string | "https://example.com" | Ссылка для перехода по клику |
custom_push_json_raw | string | "" | Custom JSON для передачи в мобильный push |
Notify fields
- JSON
- XML
{
"sid": "notify",
"fields": {
"template": {
"id": 1,
"name": "message_after_purchase",
"type": "NOTIFY",
"status": "NOT_SENT",
"is_draft": true,
"edna_account_id": "",
"notify_service_name": "altcraft_testing",
"vk_data": {
"body": "Содержание Notify сообщения",
"buttons": [],
"attachments": [],
"enabled": true,
"inline_keyboard": false,
"hide_keyboard": false,
"reply_enabled": false
},
"ok_data": {
"enabled": true,
"body": "Содержание Notify сообщ ения"
},
"sms_data": {
"enabled": true,
"body": "Содержание Notify сообщения",
"type": "advert"
},
"routes": [
{
"route": "vk",
"deliv_timeout": 86400,
"read_timeout": 86400
},
{
"route": "ok",
"deliv_timeout": 86400,
"read_timeout": 86400
},
{
"route": "sms"
}
]
},
"info": {
"is_obsolete": false,
"not_found": false
},
"params": {
"name": "{{$.Lead._fname}}",
"order_number": "{{$.Lead.order_number}}"
}
}
}
<xml>
<sid>notify</sid>
<fields>
<info>
<is_obsolete>false</is_obsolete>
<not_found>false</not_found>
</info>
<params>
<name>{{$.Lead._fname}}</name>
<order_number>{{$.Lead.order_number}}</order_number>
</params>
<template>
<edna_account_id/>
<id>1</id>
<is_draft>true</is_draft>
<name>message_after_purchase</name>
<notify_service_name>altcraft_testing</notify_service_name>
<ok_data>
<body>Содержание Notify сообщения</body>
<enabled>true</enabled>
</ok_data>
<routes>
<deliv_timeout>86400</deliv_timeout>
<read_timeout>86400</read_timeout>
<route>vk</route>
</routes>
<routes>
<deliv_timeout>86400</deliv_timeout>
<read_timeout>86400</read_timeout>
<route>ok</route>
</routes>
<routes>
<route>sms</route>
</routes>
<sms_data>
<body>Содержание Notify сообщения</body>
<enabled>true</enabled>
<type>advert</type>
</sms_data>
<status>NOT_SENT</status>
<type>NOTIFY</type>
<vk_data>
<attachments/>
<body>Содержание Notify сообщения</body>
<buttons/>
<enabled>true</enabled>
<hide_keyboard>false</hide_keyboard>
<inline_keyboard>false</inline_keyboard>
<reply_enabled>false</reply_enabled>
</vk_data>
</template>
</fields>
</xml>
Описание
Параметр | Тип | Пример | Описание |
---|---|---|---|
name | string | "message_after_purchase" | Название шаблона |
type | string | "NOTIFY" | Тип шаблона |
status | string | "NOT_SENT" | Статус отправки шаблона |
is_draft | boolean | true | Является ли шаблон черновиком |
edna_account_id | string | "123456" | ID аккаунта Edna |
notify_service_name | string | "altcraft_testing" | Имя сервиса уведомлений |
body | string | "Содержание Notify сообщения" | Текст сообщения для VK |
buttons | array | [] | Кнопки в сообщении VK |
attachments | array | [] | Вложения в сообщении VK |
enabled | boolean | true | Включено ли сообщение VK |
inline_keyboard | boolean | false | Используется ли инлайн-клавиатура VK |
hide_keyboard | boolean | false | Скрыть ли клавиатуру VK после отправки |
reply_enabled | boolean | false | Разрешён ли ответ VK пользователю |
enabled | boolean | true | Включено ли сообщение в ОК |
body | string | "Содержание Notify сообщения" | Текст сообщения для ОК |
enabled | boolean | true | Включено ли SMS-сообщение |
body | string | "Содержание Notify сообщения" | Текст SMS-сообщения |
type | string | "advert" | Тип SMS-сообщения |
route | string | "vk" | Канал доставки |
deliv_timeout | integer | 86400 | Таймаут доставки (в секундах) |
read_timeout | integer | 86400 | Таймаут ожидания прочтения (в секундах) |
route | string | "ok" | Второй канал доставки |
route | string | "sms" | Третий канал доставки |
is_obsolete | boolean | false | Устарел ли шаблон |
not_found | boolean | false | Был ли шаблон найден |
Telegram fields
- JSON
- XML
{
"sid": "telegram_bot",
"fields": {
"image": {
"attach": [
{
"content": "/9j/bcvb4234hgdffsd45",
"filekey": "678636591824633380762bee",
"name": "example.jpg",
"size": 65101,
"type": "image_path"
}
]
},
"image_caption": "Описание Telegram bot сообщения",
"markup_style": "HTML"
}
}
<xml>
<sid>telegram_bot</sid>
<fields>
<image>
<attach>
<content>/9j/bcvb4234hgdffsd45</content>
<filekey>678636591824633380762bee</filekey>
<name>example.jpg</name>
<size>65101</size>
<type>image_path</type>
</attach>
</image>
<image_caption>Описание Telegram bot сообщения</image_caption>
<markup_style>HTML</markup_style>
</fields>
</xml>
Описание
Параметр | Тип | Пример | Описание |
---|---|---|---|
legacy_button_link | string | "https://example.com" | Ссылка, прикреплённая к кнопке |
legacy_button_name | string | "button1" | Название кнопки |
markdown_type | string | "HTML" | Тип форматирования текста (HTML/Markdown) |
text | string | "example" | Основной текст сообщения |
content | string | "/9j/bcvb4234hgdffsd45" | Бинарное содержимое файла (base64) |
filekey | string | "678636591824633380762bee" | Уникальный идентификатор файла |
name | string | "example.jpg" | Название прикреплённого файла |
size | integer | 65101 | Размер файла в байтах |
type | string | "image_path" | Тип вложения (например, путь к файлу) |
image_caption | string | "Описание изображения" | Подпись к изображению |
audio_caption | string | "Описание аудиофайла" | Подпись к аудиофайлу |
video_caption | string | "Описание видеофайла" | Подпись к видеофайлу |
markup_style | string | "HTML" | Стиль разметки для Telegram (HTML/Markdown) |
Whatsapp fields
- JSON
- XML
{
"id": 9,
"sid": "whatsapp",
"fields": {
"type": "TEMPLATE",
"template": {
"type": "360DIALOG",
"name": "initiate_message_ru",
"hsm_external_id": "c466caf6_c340_4d85_8659_6c9685618a9f_ru_initiate_message_ru",
"language": "ru",
"wa_account_id": "+79999999999",
"hsm_hash_sum": "0b7ac0a91b0ba52e961b87c2297d2bd06a3f5bc1",
"is_invalid": false,
"hsm_not_found": false,
"account_not_found": false
},
"raw_hsm": {
"dialog_template": {
"components": [
{
"type": "BODY",
"text": "Здравствуйте! Благодарю за ожидание, мне понадобилось немного времени, чтобы уточнить информацию по вашему запросу. Подскажите, когда Вам будет удобно обсудить детали? 😃"
}
],
"name": "initiate_message_ru",
"namespace": "c466caf6_c340_4d85_8659_6c9685618a9f",
"category": "ISSUE_RESOLUTION",
"language": "ru",
"rejected_reason": "NONE",
"status": "approved"
},
"edna_template": null
}
}
}
<xml>
<id>9</id>
<sid>whatsapp</sid>
<fields>
<type>TEMPLATE</type>
<template>
<type>360DIALOG</type>
<name>initiate_message_ru</name>
<hsm_external_id>c466caf6_c340_4d85_8659_6c9685618a9f_ru_initiate_message_ru</hsm_external_id>
<language>ru</language>
<wa_account_id>+79999999999</wa_account_id>
<hsm_hash_sum>0b7ac0a91b0ba52e961b87c2297d2bd06a3f5bc1</hsm_hash_sum>
<is_invalid>false</is_invalid>
<hsm_not_found>false</hsm_not_found>
<account_not_found>false</account_not_found>
</template>
<raw_hsm>
<dialog_template>
<components>
<component>
<type>BODY</type>
<text>Здравствуйте! Благодарю за ожидание, мне понадобилось немного времени, чтобы уточнить информацию по вашему запросу. Подскажите, когда Вам будет удобно обсудить детали? 😃</text>
</component>
</components>
<name>initiate_message_ru</name>
<namespace>c466caf6_c340_4d85_8659_6c9685618a9f</namespace>
<category>ISSUE_RESOLUTION</category>
<language>ru</language>
<rejected_reason>NONE</rejected_reason>
<status>approved</status>
</dialog_template>
<edna_template xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
</raw_hsm>
</fields>
</xml>
Опи сание
Параметр | Тип | Пример | Описание |
---|---|---|---|
type | string | "360DIALOG" | Тип шаблона WhatsApp |
name | string | "initiate_message_ru" | Название шаблона |
hsm_external_id | string | "c466caf6_c340_4d85_8659_6c9685618a9f_ru_initiate_message_ru" | Внешний ID шаблона |
language | string | "ru" | Язык шаблона |
wa_account_id | string | "+79999999999" | ID WhatsApp-аккаунта |
hsm_hash_sum | string | "0b7ac0a91b0ba52e961b87c2297d2bd06a3f5bc1" | Хэш шаблона |
is_invalid | boolean | false | Является ли шаблон некорректным |
hsm_not_found | boolean | false | Найден ли HSM шаблон |
account_not_found | boolean | false | Найден ли аккаунт |
name | string | "initiate_message_ru" | Название шаблона в raw_hsm |
namespace | string | "c466caf6_c340_4d85_8659_6c9685618a9f" | Namespace шаблона |
category | string | "ISSUE_RESOLUTION" | Категория шаблона |
status | string | "approved" | Статус шаблона (например, approved, rejected) |
rejected_reason | string | "NONE" | Причина отклонения шаблона (если есть) |
components.type | string | "BODY" | Тип компонента шаблона |
components.text | string | "Здравствуйте! Благодарю за ожидание..." | Текст тела сообщения |
edna_template | string | "null" | Шаблон Edna, если присутствует (в данном случае — отсутствует) |
Viber™ fields
- JSON
- XML
"id": 10,
{
"sid": "viber",
"fields": {
"series": [
{
"type": "TEXT",
"text": "текст сообщения"
},
{
"type": "IMAGE",
"image": "/849074172/3/example.jpg"
},
{
"type": "VIDEO",
"thumbnail": "/848985842/3/678632345824633380762bee/example.jpg",
"duration": 6,
"file_size": 2,
"action": "https://example.com/lib/preview/mp4/example.mp4"
},
{
"type": "TEXT_BUTTON",
"text": "Пример текста",
"caption": "текст кнопки",
"action": "https://example.com"
},
{
"type": "FILE",
"file_type": "pdf",
"file_name": "example.pdf",
"action": "https://www.example.org/testfiles/resources/pdf/example.pdf"
}
]
}
}
<xml>
<id>10</id>
<sid>viber</sid>
<fields>
<series>
<element>
<type>TEXT</type>
<text>текст сообщения</text>
</element>
<element>
<type>IMAGE</type>
<image>/849074172/3/example.jpg</image>
</element>
<element>
<type>VIDEO</type>
<thumbnail>/848985842/3/678632345824633380762bee/example.jpg</thumbnail>
<duration>6</duration>
<file_size>2</file_size>
<action>https://example.com/lib/preview/mp4/example.mp4</action>
</element>
<element>
<type>TEXT_BUTTON</type>
<text>Пример текста</text>
<caption>текст кнопки</caption>
<action>https://example.com</action>
</element>
<element>
<type>FILE</type>
<file_type>pdf</file_type>
<file_name>example.pdf</file_name>
<action>https://www.example.org/testfiles/resources/pdf/example.pdf</action>
</element>
</series>
</fields>
</xml>
Описание
Параметр | Тип | Пример | Описание |
---|---|---|---|
type | string | "TEXT" | Тип элемента в серии сообщения |
text | string | "текст сообщения" | Текстовое содержимое сообщения |
image | string | "/849074172/3/example.jpg" | Путь к изображению |
thumbnail | string | "/848985842/3/678632345824633380762bee/example.jpg" | Превью для видео |
duration | integer | 6 | Длительность видео в секундах |
file_size | integer | 2 | Размер файла в мегабайтах |
action | string | "https://example.com/lib/preview/mp4/example.mp4" | Ссылка действия (для видео, кнопки или файла) |
caption | string | "текст кнопки" | Подпись для кнопки |
file_type | string | "pdf" | Тип файла (например, PDF) |
file_name | string | "example.pdf" | Название прикреплённого файла |
* Viber™ является товарным знаком Rakuten Group, Inc. Заблокирован на территории РФ.