logologo
Початок
Посібник
Розробка
Плагіни
API
Головна
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Початок
Посібник
Розробка
Плагіни
API
Головна
logologo
Робочий процес
Огляд
Швидкий старт

Тригери

Огляд
Події колекції
Заплановані завдання
Події перед дією
Події після дії
Події користувацької дії
Схвалення
Webhook

Вузли

Огляд

Штучний інтелект

Велика мовна модель

Керування потоком

Умова
Гілка з кількома умовами
Цикл
Змінні
Паралельна гілка
Виклик робочого процесу
Вихід потоку
Мапінг змінних JSON
Затримка
Кінець

Обчислення

Обчислення
Обчислення дати
Обчислення JSON

Операції з даними

Створення даних
Оновлення даних
Запит даних
Видалення даних
Операції SQL

Ручна обробка

Ручна обробка
Схвалення
Копія (CC)

Типи розширень

HTTP-запит
Скрипт JavaScript
Сповіщення
Надсилання email
Відповідь
Повідомлення відповіді
Змінні
Журнал виконання
Керування версіями
Розширені параметри

Розробка розширень

Огляд
Розширення типів тригерів
Розширення типів вузлів
Довідник API
Previous PageСхвалення
Next PageОгляд
Повідомлення про переклад ШІ

Ця документація була автоматично перекладена штучним інтелектом.

#Webhook

Робочий процес: Тригер WebhookProfessional Edition+

#Вступ

Тригер Webhook надає URL-адресу, яку можуть викликати сторонні системи за допомогою HTTP-запитів. Коли відбувається стороння подія, на цю URL-адресу надсилається HTTP-запит, який запускає виконання робочого процесу. Це зручно для сповіщень, ініційованих зовнішніми системами, таких як зворотні виклики платежів, повідомлення тощо.

#Створення робочого процесу

Під час створення робочого процесу оберіть тип "Подія Webhook":

20241210105049

Підказка

Різниця між "синхронними" та "асинхронними" робочими процесами полягає в тому, що синхронний робочий процес чекає на завершення виконання, перш ніж повернути відповідь, тоді як асинхронний робочий процес негайно повертає відповідь, налаштовану в конфігурації тригера, і ставить виконання в чергу у фоновому режимі.

#Конфігурація тригера

20241210105441

#URL Webhook

URL-адреса для тригера Webhook генерується системою автоматично і прив'язана до цього робочого процесу. Ви можете натиснути кнопку праворуч, щоб скопіювати її та вставити в сторонню систему.

Підтримується лише метод HTTP POST; інші методи повернуть помилку 405.

#Безпека

Наразі підтримується базова HTTP-автентифікація. Ви можете увімкнути цю опцію та встановити ім'я користувача та пароль. Включіть ім'я користувача та пароль до URL-адреси Webhook у сторонній системі для реалізації безпечної автентифікації Webhook (деталі стандарту дивіться: MDN: HTTP authentication).

Коли встановлено ім'я користувача та пароль, система перевірить, чи відповідають ім'я користувача та пароль у запиті. Якщо вони не надані або не збігаються, буде повернуто помилку 401.

#Розбір даних запиту

Коли стороння система викликає Webhook, дані, що містяться в запиті, потрібно розібрати, перш ніж їх можна буде використовувати в робочому процесі. Після розбору вони стануть змінними тригера, на які можна буде посилатися в наступних вузлах.

Розбір HTTP-запиту ділиться на три частини:

  1. Заголовки запиту

    Заголовки запиту зазвичай є простими парами ключ-значення рядкового типу. Поля заголовків, які вам потрібні, можна налаштувати безпосередньо, наприклад, Date, X-Request-Id тощо.

  2. Параметри запиту

    Параметри запиту — це параметри запиту в URL-адресі, наприклад, параметр query у http://localhost:13000/api/webhook:trigger/1hfmkioou0d?query=1. Ви можете вставити повний приклад URL-адреси або лише частину з параметрами запиту, і натиснути кнопку розбору, щоб автоматично розібрати пари ключ-значення.

    20241210111155

    Автоматичний розбір перетворить частину параметрів URL-адреси на структуру JSON і згенерує шляхи, такі як query[0], query[0].a, на основі ієрархії параметрів. Назву шляху можна змінити вручну, якщо вона не відповідає вашим потребам, але зазвичай це не потрібно. Псевдонім — це відображуване ім'я змінної при її використанні, це необов'язковий параметр. Розбір також згенерує повний список параметрів із прикладу; ви можете видалити будь-які параметри, які вам не потрібні.

  3. Тіло запиту

    Тіло запиту — це частина Body HTTP-запиту. Наразі підтримуються лише тіла запитів з Content-Type формату application/json. Ви можете безпосередньо налаштувати шляхи для розбору, або ввести приклад JSON і натиснути кнопку розбору для автоматичного аналізу.

    20241210112529

    Автоматичний розбір перетворить пари ключ-значення в структурі JSON на шляхи. Наприклад, {"a": 1, "b": {"c": 2}} згенерує шляхи a, b та b.c. Псевдонім — це відображуване ім'я змінної при її використанні, це необов'язковий параметр. Розбір також згенерує повний список параметрів із прикладу; ви можете видалити будь-які параметри, які вам не потрібні.

#Налаштування відповіді

Налаштування частини відповіді Webhook відрізняється для синхронних та асинхронних робочих процесів. Для асинхронних робочих процесів відповідь налаштовується безпосередньо в тригері. Після отримання запиту Webhook, система негайно повертає налаштовану відповідь сторонній системі, а потім виконує робочий процес. Синхронні ж робочі процеси вимагають додавання вузла відповіді в рамках потоку для обробки відповідно до бізнес-вимог (детальніше дивіться: Вузол відповіді).

Зазвичай, відповідь на асинхронно викликану подію Webhook має статус-код 200 та тіло відповіді ok. Ви також можете налаштувати статус-код, заголовки та тіло відповіді за потреби.

20241210114312

#Вузол відповіді

Дивіться: Вузол відповіді

#Приклад

У робочому процесі Webhook ви можете повертати різні відповіді залежно від різних бізнес-умов, як показано на малюнку нижче:

20241210120655

Використовуйте вузол умовного розгалуження, щоб визначити, чи відповідає певний бізнес-статус. Якщо так, поверніть успішну відповідь; інакше поверніть відповідь про помилку.