Flow definitions define a series of steps that designate the actions of a workflow. The flow execution endpoint references a flow definition resource that specifies an initial step and all additional steps required to complete the flow execution. For more information about flow executions, see Flow Executions.

Flow definitions include step definitions that define an operational step to perform a specific work action, which generates output that is processed by the flow. A flow step can also designate flow-control actions that branch or end the flow. For more information, see Flow Definition Steps.

The flow definitions API provides operations to create, read, update, and delete flow definitions. It also provides endpoints to get and enhance flow definition step schema metadata. For information about flow definition step schema metadata, see Flow Definition Steps.

Flow definitions data model

Property Description
description A string that specifies the description of the flow definition.
enabled A boolean that specifies whether the flow is enabled. Disabled flows cannot be executed. This is a required property.
environment.id A string that specifies the environment ID associated with this flow definition resource.
id A string that specifies the resource’s unique identifier.
name A string that specifies the flow definition name, which must be provided and must be unique within an environment.
trigger A predefined trigger that can initiate the flow definition execution. The trigger marks the step definition from which the flow starts.
trigger.configuration An object that specifies the trigger configuration data.
trigger.inputs An object that specifies the trigger-specific inputs.
trigger.next A string that specifies the first step definition to execute.
trigger.type A string that specifies the type of trigger. Options are EXPERIENCE and SIGN_ON_POLICY. For more information about trigger types, see READ Trigger Type Metadata.
stepDefinitions A map that specifies the step definitions available in the flow definition, differentiated by a human-readable identifier as the key. The key must be a string with unicode letters, numeric characters, underscore, and dash: ^[\p{L}\p{N}_-]+$. This key is used in variable paths to reference outputs from the step at runtime (for example, ${steps.login.outputs.something}).

Response codes

Code Message
200 Successful operation.
201 Successfully created.
204 Successfully removed. No content.
400 The request could not be completed.
401 You do not have access to this resource.
403 You do not have permissions or are not licensed to make this request.
404 The requested resource was not found.