The directional path of a workflow is designed from a built-in graphical tool called the Workflow Editor. The workflow editor is provided with an expandable, scrollable canvas for creating workflow diagrams and a collapsible stencil panel.

icon on the top-left of the panel. Nodes are workflow elements that define how an asset workflow should be processed. The stencil panel contains various nodes under the Drag & drop nodes tab.
You can add a node to the canvas using a simple drag and drop motion. You can also add a node from the connector by clicking the
icon or the mini stencil view allows users to add nodes in a single right-click. When you add a node to the canvas, a pop-up window opens, where you specify the properties of the node.
The various nodes in the stencil panel are grouped by their usage. Refer to the following pointers to understand the use and setting up of each node:
State Node
The State node lets you add asset states to your workflow.
Select the state from the relevant drop-down. You can have multiple states in a workflow.
The state node has two output ports: Auto and Manual.
Auto Port: Triggers transitions automatically based on rules, conditions, or events.
Manual Port: Requires user intervention to trigger the transition.

Using dual output ports, you can set both automated flows and manual transitions to ensure seamless operation.
Transitions enable you to control state changes in a workflow manually. It can be configured from the manual output port of the State node.
A transition connects the state node to other nodes, such as Condition, Action, or Branch nodes, and controls the execution sequence of workflow.
Manual transitions appear as actionable buttons on the asset details page, allowing technicians to perform the required action.

If the manual transition is executed first, the automated flow will be discarded, and vice versa. These actions will be recorded in the workflow execution log.
Use case for user transitions is available here.
Draw a connector from the manual output port of the State node.
Click
.
Provide a name and description for the transition.
Click Save or Save and Edit.

Define Transition Rules
Clicking Save and Edit directs you to the Edit Transition form.
Alternatively, you can click the transition to edit it.
You can set transition rules in three different sections: Scope, Mandatory Rules, and Actions.
|
Fields |
Explanation |
|
Scope (not applicable for the Start node) |
Configure who can perform the transition or when the transition can be performed. Allowed Users - Add users (by role) who can perform the transition. If the user scope is not configured, the transition will be accessible to all stakeholders with edit permissions. Criteria - Set the condition to execute the transition. Use the Edit or Delete icon to modify or remove the criteria. |
|
Mandatory Rules |
Mandate fields and rules to control the execution of the transition. When the transition is executed, the mandatory rules are checked first. If any required conditions are not met, the user is prompted to address them. After all mandatory rules are satisfied, the mandatory fields are displayed for user input. Fields - Add fields that need to be filled by technicians to complete the transition. |
|
Action Rules |
Execute actions when a user initiates the transition, you can configure multiple actions at different levels: Pre-Action Rules and Post-Action Rules.
More info on configuring pre or post-action rules is available here. |
Click Save.

Condition Nodes
Checks whether configured conditions are satisfied and moves the asset to the next states.
IF - Checks if the specified conditions are met before the asset proceeds to the next state.
|
Attributes |
Description |
|
Condition Name* |
Enter a name for the If node |
|
If Condition* |
Define conditions based on asset details or custom functions. Based on Conditions - Specify the condition by selecting the column and criteria values. Click Drag a criteria over the indentation space below another criteria to add it as sub-criteria. Criteria containing sub-criteria are denoted with a drop-down icon. Under each criteria, you can add up to 100 sub-criteria.
Using Custom Functions - Decide the path of workflow based on a custom function. Ensure the custom function returns a Boolean value. Select a custom function to associate with the node. You can also create a new custom function from scratch. Click here to learn how to create a custom function as condition. |
*mandatory attributes
Click Save.

The IF condition node is rendered with a single input port and two output ports (Yes/No).

Wait For - Pauses the asset workflow indefinitely until specified conditions are met.
|
Attributes |
Description |
|
Condition Name* |
Enter a name for the Wait for node. |
|
Wait for Condition* |
Define conditions based on asset details or custom functions. Based on Conditions - Specify the condition by selecting the column and criteria values. Click Drag a criteria over the indentation space below another criteria to add it as sub-criteria. Criteria containing sub-criteria are denoted with a drop-down icon. Under each criteria, you can add up to 100 sub-criteria. Using Custom Functions - Decide the path of workflow based on a custom function. Ensure the custom function returns a Boolean value. Select a custom function to associate with the node. You can also create a new custom function from scratch. Click here to learn how to create a custom function as condition. |
* mandatory attributes
Click Save.

The Wait For node is rendered with a single input and output ports.

Switch - A multi-way branch node that checks the value in the specified field and applies the workflow path based on the field value.
|
Attributes |
Description |
|
Select Field* |
Select the field to apply the switch condition. |
|
Select Options* |
Select the options to be displayed under the chosen field. You can configure different workflow paths for each field option. |
|
Include Default Option |
Select Include Default Option to a configure workflow path when the field values do not match any of the selected values. You can rename the default option as needed. |
* mandatory attributes
Click Save.

