Creates a flow.
Operation description
Operation description
The number of flows that each user can create is subject to resource limits. For more information, see Limits. If you have special requirements, submit a ticket to request an adjustment.
Flows are distinguished by name at the user level. Flows with the same name cannot exist under a single account.
Try it now
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
fnf:CreateFlow |
create |
*Flow
|
None | None |
Request parameters
|
Parameter |
Type |
Required |
Description |
Example |
| Name |
string |
Yes |
The name of the flow. The name must be unique within the same region and cannot be modified after creation. Valid values:
|
my_flow_name |
| Definition |
string |
Yes |
The definition of the flow, which follows the Flow Definition Language (FDL) syntax standard. For forward compatibility, the system supports two flow definition specifications. Note
In the preceding flow definition examples, Name: my_flow_name specifies the flow name, which must be consistent with the Name request parameter. |
Legacy: " type: flow version: v1 name: my_flow_name steps: - type: pass name: mypass " Latest: " Type: StateMachine SpecVersion: v1 Name: my_flow_name StartAt: my_state States: - Type: Pass Name: my_state End: true " |
| Description |
string |
Yes |
The description of the flow. |
my test flow |
| Type |
string |
Yes |
The type of the flow. Valid value: FDL. Valid values:
|
FDL |
| RoleArn |
string |
No |
The resource descriptor of the authorization role on which the flow execution depends. When the flow is executed, CloudFlow assumes this role to operate related flow resources. |
acs:ram:${region}:${accountID}:${role} |
| ExternalStorageLocation |
string |
No |
The external storage location. |
/path |
| ExecutionMode |
string |
No |
The execution mode. Valid values: Express and Standard. For forward compatibility, an empty string is equivalent to the Standard execution mode. Valid values:
|
Standard |
| Environment |
object |
No |
The environment context that can be accessed when you execute the flow. |
|
| Variables |
array<object> |
No |
The list of environment variables that can be accessed during flow execution. |
|
|
object |
No |
The list of variables that can be accessed during flow execution. |
||
| Name |
string |
No |
The name of the variable. |
key |
| Value |
string |
No |
The value of the variable. |
value |
| Description |
string |
No |
The description of the variable. |
description |
| ResourceGroupId |
string |
No |
The ID of the resource group. |
Response elements
|
Element |
Type |
Description |
Example |
|
object |
The response data. |
||
| Type |
string |
The type of the flow. Valid values:
|
FDL |
| Definition |
string |
The definition of the flow. For forward compatibility, the system supports two flow definition specifications. |
Legacy: "type: flow\nversion: v1\nname: my_flow_name\nsteps:\n - type: pass\n name: mypass" Latest: "Type: StateMachine\nSpecVersion: v1\nName: my_flow_name\nStartAt: my_state\nStates:\n - Type: Pass\n Name: my_state\n End: true" |
| RoleArn |
string |
The resource descriptor of the authorization role on which the flow execution depends. When the flow is executed, CloudFlow assumes this role to operate related flow resources. |
acs:ram:${region}:${accountID}:${role} |
| RequestId |
string |
The request ID. CloudFlow returns a request ID whenever an HTTP status code is returned. |
testRequestID |
| Description |
string |
The description of the flow. |
my test flow |
| Name |
string |
The name of the flow. |
my_flow_name |
| CreatedTime |
string |
The time when the flow was created. The time is displayed in UTC and follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss.sssZ format. |
2019-01-01T01:01:01.001Z |
| LastModifiedTime |
string |
The time when the flow was last modified. The time is displayed in UTC and follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss.sssZ format. |
2019-01-01T01:01:01.001Z |
| Id |
string |
The unique identifier of the flow. |
e589e092-e2c0-4dee-b306-3574ddfdddf5**** |
| ExecutionMode |
string |
The execution mode. Valid values: Express and Standard. For forward compatibility, this field may be an empty string, which is equivalent to the Standard mode. |
Standard |
| Environment |
object |
The list of variables that can be accessed during flow execution. |
|
| Variables |
array<object> |
The list of variables that can be accessed during flow execution. |
|
|
object |
The list of variables that can be accessed during flow execution. |
||
| Name |
string |
The name of the variable. |
key |
| Value |
string |
The value of the variable. |
value |
| Description |
string |
The description of the variable. |
description |
| ResourceGroupId |
string |
The ID of the resource group to which the flow belongs. |
rg-xxx |
Examples
Success response
JSON format
{
"Type": "FDL",
"Definition": "Legacy version:\n\"type: flow\\nversion: v1\\nname: my_flow_name\\nsteps:\\n - type: pass\\n name: mypass\"\n\nNew version:\n\"Type: StateMachine\\nSpecVersion: v1\\nName: my_flow_name\\nStartAt: my_state\\nStates:\\n - Type: Pass\\n Name: my_state\\n End: true\"",
"RoleArn": "acs:ram:${region}:${accountID}:${role}",
"RequestId": "testRequestID",
"Description": "my test flow",
"Name": "my_flow_name",
"CreatedTime": "2019-01-01T01:01:01.001Z",
"LastModifiedTime": "2019-01-01T01:01:01.001Z",
"Id": "e589e092-e2c0-4dee-b306-3574ddfdddf5****",
"ExecutionMode": "Standard",
"Environment": {
"Variables": [
{
"Name": "key",
"Value": "value",
"Description": "description"
}
]
},
"ResourceGroupId": "rg-xxx"
}
Error codes
|
HTTP status code |
Error code |
Error message |
Description |
|---|---|---|---|
| 400 | ActionNotSupported | The requested API operation '%s' is incorrect. Please check. | |
| 400 | APIVersionNotSupported | The requested API version '%s' is not supported yet. Please check. | |
| 400 | EntityTooLarge | The payload size exceeds maximum allowed size (%s bytes). | The payload size exceeds maximum allowed size (%s bytes). |
| 400 | InvalidArgument | Parameter error. | Parameter error. |
| 400 | MissingRequiredHeader | The HTTP header '%s' must be specified. | The HTTP header '%s' must be specified. |
| 400 | MissingRequiredParams | The HTTP query '%s' must be specified. | The HTTP query '%s' must be specified. |
| 500 | InternalServerError | An internal error has occurred. Please retry. | An internal error has occurred. Please retry. |
| 403 | AccessDenied | The resources doesn't belong to you. | |
| 403 | InvalidAccessKeyID | The AccessKey ID %s is invalid. | The AccessKey ID %s is invalid. |
| 403 | RequestTimeTooSkewed | The difference between the request time %s and the current time %s is too large. | The difference between the request time %s and the current time %s is too large. |
| 403 | SignatureNotMatch | The request signature we calculated does not match the signature you provided. Check your access key and signing method. | The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm. |
| 415 | UnsupportedMediaType | The content type must be "application/json". | The content type must be "application/json". |
| 429 | ResourceThrottled | The request is throttled. Please try again later. | The request is throttled. Please try again later. |
| 409 | FlowAlreadyExists | Flow %s already exists. | Flow %s already exists. |
See Error Codes for a complete list.
Release notes
See Release Notes for a complete list.