Do While
Type
loop.do-whilebasic/loopsAny
Value
Any
Do While always runs the callback body once, then checks a condition (query) before further iterations. If the condition matches, it runs again. If it does not, the main path continues. A missing or empty condition fails the run (the body does not start).
Use While when the condition should be checked before the first run. Use For when the count is known up front.
Configure
| Setting | Description |
|---|---|
| Condition | Required query (AND/OR, rules, nested groups, Not), same builder as Condition. Left-side fields come from this block’s context, plus args.index for the upcoming iteration |
| Max iterations (optional) | Safety cap. Defaults to 1000. Must be greater than 0 |
The condition owns continue/stop after the first pass. The body’s return is only collected on the pipe; it does not decide whether to loop again.
The Callback outlet must be connected to a Lambda block. If it is not connected, the run fails.
Handles
| Handle | Role |
|---|---|
| In (target) | Incoming connection |
| Out (source) | Continues after the loop finishes (main path, same scope) |
| Callback | New callback scope for each iteration. Connect to Lambda |
Inside the body (after Lambda), use:
| Path | Meaning |
|---|---|
args.index | Zero-based iteration count (0, 1, 2, …) |
End the body with a return to collect a value for this iteration. Continue skips the rest of this pass. Break stops the loop early. An unconnected Out ends the main path after the loop.
Pipe schema
The next block on the main path reads this on the data pipe (pipe.value).
| Field | Type | Description |
|---|---|---|
| Results | list | Values returned from each iteration, in order |