Nodes are the building blocks of every workflow. Each node performs one step and passes its output to the next connected node.
Node categories
Core
| Node | Purpose |
|---|
| Start | Workflow entry point and trigger |
| End | Optional completion point with output action |
| Node | Purpose |
|---|
| Action | Perform an operation in a connected app (Gmail, Slack, etc.) |
| HTTP Request | Call any external REST API |
| AI Agent | Run AI models for text generation, analysis, or agent tasks |
| Approval | Pause until a human approves or rejects |
Logic
| Node | Purpose |
|---|
| Condition | Branch the workflow based on expressions |
| Loop | Repeat a loop body while a condition is true |
| Delay | Pause execution for a set duration |
Data
| Node | Purpose |
|---|
| Transform | Reshape, filter, map, validate, or convert data |
| Transform Catalog | Full reference for every transform type and its fields |
| Function | Run custom JavaScript code |
| Text | Output static or templated text (useful as AI prompts) |
How data flows
Start → Node A → Node B → Node C (done)
Each node receives:
- Output from the previous node as
lastOutput
- Original trigger data as
inputs
- Workflow variables as
variables
- Per-node history as
context['node-id'].output
Use {{lastOutput}}, {{inputs.field}}, {{variables.key}}, and {{context['node-id'].output}} in any node's configuration. See Variables & Templates.
Connecting nodes
- Drag from the output handle (right) of one node to the input handle (left) of another.
- A node can connect to multiple downstream nodes (parallel branches).
- A Condition node has separate output handles for each branch (if / else if / else).
- A Loop node has two outputs: loop body (first) and after loop (second).
Choosing the right node
| I need to… | Use |
|---|
| Send an email via Gmail | Action (Gmail → Send Email) |
| Call a custom API | HTTP Request |
| Summarize text with AI | AI Agent |
| Rename/restructure JSON fields | Transform → Edit Fields |
| Filter a list | Transform → Filter |
| Sheet rows as objects | Transform → Sheet to Rows |
| Run custom calculations | Function |
| Short expression on data | Transform → Code |
| Branch on a value | Condition |
| Scan many contacts per run | Loop + Scan Sequence Contact + Patch Sequence Scan |
| Wait between API calls | Delay |
| Human sign-off | Approval |
| Build a reusable prompt snippet | Text |
Configuration guides
Every node type has a dedicated page:
Next steps
- Pick a node from the sidebar for its full configuration guide
- Browse the Transform Catalog for all transform types
- Jump to the Cookbook for end-to-end workflow examples