Switch node is rendered with a single input port and N number of output ports based on the values selected.

Actions Nodes
Automates actions, such as Notifications, Field Updates, Webhooks, Custom Functions, during the workflow execution.
Notification - Send a custom notification when the asset transitions between states.
Choose an existing custom notification from the left pane and click Select. Click
to edit the selected notification details.

You can also create a new notification using New Notification option.
|
Fields |
Description |
|
Notification Name* |
Add a name to identify the notification. |
|
Description |
Describe the notification usage. |
|
Notify* |
Select the recipients to whom the notification must be sent: users, asset fields. Type the user name and select the user from the drop-down. |
|
Subject* |
Enter the subject and message to be sent in the notification email. |
|
Message |
* mandatory fields
You can also refer this page to learn how to compile custom notifications for workflows. Click Save or Save and Select.

The notification node is rendered with a single input port and output port.

Field Update - Update field values before the asset moves into the next state.
Choose an existing field update from the left pane and click Select. Click
to edit the selected configuration.
Use New Field Update option to create a new field update configuration.
|
Fields |
Description |
|
Field Update Name |
Enter a name to identify the field update configuration. |
|
Description |
Describe the field update usage. |
|
Fields* |
Select the field and the value that must be applied during the field update. You can configure update for multiple fields using the |
* mandatory fields
You can also refer this page to learn how to configure field update action for workflows. Click Save or Save and Select.
Choose Setup alternate path on error to configure an alternate workflow if an error is thrown during field update.

Field update node is rendered with a single input port. The output ports vary based on whether the alternate path is configured.
Custom Function - Implement any automated action using custom functions with Boolean return type. Based on the return type, the workflow will proceed accordingly.
Choose an existing custom function from the left pane and click Select. Click
to edit the selected custom function.

Use New Custom Function option to compile your own custom function. Ensure the custom function returns a Boolean value. Click here to learn how to compile custom functions for workflows. Click Save or Save and Select.
Choose Setup Alternate path on error to configure an alternate workflow if an error is thrown while executing the custom function.
Custom function node is rendered with a single input port. The output ports vary based on whether an alternate path is set up.

Webhook - Send data from the service desk to third-party applications or external services.
Choose an existing webhook from the left pane and click Select. Click
to edit the selected webhook.

Use New Webhook option to create a webhook. Click here to learn how to create webhooks. Click Save or Save and Select.

Webhook node is rendered with a single input and output port.

Branch Node
Branch nodes are used to create sub-flows within the workflow. You can execute multiple branches in parallel.
Fork - Split the workflow into multiple paths. You can execute multiple forked paths in parallel, provided the conditions present in the nodes in each path are satisfied.
To create a fork in the workflow,
Drag the fork node to the canvas.
Specify a name for the node.
Click Save.
Fork node is rendered with a single input and output port.

Join - Merge parallel paths forked earlier. The workflow resumes the sequential flow.
To join the workflow,
Drag the join node to the canvas.
Specify a name for the node.
Choose when to join the forked pathways and join the flow. You can join the flow after all forked pathways are completed or if any one of the pathway is completed.
Click Save.
Join node is rendered with two input and output ports (Completed/Failed).

To establish a connection between nodes, connect the output port of a node to the input port of another node.
Output nodes are marked in orange color.
Input nodes are marked in green by default. While attempting to connect an output node, the input nodes are highlighted in yellow.
Refer to the following screen video for a better understanding:

Node Actions - Hover over a node and click
to perform the following actions:
Edit or delete a node in the workflow. The default stages cannot be deleted.
Create duplicates of a node added in the workflow. Default nodes cannot be duplicated.
The orientation of the input and output ports in the following nodes can be changed as needed:
State nodes
Switch nodes
All action nodes
Fork node

Connector Actions - Hover over a connector to perform the following actions:
View the source nodes, target nodes, and vertexes.
Add vertexes by clicking on the connecter.
Click
to remove a vertex.
Right click on the connector and select Delete to remove a connector.
Reposition Nodes/Connectors - Drag a node or connector to reposition it on the canvas as needed. The source or target node of a connector can be changed by dragging the input or output vertexes.
View/Modify Workflow Details
In the stencil panel, go to the Details tab to view the workflow details. You can modify the workflow name and description if needed.

Alternatively, you can also click the workflow name or description in the header to modify them.
Workflow Actions
You can manage the space on your editor canvas using the following functionalities:
Click the
icon on top of the stencil panel to expand or collapse stencil.

Click the cursor on the canvas and drag to pan the graph on the screen.
Use the zoom handle on the left corner of the canvas to view the graph in a large/small scaled view. You can reset the zoom using
icon.
To manage the workflow and the data, you can:
Click
on the header to select multiple nodes and reposition them in the canvas.

