The Loop block is a container that executes blocks repeatedly. Iterate over collections, repeat operations a fixed number of times, or continue while a condition is met.
Loop blocks are container nodes that hold other blocks inside them. The contained blocks execute multiple times based on your configuration.
Configuration Options
Loop Type
Choose between four types of loops:
For Loop (Iterations) - A numeric loop that executes a fixed number of times:

Use this when you need to repeat an operation a specific number of times.
Example: Run 5 times
- Iteration 1
- Iteration 2
- Iteration 3
- Iteration 4
- Iteration 5How to Use Loops
Creating a Loop
- Drag a Loop block from the toolbar onto your canvas
- Configure the loop type and parameters
- Drag other blocks inside the loop container
- Connect the blocks as needed
Referencing Loop Data
There's an important distinction between referencing loop data from inside vs outside the loop:
Inside the loop, use <loop.> references to access the current iteration context:
<loop.index>: Current iteration number (0-based)<loop.currentItem>: Current item being processed (forEach only)<loop.items>: Full collection being iterated (forEach only)
// Inside a Function block within the loop
const idx = <loop.index>; // 0, 1, 2, ...
const item = <loop.currentItem>; // Current itemThese references are only available for blocks inside the loop container. They give you access to the current iteration's context.
Example Use Cases
Processing API Results - ForEach loop processes customer records from an API
API (Fetch) → Loop (ForEach) → Agent (Analyze) → Function (Store)Iterative Content Generation - For loop generates multiple content variations
Loop (5x) → Agent (Generate) → Evaluator (Score) → Function (Select Best)Counter with While Loop - While loop processes items with counter
Variables (i=0) → Loop (While i<10) → Agent (Process) → Variables (i++)Advanced Features
Limitations
Container blocks (Loops and Parallels) support nesting. You can place loops inside loops, parallels inside loops, and any combination of container blocks to build complex multi-dimensional workflows.
Loops execute sequentially, not in parallel. If you need concurrent execution, use the Parallel block instead.
Inputs and Outputs
Loop Type: Choose between 'for', 'forEach', 'while', or 'doWhile'
Iterations: Number of times to execute (for loops)
Collection: Array or object to iterate over (forEach loops)
Condition: Boolean expression to evaluate (while/do-while loops)
Best Practices
- Set reasonable limits: Keep iteration counts reasonable to avoid long execution times
- Use ForEach for collections: When processing arrays or objects, use ForEach instead of For loops
- Handle errors gracefully: Consider adding error handling inside loops for robust workflows