LeadConverter
Search…
Отправить через вебхук
Вебхук используется для связи бота с любыми сторонними платформами. Благодаря ему ты можешь передать данные подписчика из своего бота в сторонний сервис, или скрипт-обработчик.
Полученный в результате ответ от обработчика может быть помещён в переменную, и использован внутри бота. Данная возможность предназначена для опытных специалистов, однако она открывает невероятно широкие возможности для твоих ботов.

Параметры вебхука

  • URL-адрес обработчика - название говорит само за себя :) На данный адрес будет отправлен запрос.
  • Отправить запрос методом - один из шести методов (GET, POST, JSON POST, PUT, PATCH, DELETE), которым будет отправлен запрос. Назначения методов мы разберем немного позже.
  • Сохранить результат - здесь можно выбрать переменную, в которую будет помещен результат выполнения запроса.
  • Заголовки запроса
  • Параметры запроса

Методы запроса

Сейчас будет немного технической информации, но не стоит её пугаться. Ты сталкиваешься с этим каждый день, и даже сейчас с этим работаешь :)
Сервисы и платформы общаются между собой через протокол HTTP. Это один из протоколов передачи информации в сети интернет.
Метод указывает какое конкретное действие нужно сделать с ресурсом.

Самые популярные методы:

Метод "GET" - Используется для получения информации. На эту страничку ты попал именно этим методом.
Метод "POST" - Используется для передачи информации в обработчик. Например, отправка формы с контактными данными.
Метод "JSON POST" - То же самое, что и метод POST, только передается в формате JSON.

Редко встречающиеся методы:

Встречаются редко, но стоит познакомиться с ними
😉
Методы "PATCH" и "PUT" - используются для обновления уже созданного ресурса на сервере.
Разница в том, что PATCH содержит набор инструкций, описывающих, как ресурс, находящийся в данный момент на исходном сервере, должен быть модифицирован.
А в PUT содержится новая версия ресурса целиком.
Метод "DELETE" - Говорит серверу о необходимости удалить данный ресурс.

Как мне выбрать, какой метод использовать?

Это зависит от того, интеграцию с чем нужно сделать. Если это онлайн-платформа, например, Bitrix24 или AmoCRM - метод, которым нужно отправлять данные будет описан в документации к ней.
Если ты хочешь отправлять запрос на свой скрипт - ответ на данный вопрос тебе даст программист твоего проекта.
А если программиста нет, и всё это слишком сложно для тебя - напиши нам в техподдержку, мы поможем реализовать твою задачу :)
Выбирай способ связи с нами
👇

Заголовки запроса

Здесь всё просто, слева - название заголовка, справа - значение, которое необходимо передать в него :)

Тело запроса

Здесь указываются параметры, которые вам необходимо передать в скрипт-обработчик.
Слева указывается название параметра, справа - его значение.
Так же можно подставлять переменные. Для этого используется такая же конструкция, как при подстановке переменной в блоке сообщения. ({ имя_переменной })
Так же вы можете использовать зарезервированные переменные.

Передача многомерных массивов

Для того, чтобы создать вложенный массив, используй точку в названии ключа там, где необходимо перейти на следующий уровень вложенности.
Это звучит слишком замудрённо, но на самом деле это просто.
Давай рассмотрим на примере.
Если ты хочешь создать массив вида
[
"user" => [
"name" => имя_подписчика,
"last_name" => фамилия_подписчика,
],
"group" [
"id" => ид_группы,
"channel_name" => название_группы
]
]
используй следующую запись в блоке "Действие":

Сохранение переменной

Если обработчик вернул не JSON объект - результат будет помещён в переменную как простой текст.
В случае, если обработчик вернул в ответ - JSON - он будет сохранён в переменную как объект.
Объект позволяет в дальнейшем обращаться к вложенным параметрам. Рассмотрим пример.
Ответ сервера:
{
promo: {
code: "ABC",
percent: 15,
}
}
Чтобы получить значение вложенного поля code, необходимо указать полный путь к нему начиная от корня.
Рассмотрим на примере.
Допустим, результат запроса сохранён в переменную "result".
Чтобы получить значение поля "code", мы используем следующую запись:
{ignore}
({result.promo.code}) - в результате выполнения этой инструкции будет выведена строка "ABC".
{/ignore}

Что, если не удалось выполнить вебхук?

В случае, если при выполнении запроса произошла ошибка (сервер вернул ошибку 4xx или 5xx), платформа ещё несколько раз постарается отправить запрос.
Промежутки времени, через которые вебхук будет отправлен повторно:
  • Первая попытка - 5 секунд
  • Вторая попытка - 30 секунд
  • Третья попытка - 1 минута
  • Четвертая попытка - 30 минут
  • Пятая попытка - 2 часа
В случае, если попытки кончились - выполнения сценария приостанавливается.
Copy link
On this page
Параметры вебхука
Методы запроса
Самые популярные методы:
Редко встречающиеся методы:
Как мне выбрать, какой метод использовать?
Заголовки запроса
Тело запроса
Передача многомерных массивов
Сохранение переменной
Что, если не удалось выполнить вебхук?