Reset the workflow to its default state by clicking
on the header. If the workflow was previously saved, it will be restored to its last updated state.
Use the
or
icons to undo/redo any actions or transitions on the workflow data.
On saved workflows, you can:
Click
to export saved workflows as PDF documents.
View a log of all operations performed on the workflow by clicking
on the header.
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy84NjYvMjUxNC9ja2ZpbmRlci9pbWFnZXMvcXUvMjAyNS9pbWFnZSg0OSkucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzY1ODIyNjY4fX19XX0_&Signature=B38oKb-O8LdcymQ8vqfA9TP7cnRNgXTYDQgHnHRCIUFUGOjTpmqrP7t8tXZohQNBKNsJvXqCthhg3cJkXR1qexZ6pj2tzQqpNcFsoz73RbuE8K9S8nT9rAnZE8kR1ZHvjGy21zBTboZ9cHP72-sKbVM5AfilzpdiKpf05QLoYN-kEE415aPlBShFtcDQ7bsnK8xgbyYYbNblI3yQC1vVa6s-lWgLBmFI~l-MNWo4zZmxFBpbST~afrjj2t7C-DG0B2B4wzNbvqOgjupOqqdzVwH9pfWoTfeDmlXgdUlYcl5~Ed0nEmlRYW2SzeSNOPbiQJkWu7SxLfvSHldS5vdvHg__&Key-Pair-Id=K2TK3EG287XSFC)
Module admins can export historical records in the CSV format, including node edits. To do that,
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy84NjYvMjUxNC9ja2ZpbmRlci9pbWFnZXMvcXUvMjAyNS9pbWFnZSg1MCkucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzY1ODIyNjY4fX19XX0_&Signature=A5cc3NL8R6WEkE1PNyr~b5hX391uhBAsNhhs5SlmMU~2rPZoBDvbwPMv1pQuzcIiqrSavXATExAZFLdPH6RYGluF85PMkyFkhjKIAJNOOhDi~EGvsIyFl4unRhXVd6MSBDmslucbFndf2D61o3hMFYpatJkZRGDrIayEIxaDI-j2W38a394uQZsVZ2afilwZfkrSShFzdaa0gqBMFGuXZkF7UOBot4BvwpPx5mQep02jfCyKd5CJGLLbEIbQskXSI-a0aSWR6YyXCkBqMpiys9Yw0lVDP8eE6VJWeR2YnyfAAARxI89OqfH3c4~UZU-xz7Jt8zys0qWwHb0Ku~-GxA__&Key-Pair-Id=K2TK3EG287XSFC)
.png?Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cHM6Ly9kemY4dnF2MjRlcWhnLmNsb3VkZnJvbnQubmV0L3VzZXJmaWxlcy84NjYvMjUxNC9ja2ZpbmRlci9pbWFnZXMvcXUvMjAyNS9pbWFnZSg1MSkucG5nIiwiQ29uZGl0aW9uIjp7IkRhdGVMZXNzVGhhbiI6eyJBV1M6RXBvY2hUaW1lIjoxNzY1ODIyNjY4fX19XX0_&Signature=KqxMYmK0FjLgFTHcO8VS-0IeVcX~xMOdGhdvU3s9dQg5bcUv21TprrcdtexA85pAiXAEVfXFOMRMsXShFYqFauvJiSzeX7MqFfTruqXGrw7LVJGMeJcBRzyIvPPmv78hluNKq2ux-KufrLFnSBDu3gtVMq3ppc5HkRaIfJFmIUnMqNcxOP3KFgQkIRSzE1pIX8me-p6WchKq1LCRADVzKC9z6KgUMXhN9RnGqdxmLuQ8dyG-149pQiKk5ulXJ~b3y6QekPgxkrHskfUme98WJ5yZsZBkoTEk5y1gyybCQXleDplEwRrGGWNcrEfCrU27pNSt0QLML~EOrgc9-rUtsA__&Key-Pair-Id=K2TK3EG287XSFC)
After configuring the workflow, click Save or Save and Close on the workflow footer. ServiceDesk Plus will automatically validate your workflow before saving it. Descriptive warning messages are displayed to notify you if the workflow configuration contains errors.
Workflows are validated based on the following rules:
Each node must have at least one incoming and outgoing connector.
Each connector should be linked at both ends.
There must be a valid path from Start to End.
The flow should not be recursive.
Switch node should have at least one option.
Configuring both Yes and No options in the IF node is not mandatory.
If a configuration used in a workflow is updated in any admin configurations, the workflow becomes invalidated. Invalidated workflows are indicated with a
icon in the workflow list view and Assets tab. You cannot perform any operations on invalidated workflows, except edit or delete.

Under Pre-Action Rules/Post-Action Rules, click Add Rule Set.
Specify conditions.
|
Field |
Description |
|
Apply this rule on [module] |
Choose the criteria that must be met for the rule to apply. Based on conditions - Define the criteria by selecting the column, operator, and value. Use the
Using Custom Functions
Without condition - Apply the rule to all records in the [module]. |
Configure actions. Choose the actions to be performed on [module] when the transition is initiated.
Execute custom actions
Pre-action rules: Update field value or Run a custom function



Click Done.