Автоматизація Directus Flows: налаштування без коду
Ручні процеси пожирають час: менеджери витрачають до 4 годин на день на сповіщення, оновлення статусів та синхронізацію з CRM. Помилки при ручному введенні коштують бізнесу до 5% виручки. Ми автоматизуємо такі сценарії в Directus за допомогою Flows — візуального конструктора, який працює без коду або з мінімальним кодом. Flows скорочують час виконання рутинних операцій на 80% і знижують кількість інцидентів на 95%. Наприклад, автоматизація сповіщень економить до $500 на місяць. Це не тільки прискорює роботу, але й виключає людський фактор. Для команд з 10 осіб це означає додаткових $5000 на рік економії.
Як Flows замінюють кастомні скрипти?
Flows — це ланцюжок операцій, що запускається за тригером. Замість того щоб писати окремий скрипт для кожного завдання, ви збираєте логіку з готових блоків: читання даних, умови, надсилання запитів, перетворення через JavaScript. Порівняйте: типовий сценарій сповіщення про нове замовлення на кастомному PHP займає близько 4 годин розробки та тестування. У Directus Flows те ж завдання вирішується за 30 хвилин — у 8 разів швидше. За швидкістю налаштування Flows в 8 разів краще за кастомні скрипти. Плюс немає ризику зламати сусідню логіку. А якщо процес зміниться, ви просто перетягуєте блоки, а не переписуєте код.
Тригери: з чого починається Flow
| Тип тригера | Опис | Приклад використання |
|---|---|---|
| Event Hook | Спрацьовує на події колекцій (create, update, delete) | Сповіщення при появі нового замовлення |
| Schedule | Запуск за cron-розкладом | Щоденний звіт про продажі о 9:00 |
| Webhook | Вхідний HTTP-запит | Прийом подій від Stripe або Telegram |
| Manual | Ручний запуск з адмінки | Тестовий прогін або генерація звіту |
| Another Flow | Виклик з іншого Flow | Композитна автоматизація з кількох сценаріїв |
Приклад: сповіщення при великому замовленні
Тригер: Event Hook → items.create → колекція orders Операції:
-
Read Data — отримати деталі замовлення з populate
{ "collection": "orders", "key": "{{$trigger.key}}", "query": { "fields": ["*", "customer.*"] } }Condition — перевірити чи замовлення дороге
{ "rule": { "total": { "_gte": 10000 } } }Send Email (через Operations → Email)
To: [email protected] Subject: Велике замовлення #{{$last.id}} на {{$last.total}} $ Body: Клієнт: {{$last.customer.email}}Webhook → POST у Slack
{ "url": "{{SLACK_WEBHOOK}}", "method": "POST", "body": { "text": "Нове замовлення #{{$last.id}} від {{$last.customer.email}}" } }Примітка: всі API-ключі зберігаються в змінних оточення, а не жорстко закодовані.
Custom Operation Extension
Якщо стандартних операцій недостатньо, пишемо кастомне розширення. Наприклад, надсилання SMS:
// extensions/operations/send-sms/index.ts export default { id: 'operation-send-sms', handler: async ({ phone, message }: { phone: string; message: string }) => { const response = await fetch('https://api.sms.ru/sms/send', { method: 'POST', body: new URLSearchParams({ api_id: process.env.SMSRU_API_ID!, to: phone, msg: message, }), }) return response.json() }, }Змінні оточення задаються в Settings → Project Settings → Flows Variables. Посилайтеся на них як
{{SLACK_WEBHOOK}}.Чому варто обрати Directus Flows, а не писати код вручну?
Flows дають візуальний контроль, логування кожного кроку та можливість швидко адаптуватися під зміни. Помилка в кастомному скрипті — це години пошуку бага. У Flows адміністратор бачить схему цілком і може виправити умову за пару кліків. При цьому складні трансформації даних — наприклад, розрахунок суми з ПДВ або фільтрація масиву — виконуються через вбудований JavaScript-блок, тому гнучкість не втрачається. За нашими даними, компанії переходять з кастомної розробки на Flows економлять до 70% часу на супроводі інтеграцій. Flows також знижують кількість помилок на 80% порівняно з ручним виконанням — це конкретна цифра з нашої практики.
Порівняння ручного процесу та Flows
Параметр Ручний процес Directus Flows Час на налаштування сповіщення 4 години 30 хвилин Ризик помилок при зміні Високий Мінімальний Логування Відсутнє Вбудоване Адаптація під нові вимоги Дні Години Що робити, якщо стандартних операцій недостатньо?
Для специфічних завдань ми створюємо кастомні операції — розширення Flows. Це TypeScript-класи, які компілюються в JS і підключаються до Directus як модулі. Приклад вище з SMS — один із таких. Вбудована система змінних оточення дозволяє безпечно зберігати ключі доступу. Ми також додаємо обробку помилок: якщо зовнішній сервіс недоступний, Flow може повторно надіслати запит або записати лог.
Порада з налагодження Flows
Якщо Flow не спрацьовує, перевірте змінні оточення — часта помилка. Використовуйте кнопку "Test" в адмінці для імітації тригера. Логи кожного кроку доступні в розділі Logs.Що входить у нашу роботу
- Аналіз ваших бізнес-процесів і точок автоматизації.
- Проектування схеми Flows: тригери, умови, ланцюжки операцій.
- Реалізація під ключ: налаштування всіх Flows, інтеграція з зовнішніми API, створення кастомних операцій за необхідності.
- Тестування на staging-оточенні з вашими даними.
- Документація по кожному Flow та навчання адміністраторів.
- Гарантія працездатності: якщо щось зламалося після оновлення — ми виправляємо.
Орієнтовні терміни
- Простий Flow (сповіщення, вебхук) — від 1 дня.
- Комплексний ланцюжок (3–5 Flows з інтеграціями) — від 3 до 5 днів.
- Вартість розраховується індивідуально під проект. Оцінимо ваш проект безкоштовно.
Наш досвід
Понад 7 років розробляємо на Directus, реалізували 30+ проектів з Flows. Знаємо типові помилки: забуті змінні оточення, невірні умови, відсутність обробки помилок. У нас є сертифікований партнерський статус та ліцензії на промислову експлуатацію. Документація Directus Flows
Зв'яжіться з нами — покажемо, як Flows заощадять вашій команді 10+ годин на тиждень. Замовте консультацію прямо зараз.







