# Действия автоматизации Baserow - узлы данных и логики

> Обзор бесплатных узлов-действий Baserow: создание и обновление строк, HTTP-запросы, email, Slack, Router и Iterator - как их настроить и протестировать.

Source: https://opennix.org/docs/baserow/automation/automation-actions/


Действие - это узел workflow, который выполняется после триггера и делает реальную работу: создаёт или меняет строки, отправляет HTTP-запрос, письмо или сообщение в Slack, либо управляет ходом самого процесса через условное ветвление или цикл; открытая редакция Baserow даёт для этого полный набор бесплатных узлов, без выполнения кода и ИИ-подсказок.

## Обзор

Действия выполняются последовательно один за другим после того, как триггер запустил workflow. Каждый узел получает на вход данные из триггера и из результатов предыдущих действий, что позволяет строить цепочки вида «получить строки → изменить одну из них → отправить уведомление».

| Тип | Функция | Примеры узлов |
|---|---|---|
| Действия с данными | Операции с таблицами | создание/обновление/удаление строк, получение строк, агрегация данных |
| Логика workflow | Управление ходом процесса | Router (условия), Iterator (циклы) |
| Интеграции | Внешние коммуникации | HTTP-запрос, email, сообщение в Slack |

Важно: пока workflow находится в состоянии **Черновик**, ни одно из его действий не выполняется - подробнее о состояниях workflow и публикации рассказано в статье про [управление workflow](/docs/baserow/automation/workflow-management/).

## Действия с данными таблицы

**Создать строку.** Добавляет новую запись в указанную таблицу на основе данных триггера или условий. Значения полей задаются статически, берутся из данных триггера или комбинируются - в том числе через [формулы Baserow](/docs/baserow/formula/understanding-formulas/), которые вычисляют значение на лету.

**Пакетное создание строк.** Создаёт до 1000 строк одновременно из массива объектов. Ключи объектов должны совпадать с названиями или идентификаторами полей целевой таблицы.

**Обновить строку.** Изменяет отдельные поля существующей записи, не затрагивая остальные. Требует идентификатор строки - целое число или значение, которое можно к нему привести.

**Пакетное обновление строк.** Обновляет сразу несколько существующих записей за один шаг. Каждый объект массива обязан содержать свойство `id`, указывающее на целевую строку.

**Удалить строку.** Убирает записи, которые больше не нужны. Удалённые строки сначала попадают в корзину рабочего пространства и удаляются окончательно только по истечении срока хранения.

**Получить одну строку.** Возвращает полные данные конкретной записи - можно указать точный идентификатор строки или вернуть первую запись, подходящую под условия отбора.

**Получить несколько строк.** Возвращает набор записей по критериям вроде фильтров и сортировки. Результат можно передать в узел Iterator для последовательной обработки каждой строки.

**Агрегация поля.** Считает сводные значения (сумму, среднее, количество и другие) по нескольким строкам без получения данных каждой записи по отдельности.

**Запустить workflow.** Запускает другой опубликованный workflow с ручным триггером, что позволяет переиспользовать один и тот же процесс в разных автоматизациях.

## Управление логикой workflow

**Router (условное ветвление).** Строит логику вида «если-то» с несколькими условными путями. Побеждает первое совпавшее условие - workflow идёт по первой ветке, условие которой оказалось истинным. Если ни одно условие не совпало, выполняется ветка по умолчанию. Узел Router нельзя удалить, пока не удалены все действия, подключённые к его выходам.

**Iterator (цикл по элементам).** Последовательно обрабатывает каждый элемент списка. Особенно полезен в паре с узлом «Получить несколько строк» - позволяет выполнить персональные действия для каждой строки из результата выборки.

## Базовые действия

**Отправить HTTP-запрос.** Подключается к внешним API методами GET, POST, PUT, PATCH, DELETE или HEAD. Поддерживает параметры запроса, произвольные заголовки, JSON- или form-данные в теле запроса и настраиваемый таймаут. Типичные цели интеграции - Dropbox, CRM-системы, Salesforce, HubSpot, Gmail, Shopify. Для запросов к самой Baserow заголовок авторизации формируется из [персонального API-токена](/docs/baserow/webhook-api/personal-api-tokens/); формат методов и путей описан в справочнике по [REST API базы данных](/docs/baserow/webhook-api/database-api/).

**Отправить email.** Рассылает уведомления через настроенный SMTP-сервер. Поддерживает нескольких получателей, копию и скрытую копию, динамическую тему и тело письма, а также HTML-форматирование. При self-hosted развёртывании автоматизация может использовать заранее настроенный SMTP-сервер.

## Интеграция с внешними сервисами

**Отправить сообщение в Slack.** Публикует сообщения в каналах Slack при запуске workflow. Требует интеграцию Slack-бота с разрешением области `chat:write`.

## Обработка файлов

**Прочитать CSV-файл.** Читает строки из CSV-файла или напрямую из CSV-содержимого. Возвращает массив строк для использования в последующих действиях, например в Iterator или в пакетном создании строк. Настраивается источник данных, разделитель, кодировка и распознавание заголовка.

## Тестирование действий

Действия тестируются последовательно, шаг за шагом:

1. Убедитесь, что все предыдущие узлы уже протестированы.
2. Настройте нужные параметры и сопоставление полей.
3. Нажмите «Протестировать это событие» в боковой панели.
4. Проверьте пример данных, который станет доступен последующим действиям.

Частые проблемы: непротестированные узлы, на которые опирается текущее действие, неверный идентификатор строки, отсутствующие заголовки авторизации и условия Router, которые не возвращают булево значение.

## Ограничения

- Пакетные операции ограничены 1000 строк за одно действие (лимит настраивается при self-hosted развёртывании).
- Значения идентификатора строки должны быть целыми числами или приводиться к ним.
- Запустить можно только опубликованный workflow с ручным триггером.
- Узел Router нельзя удалить, пока не удалены все действия, подключённые после него.

## Часто задаваемые вопросы

**Что происходит с удалённой действием строкой?** Она перемещается в корзину рабочего пространства и хранится там до истечения периода восстановления, а не исчезает мгновенно.

**Можно ли в одном действии создать больше 1000 строк?** В размещении по умолчанию - нет, но при self-hosted развёртывании этот лимит можно изменить в конфигурации.

**Почему Router выполнил не ту ветку, которую я ожидал?** Router применяет правило «первое совпадение побеждает» - если несколько условий истинны одновременно, сработает только первое из них по порядку.

**Как понять, какое действие сломалось при тесте workflow?** Результаты тестового запуска фиксируются в истории выполнения - там указано, какой узел завершился с ошибкой и с каким сообщением.

Следующий шаг - статья [«Управление workflow»](/docs/baserow/automation/workflow-management/): состояния черновик/пауза/публикация, тестовый прогон и автоматическое отключение при сбоях.

