Настройка интеграции
вебхуков
Вебхуки — инструмент для получения данных от сторонних сервисов. Как администратор BPMSoft, вы можете настроить автоматическое реагирование на запросы для мгновенного запуска бизнес-процессов и действий над объектами.
Алгоритм настройки
Конфигурация пользовательских вебхуков в BPMSoft осуществляется с помощью инструментов low-code, что значительно упрощает настройку и использование.
Настройка вебхуков выполняется в разделе «Вебхуки», в который можно перейти несколькими способами:
- Дизайнер системы → блок «Импорт и интеграции» → раздел «Настройка вебхуков»;
- Дизайнер системы → блок «Конфигурирование разработчиком» → Управление конфигурацией → перейти в пользовательский пакет → добавить элемент «Вебхук».
Общая процедура настройки вебхука включает следующие шаги:
- Создание и настройка вебхука.
- Настройка аутентификации.
- Добавление и настройка параметров метода вебхука.
- Настройка действия, которое выполняется при получении вебхука.
Создание и настройка вебхука
Для создания нового вебхука выполните следующие действия:
- В разделе «Вебхуки» нажмите на кнопку «Добавить вебхук».
- Заполните свойства вебхука, описанные в таблице ниже.
Таблица 1 — Свойства вебхука
| Свойство | Описание |
| Название | Отображаемый заголовок вебхука |
| Код | Используется в BPMSoft для взаимодействия с вебхуком |
| Описание | Информация о вебхуке |
| Пакет | Пакет конфигурации BPMSoft, в котором хранится вебхук |
| Проверять URL клиента | Если данный признак = Да, то будут разрешены вызовы вебхука только с адреса, указанного в поле URL клиента |
| URL клиента | Адрес, с которого будет разрешен вызов вебхука, если признак «Проверять URL клиента» = Да . Будет выполняться проверка только корневого домена. Например, если адрес «https://site.bpmsoft.ru/path1/», то проверяться будет только по адресу «https://site.bpmsoft.ru» |
| Базовый URL-адрес | Заполняется автоматически значением, которое состоит из URL вида {hostUrl}/{webhook}/{schemaUId} и настроек, указанных на странице настройки метода. Недоступно для редактирования |
| Логирование вебхука | Если стоит галочка, то вебхук будет логироваться в папку Webhooks. Подробнее: Логирование |
| Логирование тела вебхука | Если стоит галочка, то будет логироваться тело запроса в методы вебхука. Подробнее: Логирование |
Рисунок 1 — Свойства вебхука

