Введение в Staq Workflow
Staq Workflow — платформа для автоматизации процессов: от синхронизации CRM до AI-агентов и data pipelines. Узлы, код, 480+ интеграций, один рантайм.
Нужен self-host? docker run -p 7700:7700 staq/workflow.
Нужно облако? Регистрация на staq.ru — и первый флоу запущен через 3 минуты.
Установка #
Staq работает одинаково локально, на вашем сервере и в облаке Staq. Выберите способ установки:
1# Минимальный запуск — всё в контейнере 2$ docker run -p 7700:7700 -v staq-data:/data staq/workflow:latest 3 4# Откройте http://localhost:7700 5# Первый логин — admin / admin (смените в настройках)
Первый флоу за 3 минуты #
Разберём на примере: каждый час забрать новые заказы из PostgreSQL, обогатить данными о клиенте, отправить уведомление в Telegram.
0 * * * *
orders.new
enrich
send
В визуальном редакторе это четыре узла, соединённых линиями.
Каждый узел — декларация: триггер, источник, трансформация, действие.
Данные из предыдущего узла доступны через $input или через
drag-and-drop из панели переменных.
1// Узел: Function · "enrich" 2// Входит массив заказов из узла postgres 3 4const orders = $input.all(); 5 6return orders.map(o => ({ 7 id: o.id, 8 total: o.total, 9 text: `Новый заказ № ${o.id} · ${o.total} ₽`, 10 chat: '@sales_team' 11}));
Ключевые концепции #
В Staq пять базовых сущностей. Зная их, вы сможете построить любой процесс.
| Сущность | Что это | Пример |
|---|---|---|
| Flow | Один процесс: от триггера до действия | order-sync |
| Node | Один шаг: триггер, код, интеграция, логика | postgres.query |
| Trigger | Точка входа: webhook, cron, очередь | cron(0 * * * *) |
| Execution | Один запуск флоу со всеми данными | exec_4a7b2e |
| Credential | Зашифрованные секреты для интеграций | pg-prod |
Один Flow = один Trigger + N Node. Каждый запуск — Execution с полной историей входов/выходов каждого узла.
REST API #
Всё, что можно сделать в UI, можно сделать через API. Ключ — в настройках профиля.
Запустить флоу
1$ curl -X POST https://api.staq.ru/v1/flows/order-sync/execute \ 2 -H "Authorization: Bearer $STAQ_TOKEN" \ 3 -H "Content-Type: application/json" \ 4 -d '{"order_id": 4721, "source": "checkout"}' 5 6# Ответ 7{ "execution_id": "exec_4a7b2e", "status": "running" }
Получить статус выполнения
Эндпоинты
| Метод | Путь | Описание |
|---|---|---|
| GET | /v1/flows | Список всех флоу |
| POST | /v1/flows | Создать новый флоу |
| POST | /v1/flows/{id}/execute | Запустить флоу |
| GET | /v1/executions/{id} | Статус и результат |
| DEL | /v1/executions/{id} | Отменить выполнение |
| GET | /v1/connectors | Список коннекторов |