Operation State

Parameter
Description
Type
Required

name

Unique State name. Must follow the Serverless Workflow Naming Convention

string

yes

type

State type

string

yes

actionMode

Should actions be performed sequentially or in parallel. Default is sequential

enum

no

actions

Actions to be performed

array

yes

timeouts

State specific timeout settings

object

no

stateDataFilter

State data filter

object

no

onErrors

States error handling and retries definitions

array

no

transition

Next transition of the workflow after all the actions have been performed

string or object

yes (if end is not defined)

compensatedBy

Unique name of a workflow state which is responsible for compensation of this state

string

no

usedForCompensation

If true, this state is used to compensate another state. Default is false

boolean

no

metadata

Metadata information

object

no

end

Is this state an end state

boolean or object

yes (if transition is not defined)

Click to view example definition

Example:

JSON
YAML
{
    "name": "reject-application",
    "type": "operation",
    "actionMode": "sequential",
    "actions": [
        {
            "functionRef": {
                "refName": "send-rejection-email-function",
                "arguments": {
                    "customer": "${ .customer }"
                }
            }
        }
    ],
    "end": true
}
name: reject-application
type: operation
actionMode: sequential
actions:
- functionRef:
    refName: send-rejection-email-function
    arguments:
      customer: "${ .customer }"
end: true

Operation state defines a set of actions to be performed in sequence or in parallel. Once all actions have been performed, a transition to another state can occur.

The timeouts property can be used to define state specific timeout settings. Operation states can define the stateExecTimeout and actionExecTimeout settings. For more information on Workflow timeouts reference the Workflow Timeouts section.

Last updated