Flow YAML Reference
This page documents every attribute available in a Flow document — the envelope the Flow Builder posts, whether you edit on the canvas or in the YAML view.Top-Level Structure
flow.name, at least a start node, and at least one response or output node:
flow
nodes
The list of steps that make up the flow. Every node’s config is validated against its type’s schema on deploy/run — an unknown type or an invalid config fails validation with a structured, per-node issue.
runtime
An optional block — settable at the flow level (as a default) or per-node (as an override) — controlling how a node’s compiled code executes:
connections
Directed edges between nodes. Each entry wires one node’s output port to another node’s input port.
Branching connections
Outgoing connections from a branching node (currently onlyif) must explicitly set from_port to one of that node’s declared output ports (true/false) — an omitted or invalid from_port fails validation:
Required inputs
Some node types declarerequired_inputs — input ports that must have an incoming connection for the flow to be valid. response and output both require their in port to be connected.
Node types at a glance
Full attribute tables for every type live in the Node Reference. Quick summary:for_each.config.body
The one node type whose config embeds a full nested document, following the exact same top-level structure as a flow:
- The body may itself contain a nested
for_each(up to a maximum depth of 5). - The body must contain exactly one
responsenode — its output becomes that iteration’s result.
Full example
The “London Weather Demo” starter template — fetches current weather, transforms it, and returns a structured summary:Next steps
- Overview - flow structure and core concepts
- Node Reference - every node type, its config, and its ports
- Triggers & Runs - starting a flow and reading run status
- Templating & Expressions - how nodes reference upstream data and parameters