UiPath Documentation
maestro
latest
false
Maestro user guide

Switch

Switch node for routing flows to multiple paths based on ordered case conditions.

What it does​

Routes a process to one of multiple paths based on ordered conditions. Takes the first match.

When to use this vs Decision​

Use Switch when...Use Decision when...
You have three or more outcomesYou have exactly two outcomes
You're routing by multiple distinct conditionsThe condition is a simple yes/no
You need a default/fallback branch

Configuration reference​

FieldRequiredDefaultDescription
CasesYes2 empty casesOrdered branch list. Each case has a handle label and a JavaScript expression; the first truthy expression is taken.
Include defaultNotrueWhether to add a Default branch that is taken when no case expression matches.

Writing case expressions​

Each case expression uses the same JavaScript environment as the Script and Decision nodes:

// Case 1 — high priority
$vars.ticket1.output.priority === "high"

// Case 2 — medium priority
$vars.ticket1.output.priority === "medium"

// Case 3 — low priority (or use Default to catch everything else)
$vars.ticket1.output.priority === "low"
// Case 1 — high priority
$vars.ticket1.output.priority === "high"

// Case 2 — medium priority
$vars.ticket1.output.priority === "medium"

// Case 3 — low priority (or use Default to catch everything else)
$vars.ticket1.output.priority === "low"

More specific conditions should appear first. A broader condition higher in the list will match before a more specific one below it.

Examples​

Example 1 — Route by HTTP status code​

CaseExpressionBranch
Success$vars.httpRequest1.output.statusCode === 200→ process response
Not Found$vars.httpRequest1.output.statusCode === 404→ handle missing resource
Default(fallback)→ handle unexpected error

Example 2 — Route by string value​

CaseExpressionBranch
Approved$vars.form1.output.status === "approved"→ continue process
Rejected$vars.form1.output.status === "rejected"→ notify rejection
Pending$vars.form1.output.status === "pending"→ wait for review
Default(fallback)→ handle unknown status

Was this page helpful?

Connect

Need help? Support

Want to learn? UiPath Academy

Have questions? UiPath Forum

Stay updated