Получение списка шаблонов

Раздел содержит описание метода API для получения списка шаблонов.

Метод message-matchers/get-by-request

Ответ метода message-matchers/get-by-request содержит список шаблонов для переданного идентификатора подписи. В случае успешного выполнения запроса сервер вернет код 200 и JSON-объект со списком шаблонов. В случае неуспешного выполнения запроса сервер вернет сообщение с кодом ошибки.

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

URL-адрес подключения

Для отправки сообщения выполняется POST-запрос на URL-адрес: https://app.edna.by/api/message-matchers/get-by-request

Формат запроса

В теле запроса передается JSON-объект с параметрами.

{
"subjectId": 23,
"matcherTypes": ["OPERATOR","USER","CUSTOM"]
}

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

ПараметрТип данныхОписание
subjectIdintegerИдентификатор подписи
matcherTypesarray (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"
  }
]

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

ПараметрТип данныхОписание
idintegerИдентификатор шаблона.
namestringНазвание шаблона.
channelTypestringТип канала взаимодействия. Возможные значения: WHATSAPP, VIBER, SMS, VK_NOTIFY, OK_NOTIFY.
languagestringЯзык шаблона. Только для каналов WHATSAPP, VIBER.
contentobjectСодержит контент шаблона.
content.attachmentobjectСодержит информацию о вложении шаблона. Только для канала WHATSAPP.
content.attachment.idintegerИдентификатор файла вложения.
content.attachment.
fileUrl
stringURL-адрес файла.
content.attachment.
originalFileName
stringИмя файла.
content.attachment.sizeintegerРазмер файла.
content.actionstringСсылка кнопки. Только для каналов VIBER.
content.captionstringНазвание кнопки. Только для канала VIBER.
content.headerobjectСодержит информацию о заголовке шаблона. Только для канала WHATSAPP.
content.header.headerTypestringТип заголовка. Если в шаблоне нет заголовка, то headerType не передается. Только для канала WHATSAPP.
content.header.textstringТекст заголовка.
content.header.attachmentobjectСодержит информацию о файле в заголовке.
content.header.attachment.
id
integerИдентификатор файла в заголовке.
content.header.attachment.
fileUrl
stringURL-адрес файла в заголовке.
content.header.attachment.
originalFileName
stringИмя файла в заголовке.
content.header.attachment.
fileSize
integerРазмер файла в заголовке.
content.header.
headerExampleTextParam
stringПример текста заголовка.
content.header.
headerExampleMediaUrl
stringURL-адрес примера файла заголовка.
content.textstringТекст шаблона.
content.footerobjectСодержит подпись шаблона. Только для канала WHATSAPP.
content.footer.textstringТекст подписи.
content.keyboardobjectСодержит информацию о кнопках. Только для каналов WHATSAPP, VIBER, VK_NOTIFY.
content.keyboard.rowsobjectСодержит информацию о кнопках.
content.keyboard.rows.buttonsobjectМассив объектов, в каждом из которых определяется кнопка.
content.keyboard.rows.buttons.textstringТекст кнопки.
content.keyboard.rows.buttons.buttonTypestringТип кнопки.
content.keyboard.rows.buttons.otpTypestringТип кнопки в сообщении с одноразовым паролем: COPY_CODE или ONE_TAP. Только для канала WHATSAPP.
content.keyboard.rows.buttons.urlstringURL-адрес, который открывается при нажатии кнопки.
content.keyboard.rows.buttons.urlPostfixstringДинамическая часть ссылки URL-адреса кнопки.
content.keyboard.rows.buttons.phonestringНомер телефона, который набирается при нажатии кнопки.
content.keyboard.rows.buttons.payloadstringТекст быстрого ответа.
content.keyboard.rows.buttons.urlTextExamplestringПример URL-адреса для регистрации. Только для канала WHATSAPP.
content.keyboard.rows.buttons.colorstringЦвет кнопки. Только для канала VK_NOTIFY.
content.keyboard.rows.buttons.requestLocationbooleanУказывает, что кнопка передает местоположение. Только для канала VK_NOTIFY.
content.keyboard.rows.buttons.autofillTextstringНадпись на кнопке автоматического заполнения. Только для канала WHATSAPP.
content.keyboard.rows.buttons.packageNamestringНазвание пакета для кнопки автоматического заполнения. Только для канала WHATSAPP.
content.keyboard.rows.buttons.hashstringХэш подписи приложения для кнопки автоматического заполнения. Только для канала WHATSAPP.
content.keyboard.rows.buttons.appIdintegerИдентификатор приложения VK Mini App. Только для канала VK_NOTIFY.
content.keyboard.rows.buttons.ownerIdintegerИдентификатор владельца приложения VK Mini App. Только для канала VK_NOTIFY.
content.securityRecommendationbooleanЕсли true, в сообщении на основе шаблона отображается рекомендация по безопасности. Только для канала WHATSAPP.
content.codeExpirationMinutesintegerВремя действия одноразового пароля в минутах. Только для канала WHATSAPP.
content.textExampleParamsstringСодержит по одному примеру для каждой строки символов в тексте шаблона. Только для канала WHATSAPP.
content.vkAttachmentsobjectСодержит информацию о вложениях в шаблоне. Только для канала VK_NOTIFY.
content.vkAttachments.idintegerИдентификатор файла вложения.
content.vkAttachments.fileUrlstringURL-адрес файла.
content.vkAttachments.originalFileNamestringИмя файла.
content.vkAttachments.sizeintegerРазмер файла.
content.vkTwoWayEnabledbooleanЕсли true, получатели могут отвечать на сообщения на основе шаблона. Только для канала VK_NOTIFY.
contentTypestringТип контента шаблона. Возможные значения: TEXT, IMAGE, BUTTON, DOCUMENT, LOCATION, AUDIO, VIDEO, AUTHENTICATION.
categorystringКатегория шаблона. Только для каналов WHATSAPP, VIBER.
statusstringСтатус шаблона. Возможные значения:
APPROVED — активный. Это единственный статус, при котором шаблон возможно использовать для отправки сообщений.
REJECTED — отклонен оператором;
PENDING — на регистрации;
NOT_SENT — черновик;
ARCHIVED — в архиве;
PAUSED — приостановлен;
DISABLED — отключен.
lockedbooleanПризнак блокировки шаблона. Возможные значения:
true — шаблон заблокирован;
false — шаблон активен.
typestringТип шаблона. Возможные значения:
OPERATOR — операторский шаблон (шаблон, который был зарегистрирован у оператора связи);
USER — пользовательский шаблон (шаблон, который был создан пользователем на основе операторского шаблона).
createdAtstringВремя создания шаблона.
updatedAtstringВремя последнего изменения шаблона.

Коды ответов на запрос

  • ok — запрос успешно выполнен.
  • error-subject-unknown — указанное имя подписи отсутствует.
  • error-syntax — неверно указан тип канала.