Настройка аутентификации
Для выполнения методов вебхука существует три способа аутентификации:
- Анонимная аутентификация.
- Forms-аутентификация.
- JWT-аутентификация.
Анонимная аутентификация
Включение анонимной аутентификации уменьшает безопасность BPMSoft. Это связано с тем, что неавторизованные пользователи могут выполнять запросы на добавление, изменение. Не рекомендуем использовать данный режим при реализации интеграций.
BPMSoft поддерживает способ анонимной аутентификации, когда для доступа к методам вебхуков не требуется никаких пользовательских данных. Анонимные вебхуки не требуют авторизации для доступа к методам.
По умолчанию анонимная аутентификация отключена.
Для включения анонимной аутентификации необходимо выполнить следующие действия:
- В конфигурационном файле внесите следующие изменения:
- Для .NET Framework — в файле WebApp/Web.config у параметра с ключом UseWebhookAnonymousAuth измените значение value на true;
- Для .NET 8 — в файле BPMSoft.WebHost.dll.config у параметра с ключом UseWebhookAnonymousAuth измените значение value на true.
- Перезапустите приложение.
- На странице вебхука перейдите на вкладку «Аутентификация» и в поле «Тип аутентификация» выберите значение «Не требуется».
- Нажмите кнопку «Сохранить».
В результате выполнения данных настроек методы вебхука станут доступны для вызова без аутентификации.
Включение анонимной аутентификации доступно только при развертывании on-site.
Forms-аутентификация
Для того чтобы методы вебхука были доступны для вызова через forms-аутентификацию, выполните следующие действия:
- На странице вебхука перейдите на вкладку «Аутентификация» и в поле «Тип аутентификация» выберите значение «Cookie».
- Выберите пользователя в поле «Пользователь для авторизации», через которого будет выполняться forms-аутентификация для доступа к методам вебхука.
- Нажмите кнопку «Сохранить».
После сохранения методы вебхука станут доступны для вызова при передаче специального cookie в заголовках последующих запросов. Подробнее: Forms-аутентификация.
JWT-аутентификация
Для того чтобы методы вебхука были доступны для вызова с помощью передачи JWT-токенов, выполните следующие шаги:
- В конфигурационном файле внесите следующие изменения:
- Для .NET Framework — в файле WebApp/Web.config у параметра с ключом WebhookSecretKey в качестве значения value внесите секретный ключ для генерации JWT-токена;
- Для .NET 8 — в файле BPMSoft.WebHost.dll.config у параметра с ключом WebhookSecretKey в качестве значения value внесите секретный ключ для генерации JWT-токена.
- Используйте ключ длиной не менее 32 символов, который включает буквы в верхнем и нижнем регистре, цифры и специальные символы;
- В качестве ключа подойдут GUID, случайная последовательность символов или данные, сгенерированные специализированными инструментами для создания секретных ключей.
- Перезапустите приложение.
- На странице вебхука перейдите на вкладку «Аутентификация» и в поле «Тип аутентификация» выберите значение «JWT».
- Выберите пользователя в поле «для авторизации», через которого будет выполняться аутентификация с помощью JWT-токена для доступа к методам вебхука.
- В поле «Действителен до» укажите срок действия токена.
- Если требуется, то заполните поле «Заголовок запроса для токена». Если заголовок запроса для токена не заполнен, то его значение будет равно «Authorization».
- Нажмите кнопку «Сохранить».
Рисунок 2 — Тип аутентификации «JWT»

После сохранения вебхука кнопка «Сгенерировать токен» станет активной. Для генерации токена:
- Нажмите на кнопку «Сгенерировать токен».
- Откроется модальное окно, где в текстовом поле будет расположен сгенерированный JWT-токен.
- Нажмите кнопку «Скопировать токен».
Рисунок 3 — Модальное окно генерации JWT-токена

Скопируйте значение токена, так как после закрытия этого окна повторно посмотреть его будет невозможно.
- Нажмите кнопку «Закрыть», чтобы скрыть модальное окно.
При необходимости можно вернуться в вебхук и создать новый токен, нажав на кнопку «Перегенерировать».
После сохранения методы вебхука станут доступны для вызова при передаче JWT-токена в заголовках последующих запросов.
Уведомления об истечении срока действия JWT-токена
Срок действия токена устанавливается в поле «Действителен до». В коммуникационной панели появится уведомление о скором истечении срока действия токена в следующие периоды:
- За 30 дней;
- За 15 дней;
- За сутки.
После истечения срока действия токена уведомление будет приходить через день в течении двух недель. Рекомендуем обновить токен до окончания срока его действия.
Методы вебхука
Для создания метода вебхука выполните следующие шаги:
- Откройте вебхук.
- Во вкладке «Методы вебхука» нажмите на кнопку +.
- Заполните свойства метода вебхука, описанные в таблице ниже.
Таблица 2 — Свойства метода вебхука
| Свойство | Описание |
| Название | Отображаемый заголовок метода |
| Код | Используется в BPMSoft для взаимодействия с конкретным методом вебхука |
| Endpoint | Этот endpoint добавляется к «Базовому URL вебхука» и формирует «Полный адрес» метода вебхука |
| Полный адрес | Адрес, который можно использовать в сторонней системе для вызова метода (поле доступно только для чтения и значение генерируется автоматически) |
| Тип запроса | Тип HTTP-запроса. Возможные значения: GET и POST |
| Тип содержимого | По умолчанию — JSON (поле доступно только для чтения) |
| Ждать ответа | Если признак = Да, то BPMSoft ответит на вызов метода вебхука только после завершения всех назначенных действий со всеми настроенными параметрами ответа. Если признак = Нет, то BPMSoft стандартный ответ об успешности запроса. Запрос считается успешным, если его параметры соответствуют входным параметрам вебхука и аутентификация прошла успешно |
| Опубликован | Если признак = Да, то метод опубликован и доступен для вызова до первого сохранения) |
Рисунок 4 — Пример заполнения метода вебхука

