Связаться с поддержкой:
Связаться с поддержкой
Выберите язык Русский Английский (статья не переведена)

    Входящий Webhook

    Webhook — механизм автоматической передачи данных между системами.
    Например, при создании клиента в CRM система отправляет данные в ChatApp, после чего запускается соответствующий сценарий.

    Блок «Входящий webhook» используется как стартовый блок в сценарии принятия запроса.

    Принцип работы

    Интеграция выполняется в три этапа:

    1. Внешняя система отправляет webhook-запрос.

    2. В блоке автоматически создаются локальные переменные.

    3. Полученные параметры сохраняются в переменные, доступные в сценарии.

    Запрос — это сгенерированная системой ссылка в нижней части блока. Она используется для вызова сценария из внешнего сервиса.

    Настройка блока «Входящий webhook»

    1. Добавьте блок «Входящий webhook» в Редакторе сценариев.

    2. Укажите название сценария и сохраните его.
      Без сохранения работа с переменными невозможна.

    3. Нажмите «Добавить поле» и создайте параметры, которые должны передаваться из внешней системы (например: nomer, id).
      Для каждого параметра автоматически создаётся локальная переменная с тем же именем.

    Важно: в блок нельзя добавлять системные переменные.

    1. Используйте сформированную ссылку запроса для настройки исходящего webhook во внешнем сервисе.

    Пример:

    https://constructorbot.chatapp.online/api/request/?token=...&nomer=&id=&template_id=19798

    Где:

    • token — генерируется автоматически;

    • nomer — номер клиента;

    • id — идентификатор карточки.

    1. Добавьте блок «Отправка сообщения*».

    2. В поле «ChatID» укажите переменную {{nomer}}.

    3. В поле «Линия» выберите линию отправки, в поле «Мессенджер» — канал.

    4. Укажите текст сообщения. Допускается использование:

      • констант;

      • переменных;

      • результатов других блоков.

    5. Сохраните сценарий.

    6. Перейдите в сервис, который будет отправлять запрос, и настройте в нём исходящий webhook, используя сформированную ссылку.

    Получение параметров из тела запроса

    1. Параметры в ссылке

    Если параметры передаются в URL (...?token=...&chat_id=...), их необходимо создать в блоке вручную.

    2. Параметры в теле запроса (JSON)

    Если параметры передаются в формате JSON, создавать их в блоке не требуется.

    Пример:

    {
    "Email1": "...@gmail.com",
    "name_client": "test",
    "chat_id": "89999999999"
    }

    Для использования значения укажите переменную в формате: {{Email1}}

    Важно:

    1. имена параметров не должны совпадать с системными переменными.
    2. при использовании параметров из тела запроса ссылка должна содержать только token.

    3. Вложенные параметры

    Если JSON содержит вложенные объекты:

    {
    "payment": {
    "name": "Вася",
    "email": "...@mail.ru"
    }
    }

    Доступ к вложенным данным осуществляется через точку:

    {{payment.name}}
    {{payment.email}}

    4. Одновременная передача параметров

    Если параметры присутствуют и в ссылке, и в теле запроса:

    • бот обрабатывает оба источника данных;

    • при совпадении названия приоритет имеет значение из тела запроса.

    При получении POST-запроса анализируются параметры из URL и из JSON одновременно.

    5. Списки в JSON

    Если параметр содержит массив:

    {
    "payment": [
    { "name": "Вася" },
    { "name": "Петя" }
    ]
    }

    Элементы нумеруются с 0:

    {{payment[0].name}} → Вася
    {{payment[1].name}} → Петя

    Каждый объект внутри массива считается отдельным элементом.

    Возврат результатов

    Блок «Входящий webhook» может возвращать результат выполнения сценария в теле ответа.

    Для этого нажмите на значок «i» в левом нижнем углу блока, скопируйте специальную ссылку и используйте её во внешнем сервисе вместо стандартной ссылки запроса.

    Отправка и получение webhook в Битрикс24

    Инструкция описывает настройку отправки и приема webhook между ChatApp и Битрикс24.

    Результат настройки:

    • при переходе сделки на новый этап бот запрашивает оценку;

    • полученная оценка или комментарий клиента записываются в карточку сделки.

    Настройка выполняется в два этапа.

    Шаг 1. Настроить бота в редакторе сценариев ChatApp

    1. Откройте редактор сценариев.

    2. Создайте блок «Входящий webhook».

    3. Создайте блок «Отправка сообщения*», в котором будете запрашивать информацию у клиента.

    4. Создайте блок «Ожидание сообщения», ожидаем ответ клиента.

    5. Создайте блок «Изменить сделку CRM», который будет передавать полученную информацию в сделку.

    6. В блоке «Входящий webhook» создайте два поля:

      • nomer;

      • ID_SDELKI.

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

    7. Настройка блока «Отправка сообщения*», указав параметры:

      • в поле «ChatID» — переменную {{nomer}};

      • в поле «Линия» — нужную линию;

      • в поле «Мессенджер» — требуемый мессенджер;

      • введите текст сообщения.

    8. Настройка блока «Изменить сделку CRM», укажите параметры блока:

      • В поле «ID сделки» выберите переменную {{ID_SDELKI}}.

      • В разделе «Пользовательское поле»:

        • в левом поле укажите ID пользовательского поля, в которое необходимо передать ответ клиента;

        • в правом поле выберите переменную {{message}}.

    Переменная {{message}} содержит последнее сообщение клиента, полученное в блоке «Ожидание сообщения».


    1. Перейдите в Пользовательские поля в Битрикс24.

    2. Откройте список полей любой из сущностей.

    3. Выберите нужную сущность и нажмите на название.

    4. Откроется страница редактирования пользовательского поля, здесь в URL страницы и находится нужный ID поля CRM.

    Например: PHONE, EMAIL, UF_123123332

    Коды стандартных полей можно узнать здесь: лид, сделка, контакт, компания

    Коды пользовательских полей необходимо брать из url при посещении страницы редактирования поля. Например: https://portal.bitrix24.ru/crm/configs/fields/CRM_LEAD/edit/UF_CRM_614D2FEF694EE/ — здесь UF_CRM_614D2FEF694EE — это и есть нужный id (code) поля.

    Для пользовательских полей поддерживаются только строковые не множественные поля.

    Логика сохранения полей:

    При поступлении информации для сохранения из бота, в чат ОЛ отправляется специальное системное сообщение (без него нельзя).

    Далее получаем привязанные сущности к чату на данный момент (лид, сделка, контакт, компания).

    В найденные сущности делаем попытку установить переданные данные.

    Шаг 2. Настройка Битрикс24

    1. Скопируйте ссылку из блока «Входящий вебхук» в ChatApp.
    2. Перейдите в Битрикс24 → «CRM» → «Сделки» → «Роботы».
    3. Добавьте в нужную колонку роботов:
      • «Получить информацию о элементе CRM»;
      • «Исходящий вебхук».
    4. Настройка робота «Получить информацию о элементе CRM»
      • Откройте настройки робота.
      • Выберите сущность «Сделка».
      • Укажите параметр «ID».

    Робот возвращает ID сделки, с которой выполняется работа. Значение используется в следующем шаге.

    5. Настройка робота «Исходящий вебхук»

      • Откройте настройки робота.
      • В поле «Хендлер» вставьте ссылку из блока «Входящий вебхук».
      • Добавьте параметры к ссылке через символ «&».

    Пример параметров:

    • nomer — передает номер телефона клиента
      Используйте переменную {{Контакт: Телефон (текст)}}.
    • ID_SDELKI — передает ID сделки
      Используйте результат робота «Получить информацию о элементе CRM».

    Формирование запроса выполняется с добавлением параметров к URL через символ «&».

    6. Нажмите «Сохранить».

    Результат

    После переноса карточки сделки в выбранную колонку:

    • запускается робот;
    • бот отправляет сообщение клиенту;
    • ответ клиента записывается в выбранное поле CRM.