State evaluation constraints
State evaluation constraints determine whether a record's current workflow state matches specified criteria. Use these constraints to control workflow behavior based on state conditions.
State-based constraints
| Constraint | Is true when... | Required sub-elements |
|---|---|---|
| State Is | The current record's state matches the specified state. | State: The name of the workflow state to compare against the record's state. |
| State Is Not | The current record's state does not match the specified state. | State: The name of the workflow state to compare against the record's state. |
| State Is One Of | The current record's state matches a state in the list of specified states. | States: The list of states to compare against the record's state. |
| State Is Not One Of | The current record's state does not match a state in the list of specified states. | States: The list of states to compare against the record's state. |
State Is / State Is Not
This constraint determines whether the specified state matches the specified value.
Required properties
- Type: Value must be State Is or State Is Not.
- State: The value to compare against the record's current state.
Optional properties
- Ignore Case: Yes or No. Ignore case-sensitivity during the comparison. No is the default behavior when you omit this property. Comparisons are case-sensitive by default.
Evaluation
- True: The record's current state equals the comparison value.
- False: The record's current state doesn't equal the comparison value.
Example
Verify whether the state of the Record field equals Draft.
{
"Type": "State Is",
"State": "Draft",
"States": null,
"Ignore Case": true
}
State Is One Of / State Is Not One Of
This constraint determines whether the specified state matches any of the specified values.
Required properties
- Type: Value must be State Is One Of or State Is Not One Of.
- States: The values to compare against the record's current state.
Optional properties
- Ignore Case: Yes or No. Ignore case-sensitivity during the comparison. No is the default behavior when you omit this property. Comparisons are case-sensitive by default.
Evaluation
- True: The record's current state equals one of the comparison values.
- False: The record's current state doesn't equal one of the comparison values.
Example
Verify whether the state of the Record field equals Draft or Rejected.
{
"Type": "State Is One Of",
"State": null,
"States": ["Draft", "Rejected"],
"Ignore Case": true
}