- Добавьте параметры метода.
- Добавьте действия при получении вебхука.
- Нажмите на кнопку «Готово».
- Сохраните вебхук, нажав на кнопку «Сохранить».
- В детали «Методы вебхука» выберите добавленный метод и нажмите на кнопку «Опубликовать».
- Повторно сохраните вебхук, нажав на кнопку «Сохранить».
Рисунок 5 — Деталь «Методы вебхука»

После публикации метод станет доступен для вызова из внешней системы.
Параметры метода
В метод вебхука можно добавить следующие виды параметров:
- Параметры запроса;
- Параметры ответа.
Параметры запроса
Параметры запроса принимаются на вход вебхуком при его вызове из внешней системы.
Для добавления параметра запроса выполните следующие шаги:
- Откройте метод вебхука.
- Перейдите на вкладку «Параметры запроса».
- Нажмите на кнопку «Добавить параметр».
- Заполните свойства параметра запроса.
Таблица 3 — Свойства параметра запроса
| Свойство | Описание |
| Название | Отображаемый заголовок параметра запроса |
| Путь к элементу (JSONPath) | Ключ в JSON-файле, используемый при передаче значений в теле запроса. Можно выполнять операции чтения и записи во вложенные объекты. Для этого используется точка, которая указывает на вложенность. Например, Contact.Name |
| Код в BPMSoft | Используется в BPMSoft для взаимодействия с конкретным параметром запроса |
| Тип данных | Тип данных параметра запроса |
| Формат передачи пустых значений |
Определяет каким образом передается пустое значение параметра. Возможны следующие варианты значений:
|
| Значение по умолчанию | Предоставляет значение, которое будет использоваться в случае, если для данного параметра запроса не будет предоставлено явное значение при вызове метода вебхука |
Рисунок 6 — Пример заполнения параметра запроса

