Установка URL-адресов для вебхуков
Для установки URL-адреса вебхука используется метод api/callback/set. В edna Pulse доступно два типа вебхуков — основные и дополнительные.
При необходимости вы можете включить аутентификацию вебхуков в личном кабинете edna Pulse.
Управление вебхуками edna PulseВызов метода
Чтобы установить URL-адрес для вебхука, отправьте POST-запрос на URL-адрес https://app.edna.ru/api/callback/set.
Для проверки доступности URL-адреса edna Pulse отправит один тестовый HEAD-запрос, на который ожидает получить ответ с кодом 200. Если HEAD-запрос завершается ошибкой, указанный URL-адрес не сохраняется.
Если доставка вебхука завершается ошибкой, edna Pulse выполняет до трёх повторных попыток отправки по схеме backoff: через 4, 128 и 2048 секунд после предыдущей попытки.
Формат запроса
{
"statusCallbackUrls": [
"string"
],
"inMessageCallbackUrls": [
"string"
],
"messageMatcherCallbackUrls": [
"string"
],
"messageMatcherCategoryChangedCallbackUrls": [
"string"
],
"shortLinkVisitedCallbackUrls": [
"string"
],
"subjectIds": [
"number"
]
}
Пример запроса
Настройка основных вебхуков
{
"statusCallbackUrls": [
"https://messagesxxx.com/status/webhook/statusCallbackUrls"
],
"inMessageCallbackUrls": [
"https://messagesxxx.com/status/webhook/inMessageCallbackUrls"
],
"messageMatcherCallbackUrls": [
"https://messagesxxx.com/status/webhook/messageMatcherCallbackUrls"
],
"messageMatcherCategoryChangedCallbackUrls": [
"https://messagesxxx.com/status/webhook/messageMatcherCategoryChangedCallbackUrls"
],
"shortLinkVisitedCallbackUrls": [
"https://messagesxxx.com/status/webhook/shortLinkVisitedCallbackUrls"
]
}
Настройка дополнительных вебхуков
Максимальное количество URL-адресов для каждого типа события в рамках одного канала — 2.
{
"statusCallbackUrls": [
"https://messagesxxx.com/webhook/statusCallbackUrls/1",
"https://messagesxxx.com/webhook/statusCallbackUrls/2"
],
"inMessageCallbackUrls": [
"https://messagesxxx.com/webhook/inMessageCallbackUrls/1"
],
"messageMatcherCallbackUrls": [
"https://messagesxxx.com/webhook/messageMatcherCallbackUrls/1"
],
"messageMatcherCategoryChangedCallbackUrls": [
"https://messagesxxx.com/webhook/messageMatcherCategoryChangedCallbackUrls/1",
"https://messagesxxx.com/webhook/messageMatcherCategoryChangedCallbackUrls/2"
],
"shortLinkVisitedCallbackUrls": [
"https://messagesxxx.com/webhook/shortLinkVisitedCallbackUrls/1"
],
"subjectIds": [
1
]
}
Параметры запроса
Ваш URL-адрес должен быть реальным и доступным для запроса из публичного интернета. Используйте только безопасный протокол HTTPS — по умолчанию TCP-порт 443. Максимальная длина URL-адреса — 500 символов.
| Параметр | Тип данных | Характер | Описание |
statusCallbackUrls | array of strings | Необязательный | Список URL-адресов, на которые будут приходить вебхуки о статусе доставки сообщения. |
inMessageCallbackUrls | array of strings | Необязательный | Список URL-адресов, на которые будут приходить вебхуки о входящем сообщении. |
messageMatcherCallbackUrls | array of strings | Необязательный | Список URL-адресов, на которые будут приходить вебхуки о статусе регистрации шаблона. |
messageMatcherCategoryChangedCallbackUrls | array of strings | Необязательный | Список URL-адресов, на которые будут приходить вебхуки об изменений категории шаблона WhatsApp. |
shortLinkVisitedCallbackUrls | array of strings | Необязательный | Список URL-адресов, на которые будут приходить вебхуки об отслеживания переходов по кнопке-ссылке из сообщения WhatsApp. |
subjectIds | array of numbers | Необязательный | Список идентификаторов каналов, для которых необходимо настроить URL-адреса для дополнительных вебхуков.
Чтобы узнать идентификатор канала, используйте метод API для получения списка каналов — параметр Если не указан |
Если указан subjectIds, максимальное количество URL-адресов для типа события в рамках одного канала — 2.
Если параметр subjectId не указан, вебхуки будут настроены для всех каналов. Если указан параметр subjectId, URL-адрес вебхука будет установлен только для канала с указанным идентификатором.