Раздел содержит описание метода API для получения списка шаблонов.
Метод message-matchers/get-by-request
Ответ метода message-matchers/get-by-request
содержит список шаблонов для переданного идентификатора подписи. В случае успешного выполнения запроса сервер вернет код 200
и JSON-объект со списком шаблонов. В случае неуспешного выполнения запроса сервер вернет сообщение с кодом ошибки.
Про получение идентификаторов подписи для каналов смотрите в статье.
URL-адрес подключения
Для отправки сообщения выполняется POST-запрос на URL-адрес: https://app.edna.io/api/message-matchers/get-by-request.
Формат запроса
В теле запроса передается JSON-объект с параметрами.
{ "subjectId": 23, "matcherTypes": ["OPERATOR","USER","CUSTOM"] }
Параметры запроса
Параметр | Тип данных | Описание |
subjectId | integer | Идентификатор подписи |
matcherTypes | array (optional) или string (optional) | Тип шаблона. Возможные значения: • OPERATOR — операторский шаблон (шаблон, который был зарегистрирован у оператора связи);• USER — пользовательский шаблон (шаблон, который был создан пользователем на основе операторского шаблона);• CUSTOM — шаблон “с нуля” без каких-либо ограничений, который может содержать любой контент, разрешенный для этого канала. |
Формат ответа
В ответ на запрос возвращается JSON-объект, содержащий данные о шаблонах.
[ { "id": 0, "name": "string", "channelType": "SMS", "language": "string", "content": { "attachment": { "id": 0, "fileUrl": "string", "originalFileName": "string", "size": 0 }, "action": "string", "caption": "string", "header": { "headerType": "TEXT", "text": "string", "attachment": { "id": 0, "fileUrl": "string", "originalFileName": "string", "size": 0 }, "headerExampleTextParam": "string", "headerExampleMediaUrl": "string" }, "text": "string", "footer": { "text": "string" }, "keyboard": { "rows": [ { "buttons": [ { "text": "string", "buttonType": "PHONE", "otpType": "COPY_CODE", "url": "string", "urlPostfix": "string", "phone": "string", "payload": "string", "urlTextExample": "string", "color": "string", "requestLocation": true, "autofillText": "string", "packageName": "string", "hash": "string", "appId": 0, "ownerId": 0 } ] } ] }, "securityRecommendation": true, "codeExpirationMinutes": 90, "textExampleParams": [ "string" ], "vkAttachments": [ { "id": 0, "fileUrl": "string", "originalFileName": "string", "size": 0 } ], "vkTwoWayEnabled": true }, "contentType": "TEXT", "category": "ACCOUNT_UPDATE", "status": "string", "locked": true, "type": "OPERATOR", "createdAt": "2023-09-27T11:57:14.834Z", "updatedAt": "2023-09-27T11:57:14.834Z" } ]
Параметры ответа
Параметр | Тип данных | Описание |
id | integer | Идентификатор шаблона. |
name | string | Название шаблона. |
channelType | string | Тип канала взаимодействия. Возможные значения: WHATSAPP, VIBER, SMS, VK_NOTIFY, OK_NOTIFY. |
language | string | Язык шаблона. Только для каналов WHATSAPP, VIBER. |
content | object | Содержит контент шаблона. |
content.attachment | object | Содержит информацию о вложении шаблона. Только для канала WHATSAPP. |
content.attachment.id | integer | Идентификатор файла вложения. |
content.attachment. | string | URL-адрес файла. |
content.attachment. | string | Имя файла. |
content.attachment.size | integer | Размер файла. |
content.action | string | Ссылка кнопки. Только для каналов VIBER. |
content.caption | string | Название кнопки. Только для канала VIBER. |
content.header | object | Содержит информацию о заголовке шаблона. Только для канала WHATSAPP. |
content.header.headerType | string | Тип заголовка. Если в шаблоне нет заголовка, то headerType не передается. Только для канала WHATSAPP. |
content.header.text | string | Текст заголовка. |
content.header.attachment | object | Содержит информацию о файле в заголовке. |
content.header.attachment. | integer | Идентификатор файла в заголовке. |
content.header.attachment. | string | URL-адрес файла в заголовке. |
content.header.attachment. | string | Имя файла в заголовке. |
content.header.attachment. | integer | Размер файла в заголовке. |
content.header. headerExampleTextParam | string | Пример текста заголовка. |
content.header. | string | URL-адрес примера файла заголовка. |
content.text | string | Текст шаблона. |
content.footer | object | Содержит подпись шаблона. Только для канала WHATSAPP. |
content.footer.text | string | Текст подписи. |
content.keyboard | object | Содержит информацию о кнопках. Только для каналов WHATSAPP, VIBER, VK_NOTIFY. |
content.keyboard.rows | object | Содержит информацию о кнопках. |
content.keyboard.rows.buttons | object | Массив объектов, в каждом из которых определяется кнопка. |
content.keyboard.rows.buttons.text | string | Текст кнопки. |
content.keyboard.rows.buttons.buttonType | string | Тип кнопки. |
content.keyboard.rows.buttons.otpType | string | Тип кнопки в сообщении с одноразовым паролем: COPY_CODE или ONE_TAP. Только для канала WHATSAPP. |
content.keyboard.rows.buttons.url | string | URL-адрес, который открывается при нажатии кнопки. |
content.keyboard.rows.buttons.urlPostfix | string | Динамическая часть ссылки URL-адреса кнопки. |
content.keyboard.rows.buttons.phone | string | Номер телефона, который набирается при нажатии кнопки. |
content.keyboard.rows.buttons.payload | string | Текст быстрого ответа. |
content.keyboard.rows.buttons.urlTextExample | string | Пример URL-адреса для регистрации. Только для канала WHATSAPP. |
content.keyboard.rows.buttons.color | string | Цвет кнопки. Только для канала VK_NOTIFY. |
content.keyboard.rows.buttons.requestLocation | boolean | Указывает, что кнопка передает местоположение. Только для канала VK_NOTIFY. |
content.keyboard.rows.buttons.autofillText | string | Надпись на кнопке автоматического заполнения. Только для канала WHATSAPP. |
content.keyboard.rows.buttons.packageName | string | Название пакета для кнопки автоматического заполнения. Только для канала WHATSAPP. |
content.keyboard.rows.buttons.hash | string | Хэш подписи приложения для кнопки автоматического заполнения. Для канала WHATSAPP и для приложения VK Mini App. |
content.keyboard.rows.buttons.appId | integer | Идентификатор приложения VK Mini App. Только для канала VK_NOTIFY. |
content.keyboard.rows.buttons.ownerId | integer | Идентификатор владельца приложения VK Mini App. Только для канала VK_NOTIFY. |
content.securityRecommendation | boolean | Если true , в сообщении на основе шаблона отображается рекомендация по безопасности. Только для канала WHATSAPP. |
content.codeExpirationMinutes | integer | Время действия одноразового пароля в минутах. Только для канала WHATSAPP. |
content.textExampleParams | string | Содержит по одному примеру для каждой строки символов в тексте шаблона. Только для канала WHATSAPP. |
content.vkAttachments | object | Содержит информацию о вложениях в шаблоне. Только для канала VK_NOTIFY. |
content.vkAttachments.id | integer | Идентификатор файла вложения. |
content.vkAttachments.fileUrl | string | URL-адрес файла. |
content.vkAttachments.originalFileName | string | Имя файла. |
content.vkAttachments.size | integer | Размер файла. |
content.vkTwoWayEnabled | boolean | Если true , получатели могут отвечать на сообщения на основе шаблона. Только для канала VK_NOTIFY. |
contentType | string | Тип контента шаблона. Возможные значения: TEXT , IMAGE , BUTTON , DOCUMENT , LOCATION , AUDIO , VIDEO , AUTHENTICATION. |
category | string | Категория шаблона. Только для каналов WHATSAPP, VIBER. |
status | string | Статус шаблона. Возможные значения: • APPROVED — активный. Это единственный статус, при котором шаблон возможно использовать для отправки сообщений.• REJECTED — отклонен оператором;• PENDING — на регистрации;• NOT_SENT — черновик;• ARCHIVED — в архиве;• PAUSED — приостановлен;• DISABLED — отключен. |
locked | boolean | Признак блокировки шаблона. Возможные значения: • true — шаблон заблокирован;• false — шаблон активен. |
type | string | Тип шаблона. Возможные значения: • OPERATOR — операторский шаблон (шаблон, который был зарегистрирован у оператора связи);• USER — пользовательский шаблон (шаблон, который был создан пользователем на основе операторского шаблона). |
createdAt | string | Время создания шаблона. |
updatedAt | string | Время последнего изменения шаблона. |
Коды ответов на запрос
Код | Описание |
ok | Запрос успешно выполнен. |
error-subject-unknown | Указанное имя подписи отсутствует. |
error-syntax | Неверно указан тип канала. |