- Сохраните параметр запроса, нажав на кнопку «Готово».
- Сохраните метод вебхука, нажав на кнопку «Готово».
- Сохраните вебхук, нажав на кнопку «Сохранить».
Параметры ответа
Параметры ответа возвращаются вебхуком после успешного выполнения запроса из внешней системы.
Для добавления параметра ответа выполните следующие шаги:
- Откройте метод вебхука.
- Перейдите на вкладку «Параметры ответа».
- Нажмите на кнопку «Добавить параметр».
- Заполните свойства параметра ответа.
Таблица 4 — Свойства параметра ответа
| Свойство | Описание |
| Название | Отображаемый заголовок параметра ответа |
| Путь к элементу (JSONPath) | Ключ в JSON-файле, используемый при возвращении значений в теле ответа. Можно выполнять операции чтения и записи во вложенные объекты. Для этого используется точка, которая указывает на вложенность. Например, Contact.Name |
| Код в BPMSoft | Используется в BPMSoft для взаимодействия с конкретным параметром ответа |
| Тип данных | Тип данных параметра ответа |
| Формат передачи пустых значений |
Определяет каким образом будет получен ответ. Возможны следующие варианты значений:
|
| Значение по умолчанию | Предоставляет значение, которое будет использоваться в случае, если для данного параметра ответа не будет предоставлено явное значение при вызове метода вебхука |
- Сохраните параметр ответа, нажав на кнопку «Готово».
- Сохраните метод вебхука, нажав на кнопку «Готово».
- Сохраните вебхук, нажав на кнопку «Сохранить».
Быстрая настройка
Для автоматического добавления параметров запроса или ответа выполните следующие шаги:
- Перейдите в метод вебхука.
- Перейдите на вкладку «Параметры запроса» или «Параметры ответа» — в зависимости от ваших потребностей.
- Нажмите на кнопку «Быстрая настройка».
- Введите JSON-код примера объекта запроса или ответа.
Например:
{
"name": "testName",
"age": 18
}
- Нажмите кнопку «Далее».
После выполнения быстрой настройки в выбранной вкладке будут добавлены параметры. По вышеприведенному примеру добавится два параметра:
Таблица 5 — Параметры, добавленные быстрой настройкой
| Название | Путь к элементу (JSONPath) | Код в BPMSoft | Тип данных |
| Name | $.name | Name | Текст |
| Age | $.age | Age | Целое число |
Действия при получении вебхука
Для добавления действий, которые будут выполнены при вызове вебхука, выполните следующие шаги:
- Перейдите в метод вебхука.
- Перейдите на вкладку «Действия при получении вебхука».
- Нажмите на кнопку «Добавить действие при получении вебхука».
- Заполните свойства действия при получении вебхука.
Таблица 6 — Свойства действия при получении вебхука
| Свойство | Описание |
| Название | Отображаемый заголовок действия |
| Тип действия |
Действие, которое сработает при получении вебхука. Возможные значения:
|
| Код BPMSoft | Используется в BPMSoft для взаимодействия с действием метода вебхука |
- В зависимости от выбора в поле «Тип действия»:
- Если выбран «Тип действия» = «Выполнить БП»:
- В поле «Название БП» выберите бизнес-процесс, который будет выполняться при вызове метода вебхука;
- В блоке «Параметры бизнес процесса» рядом с параметром нажмите на поле, чтобы выбрать параметр запроса, значение которого необходимо передать в качестве входящего параметра выбранного бизнес-процесса;
- В блоке «Параметры БП для ответа» рядом с параметром нажмите на поле, чтобы выбрать параметр ответа, в который необходимо сохранить исходящий параметр бизнес-процесса.
- Если выбран «Тип действия» = «Изменить данные»:
- В поле «Название объекта» выберите объект, у записей которого необходимо изменить значения колонок;
- В поле «Результат изменения данных» выберите параметр ответа, в который будет записываться массив с Id измененных записей;
- В блоке «Колонки для обновления объекта» рядом с названием колонки нажмите на поле, чтобы выбрать параметр запроса, значение которого необходимо использовать в качестве нового значения выбранной колонки объекта;
- В блоке «Колонки для поиска объекта» рядом с названием колонки нажмите на поле, чтобы выбрать параметр запроса, значение которого необходимо использовать в качестве фильтра для поиска.
- Если выбран «Тип действия» = «Добавить данные»:
- В поле «Название объекта» выберите объект, в который нужно добавить запись;
- В блоке «Колонки для добавления объекта» рядом с названием колонки нажмите на поле, чтобы выбрать параметр запроса, значение которого необходимо использовать в качестве значения выбранной колонки объекта;
- В блоке «Колонки объекта для ответа» рядом с названием колонки нажмите на поле, чтобы выбрать параметр ответа, в который необходимо сохранить значение выбранной колонки созданной записи.
- Если выбран «Тип действия» = «Выполнить БП»:
- Сохраните действие при получении ответа, нажав на кнопку «Готово».
- Сохраните метод вебхука, нажав на кнопку «Готово».
- Сохраните вебхук, нажав на кнопку «Сохранить».
Рисунок 7 — Действие при получении вебхука

Логирование
В вебхуке можно отслеживать события, связанные с его использованием.
Таблица 7 — Логируемые признаки
| Свойство вебхука | Назначение | Место хранения лога |
|
Логирование вебхука |
Запись событий, связанных с публикацией и снятием с публикации методов | .../Logs/Webhooks/{Текущая дата}/Webhooks/WebhookSchema.log |
| Запись событий, связанных с вызовом методов вебхука (заголовков и URL-запросов) | .../Logs/Webhooks/{Текущая дата}/Webhooks/WebhookRequestResponse.log | |
| Логирование тела вебхука | Запись событий, связанных с вызовом методов вебхука (тела запроса) | .../Logs/{Текущая дата}/Webhooks/WebhookRequestResponse.log |
Свойство «Логирование тела вебхука» возможно использоваться только после включения свойства «Логирование вебхука».
Рекомендуем изучить
Возможности интеграции
Выполнить запрос в Postman с авторизацией вручную
Анализ проблем с вебхуками