Для отправки сообщений по идентификатору шаблона templateId используются методы:
api/v1/out-messages/whatsapp/template— для отправки сообщений в канал WhatsApp;api/v1/out-messages/viber/template— для отправки сообщений в канал Viber.
api/v1/out-messages/whatsapp/template и api/v1/out-messages/viber/template относятся к новой версии API. Канал WhatsApp
Чтобы отправить сообщение в канал WhatsApp по методу `api/v1/out-messages/whatsapp/template`, отправьте POST-запрос на URL-адрес `https://app.edna.io/api/v1/out-messages/whatsapp/template`
Формат запроса
{
"messageId": "string",
"sender": "string",
"phone": "string",
"templateId": integer,
"textVariables": [
"string",
"string",
"string"
],
"buttonVariables": [
"string",
"string"
],
"headerVariables": [
"string"
],
"attachment": {
"url": "string",
"name": "string"
},
"options": {
"comment": "string",
"sendDelay": "string",
"priority": "string"
}
}
Пример запроса
Сообщение с текстом:
{
"sender": "RETAIL_WA",
"phone": "79090000000",
"templateId": 81,
"options": {
"comment": "2025-08-04T13:00:48.567Z"
}
}
Сообщение с документом во вложении:
{
"sender": "RETAIL_WA",
"phone": "79090000000",
"templateId": 96,
"attachment": {
"url": "https://tourism.gov.in/sites.pdf",
"name": "example"
},
"options": {
"comment": "promotion"
}
}
Сообщение с отложенной отправкой, содержащее документ во вложении, переменные в заголовке, тексте сообщения и динамических кнопках-ссылках:
{
"messageId": "01987f4a-069e-730e-bf59-cedc1e63349",
"sender": "RETAIL_WA",
"phone": "79090000000",
"templateId": 98,
"textVariables": [
"Alex",
"10.05",
"Happy Birthday"
],
"buttonVariables": [
"3FgSD",
"KNsr6"
],
"headerVariables": [
"Good Morning"
],
"attachment": {
"url": "https://tourism.gov.in/sites.pdf",
"name": "offer"
},
"options": {
"comment": "2025-08-15T12:12:16.984Z",
"sendDelay": "PT10H15M47S",
"priority": "NORMAL"
}
}
Параметры запроса
| Параметр | Тип данных | Характер | Описание |
| `messageId` | string | Необязательный | Внутренний идентификатор сообщения. |
| `sender` | string | Обязательный | Название подписи. Чтобы узнать название подписи, используйте метод API для получения списка каналов — параметр `subject`. Получение списка каналов |
| `phone` | string | Обязательный | Адрес получателя — номер телефона. Чтобы узнать адрес получателя, используйте метод API для запроса данных получателей — параметр `addresses.address`. Запрос данных получателей |
| `templateId` | integer | Обязательный | Идентификатор шаблона. Чтобы узнать идентификатор шаблона, используйте метод API для получения списка шаблонов — параметр `id`. Получение списка шаблонов |
| `textVariables` | array of strings | Обязательный, если в шаблоне есть переменные | Значения переменных в сообщении по шаблону. |
| `buttonVariables` | array of strings | Обязательный, если в шаблоне есть кнопки с динамическими ссылками | Значения переменных для кнопок с динамическими ссылками в сообщении по шаблону. Шаблон сообщения WhatsApp может содержать до двух кнопок-ссылок. |
| `headerVariables` | array of strings | Обязательный, если в заголовке шаблона есть переменная | Значение переменной в заголовке сообщения по шаблону. Заголовок может содержать только одну переменную. |
| `attachment` | object | Необязательный | Информация о вложении. |
| `attachment.url` | string | Обязательный, если параметр `attachment` не пустой | Ссылка на вложение: изображение, файл, видео или аудио. |
| `attachment.name` | string | Обязательный, если параметр `attachment` не пустой | Название изображения, файла, видео или аудио. Максимальная длина — 70 символов. |
| `options` | object | Необязательный | Используется для дополнительных настроек отправки сообщения. |
| `options.comment` | string | Необязательный | Текстовый комментарий к сообщению. Значение параметра отображается в отчёте по сообщениям. |
| `options.sendDelay` | string | Необязательный | Временной интервал в формате даты ISO 8601 durations (например, `PT10H15M48S`), раньше которого сообщение не будет отправлено. Используется при отложенной отправке. |
| `options.priority` | string | Необязательный | Используется для обозначения приоритета сообщений. Возможные значения: – `LOW` — низкий приоритет; – `NORMAL` — средний приоритет, значение по умолчанию; – `HIGH` — высокий приоритет; – `REALTIME` — доставка в режиме реального времени. |
Формат ответа
{
"messageId": "string",
"phone": "string"
}
Пример ответа
{
"messageId": "01987f4a-069e-730e-bf59-cedc1e63349",
"phone": "79090000000"
}
Параметры ответа
| Параметр | Тип данных | Описание |
| `messageId` | string | Внутренний идентификатор сообщения. |
| `phone` | string | Адрес получателя — номер телефона. |
Канал Viber
Чтобы отправить сообщение в канал Viber по методу api/v1/out-messages/viber/template, отправьте POST-запрос на URL-адрес https://app.edna.io/api/v1/out-messages/viber/template
Формат запроса
{
"messageId": "string",
"sender": "string",
"phone": "string",
"templateId": integer,
"textVariables": [
"string",
"string",
"string"
],
"options": {
"comment": "$isoTimestamp",
"sendDelay": "timeStampPlus2Minutes",
"priority": "NORMAL"
}
}
Пример запроса
Сообщение с текстом:
{
"sender": "RETAIL_VIBER",
"phone": "79090000000",
"templateId": 32,
"options": {
"comment": "promotion"
}
}
Сообщение с отложенной отправкой и с переменными в тексте сообщения:
{
"messageId": "01987f4a-070e-730e-bf59-cedc1e63350",
"sender": "RETAIL_VIBER",
"phone": "79090000000",
"templateId": 34,
"textVariables": [
"Alex",
"10.05",
"Happy Birthday"
],
"options": {
"comment": "2025-08-12T12:17:20.981Z",
"sendDelay": "PT1H3M4S",
"priority": "NORMAL"
}
}
Параметры запроса
| Параметр | Тип данных | Характер | Описание |
| `messageId` | string | Необязательный | Внутренний идентификатор сообщения. |
| `sender` | string | Обязательный | Название подписи. Чтобы узнать название подписи, используйте метод API для получения списка каналов — параметр `subject`. Получение списка каналов |
| `phone` | string | Обязательный | Адрес получателя — номер телефона. Чтобы узнать адрес получателя, используйте метод API для запроса данных получателей — параметр `addresses.address`. Запрос данных получателей |
| `templateId` | integer | Обязательный | Идентификатор шаблона. Чтобы узнать идентификатор шаблона, используйте метод API для получения списка шаблонов — параметр `id`. Получение списка шаблонов |
| `textVariables` | array of strings | Обязательный, если в шаблоне есть переменные | Значения переменных в сообщении по шаблону. |
| `options` | object | Необязательный | Используется для дополнительных настроек отправки сообщения. |
| `options.comment` | string | Необязательный | Текстовый комментарий к сообщению. Значение параметра отображается в отчёте по сообщениям. |
| `options.sendDelay` | string | Необязательный | Временной интервал в формате даты ISO 8601 durations (например, `PT10H15M48S`), раньше которого сообщение не будет отправлено. Используется при отложенной отправке. |
| `options.priority` | string | Необязательный | Используется для обозначения приоритета сообщений. Возможные значения: – `LOW` — низкий приоритет; – `NORMAL` — средний приоритет, значение по умолчанию; – `HIGH` — высокий приоритет; – `REALTIME` — доставка в режиме реального времени. |
Формат ответа
{
"messageId": "string",
"phone": "string"
}
Пример ответа
{
"messageId": "01987f4a-070e-730e-bf59-cedc1e63350",
"phone": "79090000000"
}
Параметры ответа
| Параметр | Тип данных | Описание |
| `messageId` | string | Внутренний идентификатор сообщения. |
| `phone` | string | Адрес получателя — номер телефона. |