Run Custom Flow

Run Custom Flow — це керуючий блок, призначений для запуску окремих допоміжних потоків (Custom Flows). Оскільки Custom Flow не може запуститися самостійно, цей блок виступає «тригером», який викликає заздалегідь налаштовану логіку всередині основного сценарію або іншого потоку.
Навігація
- Призначення блоку.
- Налаштування блоку.
- Робота з аргументами (Custom Flow Args).
- Механіка виклику Custom Flow.
- Контекст змінних (Global Scope).
- Практичні сценарії використання.
- FAQ.
Призначення блоку
─────────────────────────────────────────────────────────────-
Блок Run Custom Flow використовується для виклику та виконання Custom Flow, який не запускається самостійно.
Custom Flow — це окремий сценарій з власною логікою, але він не виконується автоматично.
Саме Run Custom Flow відповідає за його запуск.
Типові задачі:
- винести повторювану логіку в окремий Custom Flow;
- викликати один і той самий сценарій з різних частин інтеграції;
- структурувати складні інтеграції на логічні блоки;
- спростити підтримку та масштабування сценаріїв.
Налаштування блоку
─────────────────────────────────────────────────────────────-

Інтерфейс блоку залежить від того, чи має викликаний потік вхідні параметри.
1 -> Flow to execute: Випадаючий список, у якому відображаються всі створені вами та активні на даний момент Custom Flows. Вам достатньо просто обрати потрібний зі списку.
2 -> Custom Flow Args (з’являються динамічно): Цей підрозділ з'являється лише у випадку, якщо у вибраному Custom Flow були налаштовані аргументи. Тут ви заповнюєте дані, які хочете "передати" всередину потоку для обробки (може працювати в режимі поля EXP)
3 -> Перемикач режиму полів TXT / EXP:
Простий варіант (TXT режим) - все обробляється як текст.
Просунутий варіант (EXP режим) - вміст обробляється як повноцінний вираз (Expression). Дозволяє застосувати логічні оператори та функції безпосередньо в полі вибору. Наприклад, «/» у режимі TXT - це роздільник, а в режимі EXP - ділення.
Робота з аргументами (Custom Flow Args)
─────────────────────────────────────────────────────────────-
Що таке аргументи Custom Flow
Аргументи — це вхідні параметри, які дозволяють передавати дані всередину Custom Flow під час його запуску. Вони налаштовуються в самому Custom Flow, а не в блоці Run Custom Flow.
Як додати аргументи в Custom Flow
1 -> Перейдіть у потрібний Custom Flow.
2 -> Натисніть на головний блок Start Custom.
3 -> У розділі Input Args додайте аргументи через кнопку +Add Item.
4 -> Задайте назви аргументів (наприклад, user_id або order_amount)


Як аргументи зʼявляються в Run Custom Flow
Якщо у вибраному Custom Flow є Input Args, у блоці Run Custom Flow автоматично зʼявляється розділ Custom Flow Args. Кожен аргумент відображається як окреме поле для заповнення.
У ці поля можна передавати: статичні значення, змінні, вирази (у режимі поля EXP).
Таким чином, Run Custom Flow працює як “точка входу” з параметрами.
Механіка виклику Custom Flow
─────────────────────────────────────────────────────────────-
Run Custom Flow не повертає значення напряму, а впливає на глобальний контекст через виконану логіку.
- Run Custom Flow отримує команду на виконання.
- Обраний Custom Flow запускається.
- Якщо передані аргументи — вони доступні всередині Custom Flow як змінні в Start Custom - ARGS_IN.
- Вся логіка Custom Flow виконується повністю.
- Після завершення сценарій повертається назад у основний флоу.
Контекст змінних (Global Scope)
─────────────────────────────────────────────────────────────-
Це важлива особливість роботи блоку.
- Глобальний доступ:
Custom Flow, викликаний через цей блок, має повний доступ до всіх змінних (GLOBALS - VARS), які були сформовані на етапах до виклику блоку. Тобто, якщо ви зберегли
{{email}}в Глобальну змінну в Main Action, ваш Custom Flow його "бачить". - Локальні аргументи: Якщо ви використовуєте Input Args, ці дані передаються всередину Custom Flow як окремі локальні змінні. Це корисно, щоб зробити Custom Flow універсальним і незалежним від назв глобальних змінних.

Практичні сценарції використання
─────────────────────────────────────────────────────────────-
Повторювана логіка: У вас є логіка обробки контакту (перевірки, трансформації, збереження).
Ви виносите її в Custom Flow і викликаєте через Run Custom Flow у різних інтеграціях.
Результат: один сценарій — багато точок використання.
Виклик Custom Flow з іншого Custom Flow: Run Custom Flow можна використовувати всередині іншого Custom Flow. Це корисно для багаторівневих перевірок або послідовної обробки даних, де кожен крок — це окремий підпроцес.
Передача параметрів: Custom Flow очікує аргумент after для пагінації.
У Run Custom Flow:
- у полі Custom Flow Args →
after - передаєте змінну, закодовану Encoder.
Результат: Custom Flow динамічно працює з різними сторінками даних.
FAQ
─────────────────────────────────────────────────────────────-
1. Чи можу я запустити Custom Flow без блоку Run Custom Flow?
Ні. Custom Flow — це пасивний сценарій. Він працює тільки тоді, коли його явно викликає блок Run Custom Flow.
2. Що буде, якщо я додам аргумент у Custom Flow, але не заповню його у блоці Run Custom Flow?
Змінна всередині Custom Flow буде порожньою (null). Це не зупинить сценарій, якщо ваша логіка не залежить критично від цього значення.
3. Чому я не бачу аргументів у блоці Run Custom Flow?
Перевірте блок Start Custom у вашому цільовому потоці. Аргументи з'являться тільки якщо ви додали їх там через кнопку "+ Add Item".
4. Чи бачить Custom Flow змінні з попередніх блоків основного флоу?
Так. Він має повний доступ до розділу GLOBALS. Проте, для чистоти архітектури, специфічні дані краще передавати через Input Args.
5. Чому я не бачу свій Custom Flow у списку?
Переконайтеся, що ваш Custom Flow збережений і активований у панелі керування потоками.
6. Чи обовʼязково використовувати аргументи?
Ні. Якщо аргументи не потрібні — достатньо лише вибрати Flow to execute.
7. Чи можна передавати змінні в аргументи?
Так. У Custom Flow Args можна передавати змінні, результати блоків та вирази.
8. Чи можна запускати один Custom Flow кілька разів у сценарії?
Так. Один і той самий Custom Flow можна викликати в різних місцях і з різними аргументами.