Skip to main content
Nodes are the building blocks of the Agent Editor graph. There are two main categories: Convo (conversation flow, what the agent says and does during a call) and Logic flow (branching, data, integrations, and internal steps). Function nodes are composable in both; flow branching nodes (Condition, Categorize, Merge, Flow) exist only in logic flows.
First Message
First Message
What the agent says first when the call starts.
Conversation
Conversation
A step in the conversation; add a title to describe what it covers.
Extract Info
Extract Info
Captures information from the call and saves it to a variable you name.
End
End
Ends the call.
Transfer Call
Transfer Call
Transfers the call to another number.
PBX Transfer Call
PBX Transfer Call
Transfers the call using your PBX (3CX, Yeastar, Webex, or generic). Configure the number, message, and transfer type.
Function
Function
A tool the agent can use during the conversation (e.g. send email, call a webhook, or run an integration).
Multichannel
Multichannel
Opens an SMS channel mid-call so the caller can share sensitive information by text rather than voice.
Edges and conditions. All nodes support an optional when field. This is a plain-language condition the agent evaluates before entering the node (e.g. “caller has confirmed their email”).

Node reference

Fields marked with * are required.

Conversation flow

The opening message the agent speaks when a call begins. Every agent has exactly one First Message node.
A dialogue step where the agent follows the instructions you provide. Use the description to tell the agent what to cover, ask, or do in this part of the conversation.
Asks the caller for a specific piece of information and stores the answer in a named variable. The variable is set once per call; if it already has a value, the node will not overwrite it even if the agent revisits it.
Transfers the live call to a phone number or another Vatel agent. Configure the transfer type to control how the handoff is handled at the SIP/telephony layer.Transfer types:
  • bridge - Your platform stays in the media path and bridges the two call legs together for the full duration.
  • conference - Caller and destination are joined into a conference room; additional participants can be added.
  • refer - Issues a SIP REFER so the caller’s endpoint dials the destination directly; your platform exits the call.
  • agent_handoff - Hands the call off to another Vatel agent identified by agentId.
Ends the call with an optional closing message.

Logic flow

The entry point of every logic flow. Every flow has exactly one Start node and no configuration fields; connect it to the first node you want to run.
Evaluates a comparison between two values and branches into an if path (true) or an else path (false).Operators: eq, ne, gt, lt, gte, lte, is_after, is_before, contains, starts_with, ends_with, is_empty, is_not_empty, is_null, is_not_nullThe node produces two outgoing edges: if (condition is true) and else (condition is false).
Uses the LLM to classify a value into one of the categories you define, then routes the flow to the matching branch.Each category in values produces its own outgoing edge from the node.
Joins multiple incoming branches back into a single path. No configuration fields. Connect the outputs of Condition or Categorize branches into a Merge node to continue with shared logic.
Executes another logic flow and passes variables into it. Use this to keep flows modular and reuse logic across multiple agents or flows.
Sets one or more named variables with literal values. Variables set here are available everywhere in the current call, in both logic flows and the conversation flow.
Maps input data into a new JSON structure. Use this to reshape a webhook or integration response before passing it to the next node.
Uses the LLM to pull one or more typed fields out of the conversation transcript into named variables. Unlike Extract Info (which asks the caller a direct question), this node reads what has already been said.
Makes an HTTP request to an external URL. Can run synchronously (flow waits for response) or asynchronously (agent keeps talking while the request runs in the background).
Invokes an operation from a connected integration (HubSpot, Stripe, Resend, etc.). Integrations are configured at the organization level under Settings → Integrations.
Sends an SMS to one or more recipients.
Sends an email via your connected MailerSend integration.
Sends a message via your connected Clerk.chat integration.
Opens an SMS channel with the caller mid-call so they can exchange information by text rather than voice. Particularly useful for sensitive or precise input like credit card numbers, addresses, or confirmation codes that are difficult to capture reliably over audio.
Applies one or more tags to the current call. Tags appear in call history and can be used for filtering, reporting, or routing.