---
description: executes boolean clauses
---

# Switch

<img src="https://processmix.com/wp-content/uploads/2023/01/Property-1Switch.png" alt="" data-size="line"> Facilitates conditional branching and decision-making within flows based on specified conditions. It allows users to define conditional expressions or predicates to evaluate data or flow state, directing flow execution along different paths accordingly. The switch node enables users to implement dynamic and adaptive flow by branching based on runtime conditions.

The main difference between switch and [if](if) node is the ability to create multiple routes.

***

## Properties

### Common

<mark style="color:purple;">**Name**</mark> - refers to the unique identifier or label assigned to a node within a flow.

<table><thead><tr><th width="139">Type</th><th>Restrictions</th></tr></thead><tbody><tr><td>input Text</td><td><ul><li>must consist of letters (A-Z or a-z), digits (0-9), underscores (_), or dollar signs ($). However, a class name cannot start with a digit and dollar sign ($)</li><li>Unique per flow</li><li>Mandatory</li><li>Min length: 1</li><li>Max length: 255</li><li><a href="../../../appendix/reserved-words">Reserved words</a></li></ul></td></tr></tbody></table>

<mark style="color:purple;">**Description**</mark> - provides a textual description or additional information about a  node within a flow. Unlike the name property, which serves as a unique identifier or label for the node, the description property offers supplementary details that help to clarify the purpose, functionality, or behavior of the node.

<table><thead><tr><th width="144">Type</th><th>Restrictions</th></tr></thead><tbody><tr><td>Input Text</td><td><ul><li>Max length: 5000</li></ul></td></tr></tbody></table>

### Specific

<mark style="color:purple;">**Condition**</mark> - a condition that will determine the further progress of the flow. Unlike IF, there can be several branches here, further execution will follow the first branch that meets the specified condition. The [Expression Editor](../../expressions) is used to add and edit conditions. There can be any number of label-condition blocks, depending on the requirements.

<table><thead><tr><th width="144">Type</th><th>Restrictions</th></tr></thead><tbody><tr><td>Boolean <a href="../../expressions">Expression</a></td><td><ul><li>Mandatory</li></ul></td></tr></tbody></table>

***

## Result

No new variables

***

## Connections

| Type                                        | Min count | Max count |
| ------------------------------------------- | --------- | --------- |
| in                                          | 1         | \*        |
| out (multiple, depends on conditions count) | 1         | \*        |
