Налаштування Flows (автоматизація) Directus

Наша компанія займається розробкою, підтримкою та обслуговуванням сайтів будь-якої складності. Від простих односторінкових сайтів до масштабних кластерних систем, побудованих на мікро сервісах. Досвід розробників підтверджено сертифікатами від вендорів.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

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

Пропоновані послуги
Показано 1 з 1 послугУсі 2065 послуг
Налаштування Flows (автоматизація) Directus
Середня
~2-3 робочих дні
Часті питання

Наші компетенції:

Етапи розробки

Останні роботи

  • image_website-b2b-advance_0.png
    Розробка сайту компанії B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Розробка веб-додатків для компанії FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    874
  • image_ecommerce_furnoro_435_0.webp
    Розробка інтернет магазину для компанії FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Розробка веб-додатків для компанії Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Розробка веб-сайту для компанії ФІКСПЕР
    851

Налаштування Flows (автоматизація) Directus

Flows — візуальний конструктор автоматизації в Directus. Логіка: тригер (подія) → ланцюг операцій. Без коду можна налаштувати сповіщення, синхронізацію даних, звернення до зовнішніх API, відправлення email.

Тригери Flow

  • Event Hook — подія колекції (create, update, delete)
  • Schedule — по розкладу (cron)
  • Webhook — вхідний HTTP запит
  • Manual — запуск вручну з адміністраторської панелі
  • Another Flow — виклик з іншого Flow

Приклад: сповіщення про нове замовлення

Тригер: Event Hook → items.create → колекція orders

Операції:

  1. Read Data — отримати деталі замовлення з populate

    { "collection": "orders", "key": "{{$trigger.key}}", "query": { "fields": ["*", "customer.*"] } }
    
  2. Condition — перевірити що замовлення дороге

    { "rule": { "total": { "_gte": 10000 } } }
    
  3. Send Email (через Operations → Email)

    To: [email protected]
    Subject: Велике замовлення #{{$last.id}} на {{$last.total}} ₴
    Body: Клієнт: {{$last.customer.email}}
    
  4. Webhook → POST в Slack

    {
      "url": "{{SLACK_WEBHOOK}}",
      "method": "POST",
      "body": { "text": "Нове замовлення #{{$last.id}} від {{$last.customer.email}}" }
    }
    

Приклад: щоденний звіт (Schedule)

Тригер: Schedule → 0 9 * * 1-5 (о 9:00, пн-пт)

Операції:

  1. Read Data — останні 24 години замовлень

    {
      "collection": "orders",
      "query": {
        "filter": {
          "date_created": { "_gte": "$NOW(-24h)" },
          "status": { "_in": ["paid", "delivered"] }
        }
      }
    }
    
  2. Transform (JS код)

    const orders = $last
    const total = orders.reduce((sum, o) => sum + o.total, 0)
    return { count: orders.length, revenue: total }
    
  3. Webhook → Slack з підсумками

Приклад: вхідний вебхук (Stripe)

Тригер: Webhook → метод POST

Операції:

  1. Condition — перевірити тип événня

    { "rule": { "type": { "_eq": "checkout.session.completed" } } }
    
  2. Read Data — знайти замовлення за ID з metadata

    {
      "collection": "orders",
      "query": { "filter": { "stripe_session_id": { "_eq": "{{$trigger.body.data.object.id}}" } } }
    }
    
  3. Update Data — оновити статус замовлення

    {
      "collection": "orders",
      "key": "{{$last[0].id}}",
      "payload": { "status": "paid" }
    }
    

Custom Operation Extension

Для операцій, яких немає в стандартному наборі:

// 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()
  },
}

Змінні середовища в Flows

У налаштуваннях Directus (Settings → Project Settings → Flows Variables) можна задати змінні, доступні у всіх Flows:

SLACK_WEBHOOK = https://hooks.slack.com/...
CRM_API_URL = https://api.crm.com

У операції посилатися як {{SLACK_WEBHOOK}}.

Відладка Flows

Directus зберігає журнали виконання для кожного Flow — в адміністраторі можна побачити кожен крок з вхідними/вихідними даними та помилками. Кнопка «Test» дозволяє запустити вручну з mock-даними.

Терміни

Налаштування 3–5 Flows (сповіщення, вебхуки, звіти) — 1–2 дні без написання коду.