# Decision models
Decision models are scalable and reusable assets that streamline and centralize complex conditional business logic. Decision models allow teams to improve consistency and reduce maintenance by building logic once and reusing it across multiple recipes and projects.
EARLY ACCESS FEATURE
Decision models are in early access. Decision models are under active development and may change. To join the early access program, contact your Customer Success Manager and ask them to add you to the early adopters list.
You can call a decision model in a recipe using the Decision Models by Workato connector's Make decision action.
Decision models include the following components:
- An input node that defines the input schema for the model and the Make decision action.
- Decision table nodes that use business rules to evaluate fields.
- Conditional branches that direct the logic flow between nodes.
- A Model fields sidebar that defines the data to move between connected decision tables.
- Output nodes that define the fields to return in the Make decision action.
Refer to the following sections for more information:
- Decision tables
- Create a decision model
- Decision Models by Workato connector
- Role-based access control
# Decision tables
Decision tables use business logic to evaluate fields from an input node or the outcome of a different decision table. Each row in a decision table defines a set of conditions and outcomes. Decision tables evaluate fields against the conditions in each row sequentially. Field evaluation begins at the top of the table and progresses down to the bottom of the table. The evaluation stops and the table returns that row's Outcome values if the input values meet every condition in the row. You can configure a Default outcome to return for each output field if the input values don't match the conditions in any row. You can use a table's outcomes as inputs for the next node.
Example decision table for routing marketing leads
# Limitations
Each decision table supports a maximum 2,000 rows, 20 input columns, and 20 output columns per table.
# Available operators
The operators available for a condition vary depending on the column's data type.
String
The following operators are available for the String data type:
- Any
- Contains
- Does not contain
- Starts with
- Does not start with
- Ends with
- Does not end with
- Equals
- Does not equal
- Is not empty
- Is empty
Integer
The following operators are available for the Integer data type:
- Any
- Equals
- Does not equal
- Greater than
- Greater than or equal to
- Less than
- Less than or equal to
- Is not empty
- Is empty
- Is between
- Is not between
Decimal
The following operators are available for the Decimal data type:
- Any
- Equals
- Does not equal
- Greater than
- Greater than or equal to
- Less than
- Less than or equal to
- Is not empty
- Is empty
- Is between
- Is not between
Boolean
The following operators are available for the Boolean data type:
- Any
- Is true
- Is false
Date
The following operators are available for the Date data type:
- Any
- Equals
- Does not equal
- Is before
- Is after
- Is on or before
- Is on or after
- Is not empty
- Is empty
- Is between
- Is not between
Date time
The following operators are available for the Date time data type:
- Any
- Equals
- Does not equal
- Is before
- Is after
- Is on or before
- Is on or after
- Is not empty
- Is empty
- Is between
- Is not between
# Create a decision model
Complete the following steps to create a decision model:
Create a new project or select an existing project.
Click Create.
Select Decision model.
Select Decision model
Enter a Decision model name.
Enter a Decision model name
Use the Location drop-down menu to select the project where you plan to store the decision model.
Click Start building. The decision model builder opens.
Refer to the Configure a decision model section to create input and output fields, then configure the decision table node.
# Configure a decision model
You can access decision models from Assets > Decision models or from within a specific project.
Refer to the following guides to configure a decision model:
Create an input field
Input fields define the data that enters your model. You can use these fields as inputs in any node.
Complete the following steps to create an input field:
Select a decision model and click Edit model.
Click Edit model
Select the Input node you plan to configure.
Click + Add field if there are no existing fields. Otherwise, click + (Create field).
Create a new field
Enter a Field name and Field label that identifies the field.
New field configuration
Select the field's Data type. Refer to the Available operators section to see the condition operators each data type supports.
Optional. Enter a Hint that explains the field.
Optional. Click the Set as required toggle to make the field mandatory.
Click Create field.
Click Save.
Delete an input field
Note: You can't delete an input field that's in use. You must remove the field from all nodes before you can delete it.
Complete the following steps to delete an input field:
Select a decision model and click Edit model.
Click Edit model
Select the Input node you plan to configure.
Hover over the field you plan to delete.
Click Delete field.
Click Delete field
Click Delete in the confirmation modal.
Click Save.
Create a model field
Model fields define the data to move between connected decision tables. Complete the following steps to create a model field:
Select a decision model and click Edit model.
Click Edit model
The Model fields sidebar displays by default when a node isn't selected.
The Model fields sidebar
Click Create field.
Enter a Field name and Field label that identifies the field.
Select the field's Data type. Refer to the Available operators section to see the condition operators each data type supports.
Optional. Enter a Hint that explains the field.
Click Create field. You now can add this field to the outcome of a decision table.
Configure output fields
Complete the following steps to configure output fields:
Select a decision model and click Edit model.
Click Edit model
Select the Output node you plan to configure.
Click Select fields.
Select which Input and Model fields to return from connected nodes.
Click Apply changes.
Create conditional branches
Complete the following steps to add conditional branches to a decision model:
Select a decision model and click Edit model.
Click Edit model
Go to the Toolbar and drag a Conditional branch node into the model builder. You can click x to collapse the toolbar or + to expand it.
Click and drag between edges to configure the order of nodes. You can hover over a node connection and click Delete edge to remove it.
Add the conditional branch to the model flow
Refer to the If conditions documentation to configure the node.
Create a Decision table node
Complete the following steps to create a Decision table node:
Select a decision model and click Edit model.
Click Edit model
Go to the Toolbar and drag a Decision table node into the model builder. You can click x to collapse the toolbar or + to expand it.
Click and drag between edges to configure the order of nodes. You can hover over a node connection and click Delete edge to remove it.
Add the node to the model flow
Refer to the Configure a Decision table node section to configure the node.
Configure a Decision table node
Complete the following steps to configure a Decision table node:
Select a decision model and click Edit model.
Click Edit model
Select the Decision table node you plan to configure.
Optional. Edit the automatically generated table Name.
Decision model node configuration
Optional. Enter a Description for the table.
Click Save to save your changes or click Configure table to open the decision table. The decision table must have at least one input and output field before you can open it.
Configure a decision table rule
Complete the following steps to configure a decision table rule:
Select a decision model and click Edit model.
Click Edit model
Select the Decision table node you plan to configure.
Decision model node configuration
Click Configure table to open the decision table. The decision table must have at least one input and output field before you can open it.
Create a new rule using one of the following methods:
- Click +.
- Press
ShiftandEnter. - Press
Ctrland click on a row's number, then click Insert rule above or Insert rule below.
Create a new rule
Optional. Enter a name for the rule in the Rule name column.
Complete the following steps to configure each cell in the Conditions section:
Select the cell you plan to configure.
Select an operator from the drop-down menu. Refer to the Available operators section to see the operators available for each data type. Cells default to the any operator, which matches any inputs provided.
Select an operator from the drop-down menu
Enter a value to compare against the input using the operator.
Enter an output value for each cell in the Outcomes section.
Optional. Enter a Default outcome to return for each output field if no rules match the inputs provided.
Enter a Default outcome for each output field
# Decision Models by Workato connector
The Decision Models by Workato connector allows you to integrate decision models into your recipes.
# Make decision action
The Make decision action evaluates inputs using your selected decision model.
# Input
| Input field | Description |
|---|---|
| Model name | Select the model to call. |
| Input values | Provide values for the model's input fields. |
# Output
| Output field | Description |
|---|---|
| Output | Contains the outcome values defined in the first row that met all conditions. |
| Visited | Contains information about the decision process such as the Input provided by the recipe and the decision model's ID. |
# Role-based access control
You can configure the following decision model permissions using collaborator and project roles:
Full access
Grants all decision model permissions.
View
View decision models and decision tables.
Edit
Edit decision models and decision tables.
Create
Create decision models and decision tables.
Delete
Delete decision models and decision tables.
Workato's default system roles provide the following permissions:
Last updated: 12/18/2025, 7:15:35 PM