Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.twine.se/llms.txt

Use this file to discover all available pages before exploring further.

The Flow Engine is Twine’s orchestration engine. Where the Data Engine describes how a single value is derived from other values, the Flow Engine describes a process: a sequence of steps that read from source systems, transform data, write to target systems, branch on conditions, loop over collections, and log what happened along the way. A Flow is a saved, editable directed acyclic graph of nodes. When a flow runs, the engine walks the graph from its root, invoking each node in turn and threading a shared state object (the token) through every node. Side effects - API calls, database writes, log entries - happen as the graph runs, in the order the graph defines.

Flow Engine vs Data Engine

The two engines share the same underlying node-graph model and editor, but they serve different purposes.
Flow EngineData Engine
PurposeOrchestration: run a process with side effectsTransformation: derive a value from other values
Side effectsYes - steps call source/target systems, write logs, persist stateNo - pure computation over values
Values that flowToken assigns (string-keyed map of named values)Dated properties
Top-level driverA saved Flow with an optional scheduleA property mapping, domain condition, or other value derivation
RunsEach run is recorded as a FlowRun with logs and statusNo run records; evaluation happens on demand inside another operation
Flows can embed Data Engine graphs inside them. Nodes like FlowTransform, FlowFilter, and FlowSwitch carry an inner Data Engine graph that the Flow Engine evaluates to produce a single value - the transformed payload, the predicate result, or the branch name. Inside that inner graph, values flow as dated properties just like they do anywhere else in the Data Engine.

Where to start

Before building a flow, read the concept pages in order:

Node reference

The rest of this section is a reference for every flow-mode node available in the Flow Engine, grouped by category. Nodes that work in both the Flow Engine and the Data Engine (for example, reading and writing assigns, end nodes) are documented under the Data Engine reference and can be used freely in both contexts.