Циклы в n8n: как обрабатывать записи по одной и пачками через Loop Over Items

· 3 мин чтения · Редакция Skill Unit

Новички в n8n часто ищут, как «сделать цикл», чтобы обработать список строк из таблицы или заявок. Хорошая новость: в большинстве случаев цикл не нужен — n8n обрабатывает все элементы сам. Но есть ситуации, где без явного цикла не обойтись. Разберём, когда он нужен и как его собрать.

Как n8n работает со списками

Данные между узлами передаются как набор элементов (items). Если из Google Таблицы пришло 50 строк, это 50 элементов, и следующий узел, например отправка письма, выполнится 50 раз — по одному на каждый элемент. Писать цикл для этого не нужно.

Когда нужен Loop Over Items

  • У внешнего API есть лимит на число запросов в минуту — нужно отправлять пачками с паузой.
  • Каждый элемент нужно обработать цепочкой из нескольких узлов строго по очереди.
  • Сервис принимает данные пачками фиксированного размера.
  • Нужно избежать перегрузки памяти при обработке очень большого объёма.

Как устроен узел

Loop Over Items берёт входящий набор элементов и выдаёт его частями заданного размера (Batch Size). У узла два выхода: «loop» — очередная пачка для обработки, и «done» — срабатывает, когда все пачки обработаны.

Схема: данные → Loop Over Items → узлы обработки → (возврат обратно в Loop Over Items). Когда элементы закончатся, поток пойдёт по выходу «done» — туда можно поставить итоговое уведомление.

Пример: рассылка по списку с паузой

Задача: разослать уведомление 300 клиентам из таблицы, но сервис сообщений разрешает ограниченное число запросов в минуту.

  • Google Sheets — читает список клиентов (300 элементов).
  • Loop Over Items — размер пачки, например, 20.
  • HTTP Request или узел сервиса — отправляет 20 сообщений.
  • Wait — пауза перед следующей пачкой, чтобы уложиться в лимит.
  • Возврат в Loop Over Items за следующей пачкой.
  • По выходу «done» — уведомление вам в Telegram: «Рассылка завершена».

Размер пачки и паузу подбирайте по лимитам из документации сервиса, с запасом.

Частые ошибки

  • Ставят цикл там, где он не нужен, — workflow усложняется, а результат тот же.
  • Забывают соединить последний узел обработки обратно с Loop Over Items — обрабатывается только первая пачка.
  • Ставят итоговые действия внутри цикла — уведомление приходит 15 раз вместо одного. Итог — только на выходе «done».
  • Не обрабатывают ошибки: один упавший запрос останавливает всю рассылку. Включите продолжение при ошибке и логируйте неудачные элементы.

Как отлаживать

Запускайте workflow сначала на маленьком наборе: 3–5 элементов и размер пачки 2. Так видно, что цикл действительно проходит по всем пачкам и корректно завершается. Затем увеличивайте объём. Подробнее о приёмах отладки — в отдельной статье блога.

Коротко о главном

  • n8n сам выполняет узел для каждого элемента — явный цикл нужен не всегда.
  • Loop Over Items нужен для пачек, пауз и строгой очерёдности.
  • Последний узел обработки соединяется обратно с циклом.
  • Итоговые действия — только на выходе «done».
  • Сначала тестируйте на нескольких элементах.

В курсе «Автоматизация без кода на n8n» вы собираете конвейер заявок с таблицами, уведомлениями и защитой от сбоев — включая обработку списков и лимиты API.

Хотите пройти путь на практике?

Курс «Автоматизация без кода на n8n»: короткие уроки, практические задания и проверка ответов. Первый урок бесплатно.

Смотреть курс