Ноды (Nodes)
Ноды — это строительные блоки ваших воркфлоу. Каждая нода выполняет определенное действие.
Категории нод
Core Nodes (Основные)
Встроенные ноды для базовых операций.
HTTP Request
Выполнение HTTP запросов к API.
Параметры:
- Method: GET, POST, PUT, DELETE, PATCH
- URL: адрес endpoint
- Authentication: Basic, OAuth, API Key
- Headers: дополнительные заголовки
- Body: данные для отправки
Пример:
{
"method": "GET",
"url": "https://api.github.com/users/octocat",
"headers": {
"Accept": "application/json"
}
}Code (Function)
Выполнение JavaScript или Python кода.
JavaScript пример:
// Доступ к входным данным
const items = $input.all();
// Обработка
const processed = items.map(item => ({
...item.json,
timestamp: new Date().toISOString(),
processed: true
}));
return processed;Python пример:
import json
# Обработка данных
for item in _input.all():
item['timestamp'] = datetime.now().isoformat()
return _input.all()Set
Создание или изменение данных.
Режимы:
- Manual Mapping: ручное указание полей
- Keep Key Matches: фильтрация полей
- Remove Key Matches: удаление полей
IF
Условная логика для ветвления воркфлоу.
Условия:
- String: содержит, равен, начинается с
- Number: больше, меньше, равен
- Boolean: true/false
- Date: до, после, между
Пример:
IF ({{ $json.status }} === "active")
→ true → Continue processing
→ false → Send notificationTrigger Nodes (Триггеры)
Schedule Trigger
Запуск по расписанию.
Режимы:
- Interval: каждые N секунд/минут/часов
- Cron: cron выражение
- Every X: каждый день/неделю/месяц
Webhook Trigger
Прием HTTP запросов.
Настройка:
- Path: уникальный путь вебхука
- Method: GET, POST, etc.
- Response: что вернуть после обработки
Manual Trigger
Ручной запуск для тестирования.
Integration Nodes (Интеграции)
Google Sheets
Работа с Google таблицами.
Операции:
- Append: добавить строки
- Update: обновить строки
- Read: прочитать данные
- Delete: удалить строки
PostgreSQL / MySQL
Работа с базами данных.
Операции:
- Execute Query: выполнить SQL запрос
- Insert: вставить данные
- Update: обновить данные
- Delete: удалить данные
Discord / Slack / Telegram
Отправка сообщений в мессенджеры.
Возможности:
- Отправка текста и файлов
- Форматирование markdown
- Упоминания пользователей
- Кнопки и interactive элементы
Работа с данными в нодах
Входные данные
Доступ к данным из предыдущих нод:
// Текущая нода
{{ $json.fieldName }}
// Конкретная нода
{{ $node["Node Name"].json.field }}
// Все элементы
{{ $input.all() }}
// Первый элемент
{{ $input.first() }}
// Последний элемент
{{ $input.last() }}Выражения
JavaScript выражения
// Дата и время
{{ new Date().toISOString() }}
{{ new Date().getTime() }}
// Строки
{{ $json.name.toUpperCase() }}
{{ $json.text.replace("old", "new") }}
// Числа
{{ $json.price * 1.2 }}
{{ Math.round($json.value) }}
// Массивы
{{ $json.items.length }}
{{ $json.items.map(x => x.name).join(", ") }}Встроенные функции
// $jmespath - фильтрация данных
{{ $jmespath($json, "items[?price > 100]") }}
// $now - текущее время
{{ $now.toISO() }}
// $today - сегодняшняя дата
{{ $today.toFormat("yyyy-MM-dd") }}Настройка нод
Общие параметры
Always Output Data: выводить данные даже при ошибке
Continue On Fail: продолжать выполнение при ошибке
Retry On Fail: повторить попытку при ошибке
- Max Tries: количество попыток
- Wait Between Tries: задержка между попытками
Режимы выполнения
Run Once for All Items: обработать все элементы сразу
Run Once for Each Item: обработать каждый элемент отдельно
Создание пользовательских нод
Если встроенных нод недостаточно, можно создать свою:
- Используйте Code ноду для простых случаев
- Используйте HTTP Request для API интеграций
- Создайте npm пакет для сложных нод
Полезные комбинации нод
Получение и сохранение данных
Schedule → HTTP Request → PostgreSQL (Insert)Обработка с условиями
Webhook → IF → [true: Process, false: Ignore]Агрегация данных
Trigger → Loop Over Items → Code (aggregate) → Send ResultОбработка ошибок
Main Flow → (Error) → Error Trigger → Notify Admin