Node Types
Every Voice Workflow is built from nodes. Each node is one phase of the call. At any moment only the current node’s prompt and tools are active, which is what keeps the agent on-script as the conversation moves from greet → branch → collect → end. Nodes fall into two families, plus a single terminal node:Conversational nodes
They own a caller turn — the agent speaks, the caller replies, and the
Director extracts variables from what was
said. Conversation and Collector nodes are conversational.
Internal nodes
They run instantly with no caller turn. The flow passes straight through
them to the next conversational node. Condition, Set Variable, API
Request, and Transfer are internal.
All node types
| Node | Family | What it does |
|---|---|---|
| Conversation | Conversational | Speaks using a per-node prompt layered over the Global Prompt; can extract and require variables this phase. |
| Collector | Conversational | A prebuilt, transcription-hardened collector for one common value (email, phone, name, address, or DTMF). |
| Condition | Internal | Branches by its outgoing edge conditions — no caller turn, no spoken output. |
| Set Variable | Internal | Sets a variable from a template string with {{variable}} interpolation. |
| API Request | Internal | Calls an external API (the unified API & Webhook tool) and maps response fields into variables. |
| Transfer | Internal | Bridges the live call to a human or phone number. |
| End Call | Terminal | Ends the call with an optional closing message and records an outcome label. |
| Global | Conversational | A Conversation node marked Global that any interruptible node can jump to, handle the situation, then return. |
These are voice workflow nodes. They are unrelated to the chat
Flow Editor, which uses Agent / Tool / Team graph nodes.
Conversation
The workhorse node. It speaks to the caller and drives the conversation forward.| Setting | What it controls |
|---|---|
| Prompt | A per-node prompt that is layered over the shared Global Prompt. It governs only this phase of the call. |
| First Message | An optional opening line. Only the opening node greets the caller — set the First Message on your Start node. |
| Extract | The list of variables to capture from what the caller says during this phase. |
| Require | Variables that must be captured before the flow may leave this node. The node re-asks until they’re filled. |
| Model / Voice override | Optionally run this single node on a different model or voice. |
| Interruptible | Whether Global nodes are allowed to interrupt this node. |
Extract vs. Require: extract tells the Director which variables to listen
for this turn; require additionally blocks the transition until those variables
are captured. A variable can be extracted without being required.
Collector
A Collector is a prebuilt, transcription-hardened node tuned to reliably capture one common value over the phone, where spelled-out emails and digit strings are easy to mishear. Available collectors:| Collector | Captures |
|---|---|
| An email address. | |
| Phone | A phone number. |
| Name | A caller’s name. |
| Address | A postal address. |
| DTMF | Keypad digits (touch-tones). |
Condition
An internal node that routes without speaking. It has a single output, and the branching lives entirely on its outgoing edges — each edge carries its own condition.- Equation edges are checked first, deterministically, first-true-wins.
- An Unconditional edge acts as the “else”.
A Condition node branches by edge conditions, not by true/false handles. To add
a branch, draw another edge from its output and give that edge a condition.
Set Variable
An internal node that assigns a variable from a template string, with{{variable}} interpolation so you can compose new values from existing ones — for
example setting {{full_name}} from {{first_name}} {{last_name}}. It runs
instantly and passes through to the next conversational node.
API Request
An internal node that calls an external service and feeds the result back into the workflow. It reuses the unified API & Webhook tool (api_connect), with three
modes — API Endpoints, Webhook, and Free-form Request — and a
Response → Variable mapping that lands response fields into workflow variables
so a downstream Condition can branch on them.
The chosen endpoint’s parameters are filled from workflow variables of the same
name (extract-before-call), and on a failed call the node follows its error
edge so the call never hangs.
See API Request Node for the full
configuration, including the Configure API modal, auth options, OpenAPI import, and
a worked example.
Transfer
An internal node that bridges the live call to a human agent or a phone number. Use it when the caller needs a person, or when the workflow has done its job and the rest of the call belongs to a human.End Call
The terminal node. Place it wherever a path through the workflow finishes.| Setting | What it controls |
|---|---|
| Closing message | An optional final line the agent says before hanging up. |
| Outcome | A label recorded for the run (e.g. booked, not_interested) so you can see how calls ended. |
Global nodes
Any Conversation node can be marked Global. A Global node is not part of the linear path — instead it has an enter-condition (a prompt or an equation) and becomes reachable from any interruptible node the moment its enter-condition matches. This is how you handle things that can come up at any point in the call — a caller raising a pricing objection, asking to speak to a human, or going off-script. When the enter-condition matches:- The flow jumps to the Global node, which handles the situation.
- When it’s done, the flow returns to the node the caller was on.
A node only reaches Globals if its Interruptible toggle is on. Turn it off on
nodes where an interruption would be disruptive (for example, mid-way through
collecting a sensitive value).
Next steps
Transitions, Variables & the Director
How edges, conditions, variables, and the Director move the call between nodes.
API Request Node
Configure outbound API calls and map responses into variables.
The Workflow Builder
Add, connect, and arrange nodes on the canvas.
Workflow Templates
Start from Lead Qualification, Appointment Booking, or Support Triage.

