Skip to main content

The palette

The designer’s left panel offers these draggable nodes, plus whatever agents, capabilities, and workflows you have attached to this workflow. Control Flow — Branch · Parallel · Loop · For Each · Notify · End Wait States — Approval · Pause · Sleep · Schedule · Webhook Attached items appear under Agents, Capabilities, and Workflows, each with an ”+ Add” that opens the attachment drawer.

Attached-item nodes

Control flow

Notify

Email only. Any other channel is a terminal error, and a recipient is mandatory. It takes channel, to, subject, and message.

Wait states

These are what makes a workflow durable rather than a script.

Approval

Parks the run until a human answers it through the Management API. There is no timeout — an Approval node waits indefinitely. Nothing auto-approves and nothing auto-rejects. See Human approval.

Webhook

Parks the run until an external system posts to the run’s callback URL, or the timeout expires. Configuration is a timeoutValue plus a timeoutUnit (minutes, hours, days), defaulting to 24 hours. A webhook timeout does not fail the run. It returns { webhook_received: false, timed_out: true, … } and the graph continues — so branch on that if the difference matters. See Webhooks.

Sleep

Waits a fixed duration before continuing. Use it to space out steps that hit a rate-limited system, not to wait for an external event — a Webhook node is the right shape for that.

Pause

Parks the run for manual resumption.

Schedule

Waits until a moment. Reads a scheduleType of datetime or cron, the corresponding datetime or cron value, and an optional IANA timezone defaulting to UTC. The designer seeds the timezone from the browser.

Node data on the wire

A node’s type-specific settings sit directly inside its data object, beside label — there is no nested config object. data and position are both required.

A note on the HTTP node

http is a real, runnable node type, but it is not in the designer’s palette. An HTTP step can reach a graph through AI generation or an imported definition, not by dragging one on.
If you do end up with an HTTP node, remember its headers and body live in the workflow definition in plain text. Use a connector for anything credentialed.

Next