Перейти к содержимому

Компоненты Workflow

Детальное описание всех компонентов workflow — ноды, соединения, триггеры

Каждый workflow состоит из:

Триггеры запускают выполнение workflow. Без триггера workflow не может работать автоматически.

Простейший триггер для ручного запуска.

Использование: Тестирование, разовые задачи
Параметры: Нет

Запуск по расписанию (cron).

ПараметрОписание
Trigger IntervalМинуты, часы, дни, недели, месяцы
Trigger at HourЧас запуска
Trigger at MinuteМинута запуска

Примеры cron:

*/15 * * * * — каждые 15 минут
0 9 * * 1-5 — в 9:00 по будням
0 0 1 * * — первого числа каждого месяца

Запуск по HTTP-запросу.

ПараметрОписание
HTTP MethodGET, POST, PUT, DELETE, etc.
PathURL path (например, /my-webhook)
AuthenticationNone, Basic Auth, Header Auth
Response ModeImmediately, Last Node, Response Node

Триггеры интегрированных сервисов:

СервисТриггеры
GmailNew Email
SlackNew Message, Mention
GitHubPush, Pull Request, Issue
StripePayment, Subscription

HTTP Request

Запросы к любым API

Code

JavaScript или Python код

Set

Создание и изменение данных

Function

JavaScript функции (legacy)

Универсальная нода для API-запросов.

ПараметрОписание
MethodGET, POST, PUT, PATCH, DELETE, HEAD, OPTIONS
URLАдрес API endpoint
AuthenticationТип авторизации
HeadersHTTP заголовки
Query ParametersURL параметры
BodyТело запроса (для POST/PUT/PATCH)

Выполнение произвольного кода.

// JavaScript пример
const items = $input.all();
return items.map(item => ({
json: {
...item.json,
processed: true,
timestamp: new Date().toISOString()
}
}));
# Python пример
items = _input.all()
for item in items:
item['json']['processed'] = True
return items

Создание и модификация данных.

РежимОписание
Manual MappingУказание полей вручную
JSONВвод JSON напрямую
Keep Only SetОставить только указанные поля
Include Other Input FieldsДобавить к существующим

Условное ветвление (true/false).

// Условие
{{ $json.status }} равно "active"

Множественное ветвление.

// Routing rules
{{ $json.type }} === "email" → Output 1
{{ $json.type }} === "sms" → Output 2
{{ $json.type }} === "push" → Output 3
Default → Output 4

Объединение нескольких потоков.

РежимОписание
AppendДобавить items в конец
CombineОбъединить по индексу
MultiplexВсе комбинации
Choose BranchВыбрать один поток

Итерация по массиву с возможностью паузы.

ПараметрОписание
Batch SizeКоличество items за итерацию
OptionsReset, Start Index

Разбиение на пакеты для обработки.

Передают данные между нодами:

Node A (output) ──────► Node B (input)

Обрабатывают ошибки:

Node A (error) ──────► Error Handler

Специальные соединения для AI нод:

ТипНазначение
ai_languageModelПодключение LLM
ai_memoryПодключение памяти
ai_toolПодключение инструментов
ai_outputParserПарсер ответов

Credentials хранят учётные данные для подключения к сервисам.

ТипОписание
API KeyКлюч API
OAuth2OAuth 2.0 авторизация
Basic AuthЛогин/пароль
Header AuthТокен в заголовке
  1. SettingsCredentialsAdd Credential
  2. Выберите тип сервиса
  3. Введите данные авторизации
  4. Save

В ноде выберите credential из списка:

Authentication: Predefined Credential Type
Credential: My API Key
  • Credentials шифруются в базе данных
  • Доступ можно ограничить по пользователям
  • Используйте переменные окружения для production

Настраиваются в SettingsVariables:

{{ $vars.API_URL }}
{{ $vars.MAX_RETRIES }}

Доступны через $env:

{{ $env.MY_API_KEY }}

Документируйте workflow с помощью заметок:

  • Правый кликAdd Sticky Note
  • Поддержка Markdown
  • Цветовое кодирование
  • Размещение за нодами