For the complete documentation index, see llms.txt. This page is also available as Markdown.

Delayed Loop

Send the items of a list one after another with a pause between them, for example to stay under an API rate limit.

Introduction

By default the Each component sends all the items of a list at once. The steps in the loop body then call the target API for all the items at the same time, which can hit its rate limit.

Set Delay on Each to space the items out. Each then sends one item, waits the given number of milliseconds, sends the next one, and so on.

Each with a delay of 500 ms between items

Settings

  • Delay: the pause between two items in milliseconds, from 0 to 60000 (one minute). 0 or empty means no delay.

For example, an API that allows 10 requests per second needs a delay of at least 100 ms.

How it works

  • Each sends the items in their list order, with the pause between them. The item messages look the same as in the default mode: Index, Value, Items Count and Correlation ID.

  • done is sent once the last item has been sent.

  • A long list is processed in batches of up to three minutes in the background, so a delayed loop can run for a long time without blocking the flow. If the engine delivers the input message again after an error, the loop continues from the last sent item instead of starting over.

  • Join Each works the same as in a parallel loop, see Parallel loop with Join Each.

Last updated

Was this helpful?