This topic introduces the basic concepts and properties of flows.

Basic concepts

A flow is a series of sequential steps. A flow defines the business logic and contains all the information about the sequential steps. For example, an order management flow can include steps to create an order, process a payment, reserve a resource, and notify a user. After you create a flow, you can execute the flow multiple times. You can provide different inputs for each execution. For example, an order management flow is executed each time a user places an order. Order information is used as the input of the execution.


When you create a flow, you must configure the following parameters:

  • Name: the name of the flow. The name must be unique in a region and meet the following requirements:
    • The name can contain letters, digits, underscores (_), and hyphens (-).
    • The name must start with a letter or an underscore (_).
    • The name is case-sensitive.
    • The name must be 1 to 128 characters in length.
  • Description: The description of the flow. The description must be 1 to 128 characters in length.
  • Type: The type of the flow. The flow definition language (FDL) is supported.
  • Definition: the definition of the flow. For more information, see Flow definition language.
  • Optional:RoleArn: the role to be assumed by Serverless Workflow. Serverless workflow is granted the permissions required to execute a task. If the task requires access to Function Compute, Serverless workflow assumes the role (AssumeRole) to call functions in Function Compute. For more information about how to create a role, see Create execution roles.

After a flow is created, you can modify all the properties of the flow except the flow name.