Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.xpander.ai/llms.txt

Use this file to discover all available pages before exploring further.

Flow control nodes handle branching, validation, gating, and parallel execution. Five types are available.
Flow control vs. Classifier: The Classifier node (covered in Agent Nodes) also branches a workflow, but it uses an LLM to understand the meaning of the input. Condition nodes branch on explicit data values. Use Classifiers for intent-based routing, Conditions for value-based branching.

Branch on data values with Conditions

The Condition node splits your workflow into two paths based on a test you define: an IF branch for inputs that match, and an ELSE branch for everything that doesn’t.

Configure a Condition node

The Condition node opens as a floating dialog instead of a side panel.
Condition node floating dialog
Configuration happens in two steps. Step 1 asks you to define the condition. Pick a Condition Type from the dropdown and enter a Term (the value to test against). The term field supports {{variable}} placeholders to reference data from previous workflow steps. Click Next once defined. Step 2 asks you to select the target node type for the IF branch, the node that runs when the condition matches. The ELSE branch connects to whatever comes next in the default flow. Once placed on the canvas, clicking the IF branch opens an Edit Condition panel where you can change the condition type and term without rebuilding the node.

The nine condition operators

CategoryOperatorWhat it checks
Text matchingContainsInput includes the term as a substring
RegexInput matches a regular expression pattern
ComparisonEqual (==)Input exactly matches the term
Not Equal (!=)Input does not match the term
Greater Than (>)Input is numerically greater than the term
Less Than (<)Input is numerically less than the term
Greater or Equal (>=)Input is greater than or equal to the term
Less or Equal (<=)Input is less than or equal to the term
ExistenceNot EmptyInput has any value (term is not required)
Contains is the default. Switch to comparison operators for numeric thresholds, or use Regex for pattern matching more expressive than simple substring search.

Validate output with Guardrails

The Guardrail node uses an AI judge to evaluate upstream output against criteria you define, then routes it down a Pass or Fail branch. Unlike the Condition node, which tests against fixed values, the Guardrail evaluates quality and correctness using natural language criteria.

Configure a Guardrail node

The Guardrail opens as a side panel with two fixed groups: Pass (green checkmark) and Fail (red circle). You cannot add or remove groups. Every Guardrail is a binary pass/fail gate. For each group, write Evaluation Criteria in natural language:
Pass criteria:
The response includes a specific dollar amount, references the
customer's account ID, and does not promise anything outside
our standard refund policy.

Fail criteria:
The response is vague about the refund amount, references a
different customer's information, or makes commitments that
exceed our refund policy limits.
The Auto-extract relevant data checkbox (on by default) tells the Guardrail to pull out the data points that informed its decision and pass them downstream. The next node receives a focused extraction, not the raw input.
Guardrail node configuration panel
The Guardrail has its own LLM settings, independent of any agent in your workflow. You can choose the provider and model. A capable model like Claude Sonnet 4.6 works well for nuanced quality checks, while simpler pass/fail criteria might work with a lighter model. Use the Additional instructions field and + Add example button to provide sample inputs with expected outcomes, which improves evaluation accuracy on edge cases.

Pause for human approval with Wait

The Wait node pauses the workflow and sends a notification to a person (or group) to approve or deny before execution continues. The recipient gets an email with context and two buttons: Approve (resumes the workflow) and Deny (stops it).
Wait node configuration panel
The notification defaults to Email. Add recipients, customize the subject and body (using {title} and {content} placeholders for workflow context, or {{variable}} for data from previous steps), and optionally relabel the approve/deny buttons. A Webhook notification option is also available for routing approvals to your own system (an internal dashboard, a ticketing tool, or a custom approval system) instead of email.

Stop the workflow early with Send to End

Send to End node panel
The Send to End node immediately finishes the workflow from wherever it sits in the flow. The only configuration is an optional Finish Message that becomes the workflow’s output. If left empty, the workflow returns whatever the previous step produced. If your END block has output nodes configured (a Summarizer or JSON output), the workflow routes through those nodes before finishing. Send to End triggers the endgame but respects the output pipeline you’ve defined.

Run steps concurrently with Parallel

The Parallel node runs its child nodes concurrently and combines their results before passing them to the next step. Click + Add node to add branches. All branches receive the same input and execute simultaneously.
Parallel node configuration panel

Choosing the right flow control node

NodeWhat it doesDecision made byBranches
ConditionSplits flow based on a data testDeterministic operator (contains, equals, greater than, etc.)IF / ELSE
GuardrailValidates output qualityAI judge evaluating natural language criteriaPass / Fail
WaitPauses for human reviewA person clicking Approve or DenyContinues or stops
Send to EndTerminates the workflow earlyPlacement in the flow (always fires)None (workflow ends)
ParallelRuns steps concurrentlyPlacement in the flow (always fires)N concurrent branches
Conditions test data values (“is this number above 500?”). Guardrails evaluate quality (“does this response meet our standards?”). If you can write the check as a comparison operator, use a Condition. If you need an LLM to judge whether something passes, use a Guardrail. Wait and Guardrail both act as gates, but with different reviewers. A Guardrail uses AI for fast, consistent checks you can describe in criteria. A Wait node requires a human, necessary when regulations, contracts, or organizational policy demand a person sign off.

What’s next

Agentic Context

Persist state across workflow runs for delta detection and cross-run intelligence.

Versioning & Rollback

Save immutable snapshots of your workflow and roll back to previous versions.