Як зробити

Тут не теми, а задачі. Знайдіть свою — далі буде каркас із вузлів і сторінка, де це пояснено докладніше. Кожен каркас зібраний із того, що вже є в маркетплейсі: звідти можна встановити готовий флоу й подивитись, як він влаштований зсередини.

Відповісти на подію ззовні

Хтось надсилає запит — ви щось робите й, за потреби, відповідаєте.

Вебхук → Умова → HTTP-запит → Відповідь

Тригер читається як outputs.<ім'я тригера>.body, а не через input. Відповідь дійде до викликача, тільки якщо він попросив зачекати: ?wait=1. Докладніше — Тригери й відповідь.

Робити щось за розкладом

Розклад → HTTP-запит → Форматування тексту → Telegram

У розкладу є два корисні поля: firedAt — коли спрацював, і previousRun — коли спрацював минулого разу. Пара з них дає рівно те вікно, за яке треба забрати дані, без жодного зберігання стану.

Скласти зведення й надіслати

Розклад → HTTP-запит → Агрегація → Форматування тексту → Telegram

Шаблон тексту — це цілий вираз, літерали в лапках і склеюються через &. Групування робиться просто:

$join($each($rows{source: $}, function($v, $k) {
  $k & ": " & $string($count($v))
}), "\n")

Не робити двічі те саме

Зовнішні служби люблять надіслати вебхук повторно.

Вебхук → Стан (setIfAbsent) → Умова (stored) → дія

setIfAbsent записує, тільки якщо ключа ще немає, і повертає storedtrue означає «бачимо вперше». Ключем беріть ідентифікатор події: order:{{outputs.incoming.body.id}}.

Пройти список по одному

HTTP-запит → Цикл → Затримка → HTTP-запит

Усередині циклу поточний елемент читається як input. Ставте concurrency 1–3 і затримку, якщо служба має ліміт запитів. Пам'ятайте: вихід вузла в циклі перезаписується щоітерації, тож підсумувати щось по всіх ітераціях не вийде — рахуйте до циклу або в шаблоні тексту.

Забрати більше, ніж дає одна сторінка

Майже кожне API віддає обмежену кількість за раз.

Запит (skip 0) → Запит (skip 50) → Запит (skip 100) → Форматування

Сторінки з'єднуються послідовно, а потім зводяться разом: $append($append(p1, p2), p3). Якщо API повертає загальну кількість, беріть її для точного числа, а вивантажене — для сум.

Порахувати щось із даних

джерело → Фільтр → Перетворення → Агрегація

Три вузли роблять різне: Фільтр лишає елементи, Перетворення змінює кожен, Агрегація зводить список в одне число. У всіх трьох вираз бачить лише сам елемент — ні variables, ні outputs там недоступні. Поріг доводиться писати числом просто у виразі.

Дати людині форму

Форма → HTTP-запит → Умова → Відповідь

Поля форми описуються JSON-масивом, а відповіді читаються як outputs.<форма>.form.<ім'я поля>. Числа приходять числами, прапорці — true/false. Зручно для внутрішніх інструментів: прийняти замовлення телефоном, звірити залишок, зробити разову розсилку.

Питати модель

Вебхук → Умова → Запит до моделі → Умова → дія

Просіть модель відповідати одним словом із переліку — так відповідь легко перевірити умовою. І ставте лічильник, щоб не витрачати операції ШІ на кожне «дякую»: Стан (increment) плюс умова value <= 3.

Записати в таблицю чи базу

Вебхук → Зіставлення даних → Google Таблиця
Вебхук → База даних (upsert)

Для власної бази беріть upsert із onConflict — повторний вебхук оновить той самий рядок, а не створить другий. Докладніше — База даних.

Якщо потрібного немає

Подивіться готові флоу в маркетплейсі: там понад вісімдесят робочих прикладів. Встановіть найближчий і розберіть його — це швидше, ніж збирати з нуля. Або опишіть задачу асистенту прямо в редакторі: кнопка на полотні, він збере каркас і пояснить кожен вузол.