summaryrefslogtreecommitdiff
path: root/data/en_us/fnf
diff options
context:
space:
mode:
authorZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
committerZhineng Li <im@zhineng.li>2026-07-12 17:11:17 +0800
commit1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 (patch)
tree5f0857666365b7e40cdaa3733ebe1f3ba9e13c67 /data/en_us/fnf
parent7347bac4ab7e136157fc94777e6cf87ef9e08599 (diff)
downloadafterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.tar.gz
afterglow-metadata-full-1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634.zip
update APIs 20260712
Diffstat (limited to 'data/en_us/fnf')
-rw-r--r--data/en_us/fnf/2019-03-15/api-docs.php6805
1 files changed, 2542 insertions, 4263 deletions
diff --git a/data/en_us/fnf/2019-03-15/api-docs.php b/data/en_us/fnf/2019-03-15/api-docs.php
index 2768903..9aff4db 100644
--- a/data/en_us/fnf/2019-03-15/api-docs.php
+++ b/data/en_us/fnf/2019-03-15/api-docs.php
@@ -1,219 +1,43 @@
<?php return [
'version' => '1.0',
- 'info' => [
- 'style' => 'RPC',
- 'product' => 'fnf',
- 'version' => '2019-03-15',
- ],
+ 'info' => ['style' => 'RPC', 'product' => 'fnf', 'version' => '2019-03-15'],
'directories' => [
[
- 'id' => 308092,
- 'title' => null,
- 'type' => 'directory',
'children' => [
- 'DescribeRegions',
- ],
- ],
- [
- 'id' => 308094,
- 'title' => null,
- 'type' => 'directory',
- 'children' => [
- 'CreateFlow',
- 'DeleteFlow',
- 'UpdateFlow',
'DescribeFlow',
- 'ListFlows',
[
- 'id' => 308100,
- 'title' => null,
+ 'children' => ['ListFlowAliases', 'CreateFlowAlias', 'DescribeFlowAlias', 'UpdateFlowAlias', 'DeleteFlowAlias'],
'type' => 'directory',
- 'children' => [
- 'PublishFlowVersion',
- 'ListFlowVersions',
- 'DeleteFlowVersion',
- ],
- ],
- [
- 'id' => 308104,
- 'title' => null,
- 'type' => 'directory',
- 'children' => [
- 'ListFlowAliases',
- 'CreateFlowAlias',
- 'DescribeFlowAlias',
- 'UpdateFlowAlias',
- 'DeleteFlowAlias',
- ],
+ 'title' => 'Flow alias',
],
],
+ 'type' => 'directory',
+ 'title' => 'Flow',
],
[
- 'id' => 308110,
- 'title' => null,
+ 'children' => ['StartExecution', 'StopExecution', 'DescribeExecution', 'ListExecutions', 'StartSyncExecution', 'DescribeMapRun', 'UpdateMapRun'],
'type' => 'directory',
- 'children' => [
- 'StartExecution',
- 'StopExecution',
- 'DescribeExecution',
- 'ListExecutions',
- 'GetExecutionHistory',
- 'StartSyncExecution',
- 'DescribeMapRun',
- 'UpdateMapRun',
- ],
+ 'title' => 'Execution',
],
[
- 'id' => 308119,
- 'title' => null,
+ 'children' => ['CreateSchedule'],
'type' => 'directory',
- 'children' => [
- 'ReportTaskFailed',
- 'ReportTaskSucceeded',
- ],
+ 'title' => 'Timed scheduling',
],
[
- 'id' => 308122,
- 'title' => null,
+ 'children' => ['CreateFlow', 'DeleteFlow', 'DeleteFlowVersion', 'DeleteSchedule', 'DescribeRegions', 'DescribeSchedule', 'GetExecutionHistory', 'ListFlowVersions', 'ListFlows', 'ListSchedules', 'PublishFlowVersion', 'ReportTaskFailed', 'ReportTaskSucceeded', 'UpdateFlow', 'UpdateSchedule'],
+ 'title' => 'Others',
'type' => 'directory',
- 'children' => [
- 'CreateSchedule',
- 'DeleteSchedule',
- 'UpdateSchedule',
- 'DescribeSchedule',
- 'ListSchedules',
- ],
],
],
'components' => [
'schemas' => [],
],
'apis' => [
- 'DescribeRegions' => [
- 'summary' => 'Queries the regions where CloudFlow is available.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '264118',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
- ],
- 'parameters' => [
- [
- 'name' => 'AcceptLanguage',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '根据汉语、英语筛选返回结果。更多详情,请参见RFC 7231。取值范围:'."\n"
- ."\n"
- .'zh-CN:简体中文。'."\n"
- .'en-US:英文。'."\n"
- .'默认值:zh-CN。',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'zh-CN',
- 'default' => 'zh-CN',
- 'enum' => [
- 'zh-CN',
- 'en-US',
- ],
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
- 'type' => 'object',
- 'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => '',
- 'type' => 'string',
- 'example' => '0aa3f793-6e5f-8472-c7a2-70d2b84c04ac',
- ],
- 'Regions' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Region' => [
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'RegionId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'cn-qingdao',
- ],
- 'RegionEndpoint' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'cn-qingdao.fnf.aliyuncs.com',
- ],
- 'LocalName' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '',
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation %s is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version %s is not supported yet. Please check.',
- ],
- ],
- 403 => [
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- ],
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0aa3f793-6e5f-8472-c7a2-70d2b84c04ac\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"RegionId\\": \\"cn-qingdao\\",\\n \\"RegionEndpoint\\": \\"cn-qingdao.fnf.aliyuncs.com\\",\\n \\"LocalName\\": \\"华北1(青岛)\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'DescribeRegions',
- ],
'CreateFlow' => [
'summary' => 'Creates a flow.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -226,97 +50,86 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '98854',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
],
'parameters' => [
[
'name' => 'Name',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the flow. The name is unique within the same region and cannot be modified after the flow is created. Set this parameter based on the following rules:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
+ 'schema' => ['description' => 'The name of the flow. The name must be unique within the same region and cannot be changed after the flow is created. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- It can contain letters (a to z and A to Z), digits (0 to 9), underscores (\\_), and hyphens (-).'."\n"
+ ."\n"
+ .'- It must start with a letter or an underscore (\\_).'."\n"
+ ."\n"
+ .'- It is case-sensitive.'."\n"
+ ."\n"
+ .'- It must be 1 to 128 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
'name' => 'Definition',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The definition of the workflow. The definition must comply with the flow definition language (FDL) syntax. Considering compatibility, the system supports two flow definition specifications.'."\n"
- ."\n"
- .'> In the preceding flow definition example, Name:my_flow_name is the workflow name, which must be consistent with the input parameter Name'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'version:&nbsp;v1.0<br/>type:&nbsp;flow<br/>steps:<br/>&nbsp;-&nbsp;type:&nbsp;pass<br/>&nbsp;name:&nbsp;mypass',
- ],
+ 'schema' => ['description' => 'The definition of the flow. It must comply with the Flow Definition Language (FDL) syntax. For forward compatibility, the system supports two versions of the flow definition specification.'."\n"
+ ."\n"
+ .'> In the example flow definitions, Name: my\\_flow\\_name refers to the flow name and must be the same as the Name input parameter.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"'."\n"
+ .'type: flow'."\n"
+ .'version: v1'."\n"
+ .'name: my_flow_name'."\n"
+ .'steps:'."\n"
+ .' - type: pass'."\n"
+ .' name: mypass'."\n"
+ .'"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"'."\n"
+ .'Type: StateMachine'."\n"
+ .'SpecVersion: v1'."\n"
+ .'Name: my_flow_name'."\n"
+ .'StartAt: my_state'."\n"
+ .'States:'."\n"
+ .' - Type: Pass'."\n"
+ .' Name: my_state'."\n"
+ .' End: true'."\n"
+ .'"', 'required' => true, 'docRequired' => true, 'title' => ''],
],
[
'name' => 'Description',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The description of the flow.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'test flow',
- ],
+ 'schema' => ['description' => 'The description of the flow.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my test flow', 'title' => ''],
],
[
'name' => 'Type',
'in' => 'formData',
'schema' => [
- 'description' => 'The type of the flow. Set this parameter to **FDL**.'."\n",
+ 'description' => 'The type of the flow. The value must be **FDL**.',
+ 'enumValueTitles' => ['FDL' => 'Flow Definition Language'],
'type' => 'string',
'required' => true,
'docRequired' => true,
- 'enumValueTitles' => [
- 'FDL' => '',
- ],
'example' => 'FDL',
+ 'title' => '',
],
],
[
'name' => 'RoleArn',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The Alibaba Cloud resource name (ARN) of the authorized role on which the execution of the flow relies. During the execution of the flow, CloudFlow assumes the role to call API operations of relevant services.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'acs:ram:${region}:${accountID}:${role}',
- ],
+ 'schema' => ['description' => 'The resource descriptor for the role that the flow relies on for execution. When the flow runs, Serverless Workflow assumes this role (AssumeRole) to operate on related flow resources.', 'type' => 'string', 'required' => false, 'example' => 'acs:ram:${region}:${accountID}:${role}', 'title' => ''],
],
[
'name' => 'ExternalStorageLocation',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The path of the external storage.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '/path',
- ],
+ 'schema' => ['description' => 'The external storage location.', 'type' => 'string', 'required' => false, 'example' => '/path', 'title' => ''],
],
[
'name' => 'ExecutionMode',
'in' => 'formData',
'schema' => [
- 'title' => '执行模式,枚举类型,可以是Express和Standard,空串等价于Standard',
- 'description' => 'The execution mode. Valid values: Express and Standard. Considering compatibility, an empty string is equivalent to the Standard execution mode.'."\n",
+ 'description' => 'The execution mode. This is an enumeration type. Valid values are Express and Standard. For forward compatibility, an empty string is treated as the Standard execution mode.',
+ 'enumValueTitles' => ['Express' => 'The express execution mode', 'Standard' => 'The standard execution mode'],
'type' => 'string',
'required' => false,
- 'enumValueTitles' => [
- 'Express' => '',
- 'Standard' => '',
- ],
+ 'title' => '',
'example' => 'Standard',
],
],
@@ -325,362 +138,265 @@
'in' => 'formData',
'style' => 'json',
'schema' => [
- 'title' => '配置 Flow 执行期间可以访问的变量列表',
'type' => 'object',
'properties' => [
'Variables' => [
- 'title' => '配置 Flow 执行期间可以访问的变量列表',
'type' => 'array',
'items' => [
- 'title' => '配置 Flow 执行期间可以访问的变量列表',
'type' => 'object',
'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
- 'Description' => [
- 'title' => '变量描述',
- 'type' => 'string',
- 'example' => 'description',
- ],
+ 'Name' => ['description' => 'The variable name.', 'type' => 'string', 'example' => 'key', 'title' => '', 'required' => false],
+ 'Value' => ['description' => 'The variable value.', 'type' => 'string', 'example' => 'value', 'title' => '', 'required' => false],
+ 'Description' => ['description' => 'The variable description.', 'type' => 'string', 'example' => 'description', 'title' => '', 'required' => false],
],
+ 'title' => '',
+ 'description' => 'A list of variables that the flow can access during execution.',
+ 'required' => false,
+ 'example' => '',
],
+ 'title' => '',
+ 'description' => 'A list of environment variables that the flow can access during execution.',
+ 'required' => false,
+ 'example' => '',
],
],
+ 'title' => '',
+ 'description' => 'The environment context that the flow can access during execution.',
+ 'required' => false,
+ 'example' => '',
],
],
+ [
+ 'name' => 'ResourceGroupId',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''],
+ ],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The schema of response.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
'Type' => [
- 'description' => 'The type of the flow.'."\n"
- ."\n"
- .'Valid value:'."\n"
- ."\n"
- .'* FDL'."\n"
- ."\n"
- .' <!-- -->'."\n"
- ."\n"
- .' <!-- -->'."\n"
- ."\n"
- .' <!-- -->'."\n",
+ 'description' => 'The type of the flow.',
+ 'enumValueTitles' => ['FDL' => 'Flow Definition Language'],
'type' => 'string',
- 'enumValueTitles' => [
- 'FDL' => '',
- ],
'example' => 'FDL',
- ],
- 'Definition' => [
- 'description' => 'Considering compatibility, the system supports two flow definition specifications.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'RoleArn' => [
- 'description' => 'The Alibaba Cloud resource name (ARN) of the authorized role on which the execution of the flow relies. During the execution of the flow, CloudFlow assumes the role to call API operations of relevant services.'."\n",
- 'type' => 'string',
- 'example' => 'acs:ram:${region}:${accountID}:${role}',
- ],
- 'RequestId' => [
- 'description' => 'The request ID. Each time an `HTTP status code` is returned, Serverless Workflow returns a value for the parameter.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestID',
- ],
- 'Description' => [
- 'description' => 'The description of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'test flow',
- ],
- 'Name' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the flow was created.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the flow was last modified.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'Id' => [
- 'description' => 'The unique ID of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'e589e092-e2c0-4dee-b306-3574ddfdddf5****',
- ],
- 'ExecutionMode' => [
- 'title' => '执行模式,枚举类型,可以是Express和Standard,空串等价于Standard',
- 'description' => 'The execution mode. Valid values: Express and Standard. Considering compatibility, an empty string is equivalent to the Standard execution mode.'."\n",
- 'type' => 'string',
- 'example' => 'Standard',
- ],
+ 'title' => '',
+ ],
+ 'Definition' => ['description' => 'The definition of the flow. For forward compatibility, the system supports two versions of the flow definition specification.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"type: flow\\nversion: v1\\nname: my_flow_name\\nsteps:\\n - type: pass\\n name: mypass"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"Type: StateMachine\\nSpecVersion: v1\\nName: my_flow_name\\nStartAt: my_state\\nStates:\\n - Type: Pass\\n Name: my_state\\n End: true"', 'title' => ''],
+ 'RoleArn' => ['description' => 'The resource descriptor for the role that the flow relies on for execution. When the flow runs, Serverless Workflow assumes this role (AssumeRole) to operate on related flow resources.', 'type' => 'string', 'example' => 'acs:ram:${region}:${accountID}:${role}', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID. Serverless Workflow returns a request ID for every request that receives an `http status code`.', 'type' => 'string', 'example' => 'testRequestID', 'title' => ''],
+ 'Description' => ['description' => 'The description of the flow.', 'type' => 'string', 'example' => 'my test flow', 'title' => ''],
+ 'Name' => ['description' => 'The name of the flow.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'CreatedTime' => ['description' => 'The time when the flow was created.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'The time when the flow was last modified.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'Id' => ['description' => 'The unique ID of the flow.', 'type' => 'string', 'example' => 'e589e092-e2c0-4dee-b306-3574ddfdddf5****', 'title' => ''],
+ 'ExecutionMode' => ['description' => 'The execution mode. This is an enumeration type. Valid values are Express and Standard. For forward compatibility, this field can be an empty string, which is treated as the Standard mode.', 'type' => 'string', 'title' => '', 'example' => 'Standard'],
'Environment' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
'type' => 'object',
'properties' => [
'Variables' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
'type' => 'array',
'items' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
'type' => 'object',
'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
- 'Description' => [
- 'title' => '变量描述',
- 'type' => 'string',
- 'example' => 'description',
- ],
+ 'Name' => ['description' => 'The variable name.', 'type' => 'string', 'example' => 'key', 'title' => ''],
+ 'Value' => ['description' => 'The variable value.', 'type' => 'string', 'example' => 'value', 'title' => ''],
+ 'Description' => ['description' => 'The variable description.', 'type' => 'string', 'example' => 'description', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'A list of variables that the flow can access during execution.',
+ 'example' => '',
],
+ 'title' => '',
+ 'description' => 'A list of variables that the flow can access during execution.',
+ 'example' => '',
],
],
+ 'description' => 'A list of variables that the flow can access during execution.',
+ 'title' => '',
+ 'example' => '',
],
+ 'ResourceGroupId' => ['type' => 'string', 'example' => 'rg-xxx', 'description' => '', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
],
409 => [
- [
- 'errorCode' => 'FlowAlreadyExists',
- 'errorMessage' => 'Flow %s already exists.',
- ],
+ ['errorCode' => 'FlowAlreadyExists', 'errorMessage' => 'Flow %s already exists.', 'description' => 'Flow %s already exists.'],
],
415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
],
429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Type\\": \\"FDL\\",\\n \\"Definition\\": \\"旧版:\\\\n\\\\\\"type: flow\\\\\\\\nversion: v1\\\\\\\\nname: my_flow_name\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\\\\\"\\\\n\\\\n新版:\\\\n\\\\\\"Type: StateMachine\\\\\\\\nSpecVersion: v1\\\\\\\\nName: my_flow_name\\\\\\\\nStartAt: my_state\\\\\\\\nStates:\\\\\\\\n - Type: Pass\\\\\\\\n Name: my_state\\\\\\\\n End: true\\\\\\"\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\",\\n \\"RequestId\\": \\"testRequestID\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddfdddf5****\\",\\n \\"ExecutionMode\\": \\"Standard\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\",\\n \\"Description\\": \\"description\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Type\\": \\"FDL\\",\\n \\"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\\\\\\"\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\",\\n \\"RequestId\\": \\"testRequestID\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddfdddf5****\\",\\n \\"ExecutionMode\\": \\"Standard\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\",\\n \\"Description\\": \\"description\\"\\n }\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-xxx\\"\\n}","type":"json"}]',
'title' => 'CreateFlow',
- 'description' => '## [](#)Usage notes'."\n"
+ 'description' => '## Description'."\n"
+ ."\n"
+ .'- The number of flows that each user can create is subject to resource limits. For more information, see [Limits](~~122093~~). If you have special requirements, submit a ticket to request a limit adjustment.'."\n"
."\n"
- .'* The number of flows that each user can create is restricted by resources. For more information, see [Limits](~~122093~~). If you want to create more flows, submit a ticket.'."\n"
- .'* At the user level, flows are distinguished by name. The name of a flow within one account must be unique.'."\n",
+ .'- Flows are uniquely identified by name within an account. Therefore, you cannot create multiple flows with the same name under a single account.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'DeleteFlow' => [
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'fnf:CreateFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'Flow', 'arn' => 'acs:fnf:{#regionId}:{#accountId}:flow/*'],
+ ],
+ ],
+ ],
],
+ 'translator' => 'machine',
+ ],
+ 'CreateFlowAlias' => [
+ 'summary' => 'Creates an alias for a flow. You can then use the alias to start an execution.',
+ 'path' => '',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
- 'abilityTreeCode' => '98856',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
+ 'name' => 'FlowName',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'required' => true, 'title' => '', 'description' => 'The flow name.', 'example' => 'example-flow-name'],
+ ],
+ [
'name' => 'Name',
'in' => 'formData',
+ 'schema' => ['type' => 'string', 'required' => true, 'title' => '', 'description' => 'The alias name.', 'example' => 'example-alias-name'],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The alias description.', 'required' => false, 'example' => 'example description'],
+ ],
+ [
+ 'name' => 'RoutingConfigurations',
+ 'in' => 'formData',
+ 'style' => 'json',
'schema' => [
- 'description' => 'The name of the workflow that you want to delete.'."\n",
- 'type' => 'string',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The flow version.', 'required' => true, 'example' => '1'],
+ 'Weight' => ['type' => 'integer', 'format' => 'int32', 'title' => '', 'description' => 'The weight.', 'required' => true, 'example' => '30'],
+ ],
+ 'required' => false,
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'The traffic distribution configuration for one or two flow versions. When you start an execution using the alias, the system uses the specified weights to select a flow version to execute.',
'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'Id of the request', 'example' => 'testRequestID'],
+ 'FlowName' => ['type' => 'string', 'title' => '', 'description' => 'The flow name.', 'example' => 'example-flow-name'],
+ 'Name' => ['type' => 'string', 'title' => '', 'description' => 'The alias name.', 'example' => 'exampe-alias-name'],
+ 'Description' => ['type' => 'string', 'title' => '', 'description' => 'The alias description.', 'example' => 'example description'],
+ 'RoutingConfigurations' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The flow version.', 'example' => '1'],
+ 'Weight' => ['type' => 'integer', 'format' => 'int32', 'title' => '', 'description' => 'The weight.', 'example' => '30'],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'description' => 'The traffic distribution configuration for one or two flow versions. When you start an execution using the alias, the system uses the specified weights to select a flow version to execute.',
+ 'title' => '',
+ 'example' => '',
],
+ 'CreatedTime' => ['type' => 'string', 'title' => '', 'description' => 'The time when the alias was created.', 'example' => '2020-01-01T01:01:01.001Z'],
],
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- ],
- 403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- ],
- [
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- ],
- 409 => [
- [
- 'errorCode' => 'ConcurrentUpdateError',
- 'errorMessage' => 'Update conflict, please retry.',
- ],
- ],
- 412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
- ],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
- ],
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\"\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'DeleteFlow',
- 'summary' => 'Deletes an existing flow.',
- 'description' => '## [](#)Usage notes'."\n"
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'CreateFlowAlias',
+ 'description' => '## API description'."\n"
."\n"
- .'A delete operation is asynchronous. If this operation is successful, the system returns a successful response. If an existing flow is pending to be deleted, a new flow of the same name will not be affected by the existing one. After you delete a flow, you cannot query its historical executions. All executions in progress will stop after their most recent steps are complete.'."\n",
- ],
- 'UpdateFlow' => [
- 'summary' => 'Updates a flow.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ .'- The number of flows that you can create is limited by resources. For more information, see [Limits](~~122093~~). If you have special requirements, you can submit a ticket to request an adjustment.'."\n"
+ ."\n"
+ .'- Each flow must have a unique name within your account.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"testRequestID\\",\\n \\"FlowName\\": \\"example-flow-name\\",\\n \\"Name\\": \\"exampe-alias-name\\",\\n \\"Description\\": \\"example description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": 30\\n }\\n ],\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\"\\n}","type":"json"}]',
+ ],
+ 'CreateSchedule' => [
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -689,728 +405,209 @@
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '98869',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '98855',
+ 'abilityTreeNodes' => ['FEATUREfnf06LH4G'],
],
'parameters' => [
[
- 'name' => 'Name',
+ 'name' => 'FlowName',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the workflow.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
+ 'schema' => ['description' => 'The name of the workflow to which the timed schedule is attached.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'Definition',
+ 'name' => 'ScheduleName',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The definition of the workflow. The definition must comply with the flow definition language (FDL) syntax. Considering compatibility, the system supports the two workflow definition specifications.'."\n"
- ."\n"
- .'> In the preceding workflow definition example, Name:my_flow_name is the workflow name, which must be consistent with the input parameter Name'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
+ 'schema' => ['description' => 'The name of the timed schedule. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- It can contain letters (a-z and A-Z), digits (0-9), underscores (\\_), and hyphens (-).'."\n"
+ ."\n"
+ .'- It must start with a letter or an underscore (\\_).'."\n"
+ ."\n"
+ .'- It is case-sensitive.'."\n"
+ ."\n"
+ .'- It must be 1 to 128 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_schedule_name', 'title' => ''],
],
[
'name' => 'Description',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The description of the flow.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test definition',
- ],
+ 'schema' => ['description' => 'The description of the timed schedule.', 'type' => 'string', 'required' => false, 'example' => 'my test schedule', 'title' => ''],
],
[
- 'name' => 'Type',
+ 'name' => 'Payload',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The type of the flow. Valid value: **FDL**.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'FDL',
- ],
+ 'schema' => ['description' => 'The trigger message of the timed schedule. The message must be in the JSON format.', 'type' => 'string', 'required' => false, 'example' => '{"key": "value"}', 'title' => ''],
],
[
- 'name' => 'RoleArn',
+ 'name' => 'CronExpression',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The Alibaba Cloud resource name (ARN) of the authorized role on which the execution of the flow relies. During the execution of the flow, the flow execution engine assumes the role to call API operations of relevant services.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'acs:ram::${accountID}:${role}',
- ],
+ 'schema' => ['description' => 'The cron expression.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '0 * * * * *', 'title' => ''],
],
[
- 'name' => 'Environment',
+ 'name' => 'Enable',
'in' => 'formData',
- 'style' => 'json',
- 'schema' => [
- 'title' => '配置 Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Variables' => [
- 'title' => '配置 Flow 执行期间可以访问的变量列表',
- 'type' => 'array',
- 'items' => [
- 'title' => '配置 Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
- 'Description' => [
- 'title' => '变量描述',
- 'type' => 'string',
- 'example' => 'description',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'schema' => ['description' => 'Specifies whether to enable the timed schedule. Valid values:'."\n"
+ ."\n"
+ .'- **true**: Enables the timed schedule.'."\n"
+ ."\n"
+ .'- **false**: Disables the timed schedule.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The schema of response.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'Type' => [
- 'description' => 'The type of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'FDL',
- ],
- 'Definition' => [
- 'description' => 'The flow definition, which follows the FDL syntax standard. Considering compatibility, the system supports the two flow definition specifications.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'RoleArn' => [
- 'description' => 'The Alibaba Cloud resource name (ARN) of the authorized role on which the execution of the flow relies. During the execution of the flow, the flow execution engine assumes the role to call API operations of relevant services.'."\n",
- 'type' => 'string',
- 'example' => 'acs:ram::${accountID}:${role}',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestID',
- ],
- 'Description' => [
- 'description' => 'The description of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'test definition',
- ],
- 'ExternalStorageLocation' => [
- 'description' => 'The path of the external storage.'."\n",
- 'type' => 'string',
- 'example' => '/path',
- ],
- 'Name' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the flow was created.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the flow was last modified.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'Id' => [
- 'description' => 'The unique ID of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'e589e092-e2c0-4dee-b306-3574ddfdddf5****',
- ],
- 'Environment' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Variables' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'array',
- 'items' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
- 'Description' => [
- 'title' => '变量描述',
- 'type' => 'string',
- 'example' => 'description',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'Description' => ['description' => 'The description of the timed schedule.', 'type' => 'string', 'example' => 'test description', 'title' => ''],
+ 'ScheduleId' => ['description' => 'The ID of the timed schedule.', 'type' => 'string', 'example' => 'testScheduleId', 'title' => ''],
+ 'Payload' => ['description' => 'The trigger message of the timed schedule.', 'type' => 'string', 'example' => '{"key": "value"}', 'title' => ''],
+ 'ScheduleName' => ['description' => 'The name of the timed schedule.', 'type' => 'string', 'example' => 'testScheduleName', 'title' => ''],
+ 'CreatedTime' => ['description' => 'The time when the timed schedule was created.', 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'The time when the timed schedule was last modified.', 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'CronExpression' => ['description' => 'The cron expression.', 'type' => 'string', 'example' => '0 * * * * *', 'title' => ''],
+ 'Enable' => ['description' => 'Indicates whether the timed schedule is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
],
[
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
],
409 => [
- [
- 'errorCode' => 'ConcurrentUpdateError',
- 'errorMessage' => 'Update conflict, please retry.',
- ],
- ],
- 412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
- ],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'ConcurrentUpdateError', 'errorMessage' => 'Update conflict, please retry.', 'description' => 'Update conflict, please retry.'],
+ ['errorCode' => 'ScheduleAlreadyExists', 'errorMessage' => 'The schedule %s already exists in flow %s.', 'description' => ''],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Type\\": \\"FDL\\",\\n \\"Definition\\": \\"旧版:\\\\n\\\\\\"type: flow\\\\\\\\nversion: v1\\\\\\\\nname: my_flow_name\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\\\\\"\\\\n\\\\n新版:\\\\n\\\\\\"Type: StateMachine\\\\\\\\nSpecVersion: v1\\\\\\\\nName: my_flow_name\\\\\\\\nStartAt: my_state\\\\\\\\nStates:\\\\\\\\n - Type: Pass\\\\\\\\n Name: my_state\\\\\\\\n End: true\\\\\\"\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\",\\n \\"RequestId\\": \\"testRequestID\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"ExternalStorageLocation\\": \\"/path\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddfdddf5****\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\",\\n \\"Description\\": \\"description\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'UpdateFlow',
- 'requestParamsDescription' => ' ',
- 'responseParamsDescription' => ' ',
- 'extraInfo' => ' ',
- ],
- 'DescribeFlow' => [
- 'summary' => 'Queries the information about a flow.',
- 'methods' => [
- 'get',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"test description\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"testScheduleName\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n}","type":"json"}]',
+ 'title' => 'CreateSchedule',
+ 'summary' => 'Creates a timed schedule.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'fnf:CreateSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'flowControl' => [
+ 'flowControlList' => [],
],
+ ],
+ 'DeleteFlow' => [
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '98859',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '98856',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'Name',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
- ],
- [
- 'name' => 'FlowVersion',
- 'in' => 'query',
- 'schema' => [
- 'title' => '版本',
- 'type' => 'string',
- 'example' => '1',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the workflow that you want to delete.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'flow', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'Schema of response.'."\n",
+ 'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'Type' => [
- 'description' => 'The type of the workflow.'."\n",
- 'type' => 'string',
- 'example' => 'FDL',
- ],
- 'Definition' => [
- 'description' => 'The definition of the workflow. The definition must comply with the flow definition language (FDL) syntax. Considering compatibility, the system supports the flow definition specifications of the old version and new version.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'RoleArn' => [
- 'description' => 'The Alibaba Cloud resource name (ARN) of the authorized role on which the execution of the flow relies. During the execution of the flow, CloudFlow assumes the role to call API operations of relevant services.'."\n",
- 'type' => 'string',
- 'example' => 'acs:ram::${accountID}:${role}',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'Description' => [
- 'description' => 'The description of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'test flow',
- ],
- 'Name' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the flow was created.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the flow was last modified.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'Id' => [
- 'description' => 'The unique ID of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'e589e092-e2c0-4dee-b306-3574ddfdddf5****',
- ],
- 'ExecutionMode' => [
- 'title' => '执行模式,枚举类型,可以是Express和Standard,空串等价于Standard',
- 'description' => 'The execution mode or the enumeration type. Valid values: Express and Standard. A value of Standard indicates an empty string.'."\n",
- 'type' => 'string',
- 'example' => 'Standard',
- ],
- 'Environment' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Variables' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'array',
- 'items' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
- 'Description' => [
- 'title' => '变量描述',
- 'type' => 'string',
- 'example' => 'description',
- ],
- ],
- ],
- ],
- ],
- ],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
],
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => ''],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => ''],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => ''],
],
[
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => ''],
+ ],
+ 409 => [
+ ['errorCode' => 'ConcurrentUpdateError', 'errorMessage' => 'Update conflict, please retry.', 'description' => ''],
],
412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => ''],
],
415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => ''],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
- ],
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Type\\": \\"FDL\\",\\n \\"Definition\\": \\"旧版:\\\\n\\\\\\"\\\\ntype: flow\\\\nversion: v1\\\\nname: my_flow_name\\\\nsteps:\\\\n - type: pass\\\\n name: mypass\\\\n\\\\\\"\\\\n\\\\n新版:\\\\n\\\\\\"\\\\nType: StateMachine\\\\nSpecVersion: v1\\\\nName: my_flow_name\\\\nStartAt: my_state\\\\nStates:\\\\n - Type: Pass\\\\n Name: my_state\\\\n End: true\\\\n\\\\\\"\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddfdddf5****\\",\\n \\"ExecutionMode\\": \\"Standard\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\",\\n \\"Description\\": \\"description\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'DescribeFlow',
- ],
- 'ListFlows' => [
- 'summary' => 'Queries a list of flows.',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
- ],
- ],
- 'operationType' => 'read',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '98863',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
],
- 'tenantRelevance' => 'publicInformation',
],
- 'parameters' => [
- [
- 'name' => 'NextToken',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The token to start the query.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'flow_nextxxx',
- ],
- ],
- [
- 'name' => 'Limit',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of workflows that you want to query. Valid values: 1 - 999. Default value: 60.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- ],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'description' => 'The details of flows.'."\n",
- 'type' => 'object',
- 'properties' => [
- 'NextToken' => [
- 'description' => 'The start key for the next query. This parameter is not returned if all results have been returned.'."\n",
- 'type' => 'string',
- 'example' => 'flow_nextxxx',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'Flows' => [
- 'description' => 'The details of flows.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Type' => [
- 'description' => 'The type of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'FDL',
- ],
- 'Definition' => [
- 'description' => 'The definition of the flow. The definition must comply with the Flow Definition Language (FDL) syntax.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'RoleArn' => [
- 'description' => 'The Alibaba Cloud resource name (ARN) of the specified Resource Access Management (RAM) role that Serverless Workflow assumes to invoke resources when the flow is executed.'."\n",
- 'type' => 'string',
- 'example' => 'acs:ram::${accountID}:${role}',
- ],
- 'Description' => [
- 'description' => 'The description of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'test flow',
- ],
- 'Name' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the flow was created.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the flow was last modified.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'Id' => [
- 'description' => 'The unique ID of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'e589e092-e2c0-4dee-b306-3574ddf5****',
- ],
- 'ExecutionMode' => [
- 'title' => '执行模式,枚举类型,可以是Express和Standard,空串等价于Standard',
- 'description' => 'The execution mode or the enumeration type. Valid values: Express and Standard. A value of Standard indicates an empty string.'."\n",
- 'type' => 'string',
- 'example' => 'Standard',
- ],
- 'Environment' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Variables' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'array',
- 'items' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Description' => [
- 'title' => '变量描述',
- 'type' => 'string',
- 'example' => 'description',
- ],
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
- ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\"\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'title' => 'DeleteFlow',
+ 'summary' => 'Deletes an existing flow.',
+ 'description' => '## [](#)Usage notes'."\n"
+ ."\n"
+ .'A delete operation is asynchronous. If this operation is successful, the system returns a successful response. If an existing flow is pending to be deleted, a new flow of the same name will not be affected by the existing one. After you delete a flow, you cannot query its historical executions. All executions in progress will stop after their most recent steps are complete.'."\n",
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'fnf:DeleteFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- ],
- 403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- ],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
- ],
- 500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
- ],
- ],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"flow_nextxxx\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Flows\\": [\\n {\\n \\"Type\\": \\"FDL\\",\\n \\"Definition\\": \\"version: v1.0\\\\\\\\ntype: flow\\\\\\\\nname: test\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\",\\n \\"RoleArn\\": \\"acs:ram::${accountID}:${role}\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddf5****\\",\\n \\"ExecutionMode\\": \\"Standard\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Description\\": \\"description\\",\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'ListFlows',
],
- 'PublishFlowVersion' => [
- 'summary' => '发布流程版本',
+ 'DeleteFlowAlias' => [
+ 'summary' => 'Deletes a flow alias.',
'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -1419,12 +616,10 @@
'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
- 'riskType' => 'none',
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
@@ -1432,271 +627,179 @@
[
'name' => 'FlowName',
'in' => 'formData',
- 'schema' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-flow-name',
- ],
+ 'schema' => ['type' => 'string', 'description' => 'The name of the flow.', 'required' => true, 'title' => '', 'example' => 'my_flow_name'],
],
[
- 'name' => 'Description',
+ 'name' => 'Name',
'in' => 'formData',
- 'schema' => [
- 'title' => '版本描述',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'example flow description',
- ],
+ 'schema' => ['type' => 'string', 'description' => 'The name of the alias.', 'required' => true, 'title' => '', 'example' => 'alias_name'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816',
- ],
- 'FlowName' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my-flow-name',
- ],
- 'Version' => [
- 'title' => '流程版本',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1',
- ],
- 'Description' => [
- 'title' => '流程版本描述',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my flow description',
- ],
- 'CreatedTime' => [
- 'title' => '创建时间',
- 'description' => '',
- 'type' => 'string',
- 'example' => '2025-10-24T14:11:26+08:00',
- ],
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The ID of the request.', 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164'],
],
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DeleteFlowAlias',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"FlowName\\": \\"my-flow-name\\",\\n \\"Version\\": \\"1\\",\\n \\"Description\\": \\"my flow description\\",\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n}","type":"json"}]',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\"\\n}","type":"json"}]',
+ 'translator' => 'machine',
],
- 'ListFlowVersions' => [
- 'summary' => '查询流程版本列表',
+ 'DeleteFlowVersion' => [
+ 'summary' => 'Deletes a flow version.',
'path' => '',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
- 'riskType' => 'none',
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
- 'in' => 'query',
- 'schema' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-flow-name',
- ],
- ],
- [
- 'name' => 'NextToken',
- 'in' => 'query',
- 'schema' => [
- 'title' => 'list token',
- 'description' => 'list token',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'token',
- ],
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The name of the flow.', 'required' => true, 'example' => 'example-flow'],
],
[
- 'name' => 'Limit',
- 'in' => 'query',
- 'schema' => [
- 'title' => '返回的最大结果数量',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '10',
- ],
+ 'name' => 'FlowVersion',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The version of the flow.', 'required' => true, 'example' => '1'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816',
- ],
- 'NextToken' => [
- 'title' => 'list token',
- 'description' => 'list token',
- 'type' => 'string',
- 'example' => 'token',
- ],
- 'FlowVersions' => [
- 'title' => '流程版本列表',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Version' => [
- 'title' => '版本名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1',
- ],
- 'Description' => [
- 'title' => '版本描述',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'version description',
- ],
- 'CreatedTime' => [
- 'title' => '创建时间',
- 'description' => '',
- 'type' => 'string',
- 'example' => '2025-10-24T14:11:26+08:00',
- ],
- ],
- ],
- ],
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The ID of the request.', 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164'],
],
+ 'title' => '',
+ 'description' => 'The response schema.',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DeleteFlowVersion',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"NextToken\\": \\"token\\",\\n \\"FlowVersions\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Description\\": \\"version description\\",\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\"\\n}","type":"json"}]',
],
- 'DeleteFlowVersion' => [
- 'summary' => '删除流程版本',
- 'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DeleteSchedule' => [
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
'operationType' => 'delete',
- 'riskType' => 'high',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
- 'autoTest' => true,
+ 'abilityTreeCode' => '98857',
+ 'abilityTreeNodes' => ['FEATUREfnf06LH4G'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
'in' => 'formData',
- 'schema' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-flow',
- ],
+ 'schema' => ['description' => 'The name of the workflow with which the scheduling task that you want to delete is associated.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testFlowName', 'title' => ''],
],
[
- 'name' => 'FlowVersion',
+ 'name' => 'ScheduleName',
'in' => 'formData',
- 'schema' => [
- 'title' => '流程版本',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The name of the scheduling task that you want to delete.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testScheduleName', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164',
- ],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
],
+ 'title' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\"\\n}","type":"json"}]',
- ],
- 'ListFlowAliases' => [
- 'summary' => '查询流程版本别名列表',
- 'path' => '',
- 'methods' => [
- 'get',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ],
+ [
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => ''],
+ ['errorCode' => 'ScheduleNotExists', 'errorMessage' => 'The schedule %s for flow %s does not exist.', 'description' => ''],
+ ],
+ 409 => [
+ ['errorCode' => 'ConcurrentUpdateError', 'errorMessage' => 'Update conflict, please retry.', 'description' => ''],
+ ],
+ 412 => [
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => ''],
+ ],
+ 500 => [
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
+ ],
],
- 'schemes' => [
- 'https',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\"\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'title' => 'DeleteSchedule',
+ 'summary' => 'Deletes a time-based scheduling task.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'fnf:DeleteSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'DescribeExecution' => [
+ 'summary' => 'Queries the status of an execution. This operation supports long polling. The WaitTimeSeconds parameter specifies the maximum wait time.',
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -1705,301 +808,152 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'list',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
- 'autoTest' => true,
+ 'abilityTreeCode' => '98858',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
'in' => 'query',
- 'schema' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-flow-name',
- ],
+ 'schema' => ['description' => 'The name of the flow.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'NextToken',
+ 'name' => 'ExecutionName',
'in' => 'query',
- 'schema' => [
- 'title' => 'list token',
- 'description' => 'list token',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'token',
- ],
+ 'schema' => ['description' => 'The name of the execution.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_exec_name', 'title' => ''],
],
[
- 'name' => 'Limit',
+ 'name' => 'WaitTimeSeconds',
'in' => 'query',
- 'schema' => [
- 'title' => '最大返回的结果数量',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '10',
- ],
+ 'schema' => ['description' => 'The maximum wait time for a long polling request, in seconds. Valid values: 0 to 60.'."\n"
+ ."\n"
+ .'- 0: The request immediately returns the current status of the execution.'."\n"
+ ."\n"
+ .'- A value greater than 0: The request waits on the server for the execution to complete. The maximum wait time is the value that you specify.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164',
- ],
- 'NextToken' => [
- 'title' => 'list token',
- 'description' => 'list token',
- 'type' => 'string',
- 'example' => 'testNextToken',
- ],
- 'Aliases' => [
- 'title' => '别名列表',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Name' => [
- 'title' => '别名名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my-alias-name',
- ],
- 'Description' => [
- 'title' => '别名描述',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my alias description',
- ],
- 'RoutingConfigurations' => [
- 'title' => '权重配置',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Version' => [
- 'title' => '版本',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1',
- ],
- 'Weight' => [
- 'title' => '权重',
- 'description' => '',
- 'type' => 'string',
- 'example' => '20',
- ],
- ],
+ 'Status' => ['description' => 'The status of the execution. Valid values:'."\n"
+ ."\n"
+ .'- **Starting**'."\n"
+ ."\n"
+ .'- **Running**'."\n"
+ ."\n"
+ .'- **Stopped**'."\n"
+ ."\n"
+ .'- **Succeeded**'."\n"
+ ."\n"
+ .'- **Failed**'."\n"
+ ."\n"
+ .'- **TimedOut**', 'type' => 'string', 'example' => 'Succeeded', 'title' => ''],
+ 'StoppedTime' => ['description' => 'The time when the execution stopped.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'StartedTime' => ['description' => 'The time when the execution started.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'FlowDefinition' => ['description' => 'The definition of the executed flow.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"type: flow\\nversion: v1\\nname: my_flow_name\\nsteps:\\n - type: pass\\n name: mypass"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"Type: StateMachine\\nSpecVersion: v1\\nName: my_flow_name\\nStartAt: my_state\\nStates:\\n - Type: Pass\\n Name: my_state\\n End: true"', 'title' => ''],
+ 'Output' => ['description' => 'The output of the execution, in JSON format.', 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
+ 'FlowName' => ['description' => 'The name of the flow.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'Name' => ['description' => 'The name of the execution.', 'type' => 'string', 'example' => 'my_exec_name', 'title' => ''],
+ 'Input' => ['description' => 'The input of the execution, in JSON format.', 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
+ 'Environment' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Variables' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => ['description' => 'The name of the variable.', 'type' => 'string', 'example' => 'key', 'title' => ''],
+ 'Value' => ['description' => 'The value of the variable.', 'type' => 'string', 'example' => 'value', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the flow execution.',
+ 'example' => '',
],
- 'CreatedTime' => [
- 'title' => '创建时间',
- 'description' => '',
- 'type' => 'string',
- 'example' => '2025-10-24T14:11:26+08:00',
- ],
+ 'title' => '',
+ 'description' => 'The list of environment variables used during the flow execution.',
+ 'example' => '',
],
],
+ 'description' => 'The list of environment variables used during the flow execution.',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\",\\n \\"NextToken\\": \\"testNextToken\\",\\n \\"Aliases\\": [\\n {\\n \\"Name\\": \\"my-alias-name\\",\\n \\"Description\\": \\"my alias description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": \\"20\\"\\n }\\n ],\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n }\\n ]\\n}","type":"json"}]',
- ],
- 'CreateFlowAlias' => [
- 'summary' => '创建流程版本别名',
- 'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
- 'security' => [
- [
- 'AK' => [],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
],
- ],
- 'operationType' => 'write',
- 'deprecated' => false,
- 'systemTags' => [
- 'operationType' => 'create',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
+ 403 => [
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
],
- 'autoTest' => true,
- 'tenantRelevance' => 'publicInformation',
- ],
- 'parameters' => [
[
- 'name' => 'FlowName',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-flow-name',
- ],
+ ['errorCode' => 'ExecutionNotExists', 'errorMessage' => 'Execution %s for flow %s does not exist.', 'description' => 'Execution %s for flow %s does not exist.'],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
],
- [
- 'name' => 'Name',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '别名名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-alias-name',
- ],
+ 412 => [
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => 'The resource to be modified has been changed. Please try again later.'],
],
- [
- 'name' => 'Description',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '别名描述',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'example description',
- ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
],
- [
- 'name' => 'RoutingConfigurations',
- 'in' => 'formData',
- 'style' => 'json',
- 'schema' => [
- 'title' => '流量分发设置',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Version' => [
- 'title' => '流程版本',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => '1',
- ],
- 'Weight' => [
- 'title' => '权重',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => true,
- 'example' => '30',
- ],
- ],
- 'required' => false,
- ],
- 'required' => true,
- ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
+ ],
+ 500 => [
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'responses' => [
- 200 => [
- 'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
- 'type' => 'object',
- 'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => 'testRequestID',
- ],
- 'FlowName' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'example-flow-name',
- ],
- 'Name' => [
- 'title' => '别名名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'exampe-alias-name',
- ],
- 'Description' => [
- 'title' => '别名描述',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'example description',
- ],
- 'RoutingConfigurations' => [
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'type' => 'object',
- 'properties' => [
- 'Version' => [
- 'title' => '版本名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1',
- ],
- 'Weight' => [
- 'title' => '权重',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '30',
- ],
- ],
- ],
- ],
- 'CreatedTime' => [
- 'title' => '创建时间',
- 'description' => '',
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"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\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeExecution',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:DescribeExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"testRequestID\\",\\n \\"FlowName\\": \\"example-flow-name\\",\\n \\"Name\\": \\"exampe-alias-name\\",\\n \\"Description\\": \\"example description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": 30\\n }\\n ],\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\"\\n}","type":"json"}]',
+ 'translator' => 'machine',
],
- 'DescribeFlowAlias' => [
- 'summary' => '查询流程版本别名详情',
- 'path' => '',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DescribeFlow' => [
+ 'summary' => 'Retrieves information about a flow.',
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -2011,636 +965,499 @@
'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
- 'autoTest' => true,
+ 'abilityTreeCode' => '98859',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'FlowName',
+ 'name' => 'Name',
'in' => 'query',
- 'schema' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-flow-name',
- ],
+ 'schema' => ['description' => 'The name of the flow.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'Name',
+ 'name' => 'FlowVersion',
'in' => 'query',
- 'schema' => [
- 'title' => '别名',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-alias-name',
- ],
+ 'schema' => ['description' => 'The version of the flow.', 'type' => 'string', 'example' => '1', 'title' => '', 'required' => false],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816',
- ],
- 'Alias' => [
- 'title' => '别名信息',
- 'description' => '',
+ 'Type' => ['description' => 'The type of the flow.', 'type' => 'string', 'example' => 'FDL', 'title' => ''],
+ 'Definition' => ['description' => 'The definition of the flow. The definition must follow the syntax of Flow Definition Language (FDL). For forward compatibility, the system supports two versions of the flow definition specification.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"'."\n"
+ .'type: flow'."\n"
+ .'version: v1'."\n"
+ .'name: my_flow_name'."\n"
+ .'steps:'."\n"
+ .' - type: pass'."\n"
+ .' name: mypass'."\n"
+ .'"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"'."\n"
+ .'Type: StateMachine'."\n"
+ .'SpecVersion: v1'."\n"
+ .'Name: my_flow_name'."\n"
+ .'StartAt: my_state'."\n"
+ .'States:'."\n"
+ .' - Type: Pass'."\n"
+ .' Name: my_state'."\n"
+ .' End: true'."\n"
+ .'"', 'title' => ''],
+ 'RoleArn' => ['description' => 'The resource descriptor of the RAM role that the flow execution relies on. When a flow is executed, Serverless Workflow assumes this role to operate on related resources.', 'type' => 'string', 'example' => 'acs:ram:${region}:${accountID}:${role}', 'title' => ''],
+ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'Description' => ['description' => 'The description of the flow.', 'type' => 'string', 'example' => 'my test flow', 'title' => ''],
+ 'Name' => ['description' => 'The name of the flow.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'CreatedTime' => ['description' => 'The time when the flow was created.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'The time when the flow was last modified.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'Id' => ['description' => 'The unique ID of the flow.', 'type' => 'string', 'example' => 'e589e092-e2c0-4dee-b306-3574ddfdddf5****', 'title' => ''],
+ 'ExecutionMode' => ['description' => 'The execution mode. This is an enumeration. Valid values: Express and Standard. An empty string is equivalent to Standard.', 'type' => 'string', 'title' => '', 'example' => 'Standard'],
+ 'Environment' => [
'type' => 'object',
'properties' => [
- 'Name' => [
- 'title' => '别名名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'alias-name',
- ],
- 'Description' => [
- 'title' => '别名描述',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'alias description',
- ],
- 'RoutingConfigurations' => [
- 'title' => '权重配置',
- 'description' => '',
+ 'Variables' => [
'type' => 'array',
'items' => [
'type' => 'object',
'properties' => [
- 'Version' => [
- 'title' => '版本',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1',
- ],
- 'Weight' => [
- 'title' => '权重',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '10',
- ],
+ 'Name' => ['description' => 'The name of the variable.', 'type' => 'string', 'example' => 'key', 'title' => ''],
+ 'Value' => ['description' => 'The value of the variable.', 'type' => 'string', 'example' => 'value', 'title' => ''],
+ 'Description' => ['description' => 'The description of the variable.', 'type' => 'string', 'example' => 'description', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the flow execution.',
+ 'example' => '',
],
- ],
- 'CreatedTime' => [
- 'title' => '创建时间',
- 'description' => '',
- 'type' => 'string',
- 'example' => '2024-04-22T06:09:39.907Z',
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the flow execution.',
+ 'example' => '',
],
],
+ 'description' => 'The list of variables that can be accessed during the flow execution.',
+ 'title' => '',
+ 'example' => '',
],
+ 'ResourceGroupId' => ['type' => 'string', 'example' => 'rg-xxx', 'description' => '', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
+ ],
+ 403 => [
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
+ ],
+ [
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
+ ],
+ 412 => [
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => 'The resource to be modified has been changed. Please try again later.'],
+ ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
+ ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
+ ],
+ 500 => [
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"Alias\\": {\\n \\"Name\\": \\"alias-name\\",\\n \\"Description\\": \\"alias description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": 10\\n }\\n ],\\n \\"CreatedTime\\": \\"2024-04-22T06:09:39.907Z\\"\\n }\\n}","type":"json"}]',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Type\\": \\"FDL\\",\\n \\"Definition\\": \\"Legacy version:\\\\n\\\\\\"\\\\ntype: flow\\\\nversion: v1\\\\nname: my_flow_name\\\\nsteps:\\\\n - type: pass\\\\n name: mypass\\\\n\\\\\\"\\\\n\\\\nNew version:\\\\n\\\\\\"\\\\nType: StateMachine\\\\nSpecVersion: v1\\\\nName: my_flow_name\\\\nStartAt: my_state\\\\nStates:\\\\n - Type: Pass\\\\n Name: my_state\\\\n End: true\\\\n\\\\\\"\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddfdddf5****\\",\\n \\"ExecutionMode\\": \\"Standard\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\",\\n \\"Description\\": \\"description\\"\\n }\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-xxx\\"\\n}","type":"json"}]',
+ 'title' => 'DescribeFlow',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:DescribeFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
+ 'translator' => 'machine',
],
- 'UpdateFlowAlias' => [
- 'summary' => '更新流程版本别名配置',
+ 'DescribeFlowAlias' => [
+ 'summary' => 'Queries the details of a flow alias.',
'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'get',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '流程名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'example-flow-name',
- ],
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The name of the flow.', 'required' => true, 'example' => 'example-flow-name'],
],
[
'name' => 'Name',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '别名名称',
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'alias name',
- ],
- ],
- [
- 'name' => 'Description',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '别名描述',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => 'example description',
- ],
- ],
- [
- 'name' => 'RoutingConfigurations',
- 'in' => 'formData',
- 'style' => 'json',
- 'schema' => [
- 'title' => '权重配置',
- 'description' => '',
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Version' => [
- 'title' => '版本',
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '1',
- ],
- 'Weight' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
- ],
- 'required' => false,
- ],
- 'required' => false,
- ],
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The alias.', 'required' => true, 'example' => 'example-alias-name'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816',
- ],
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The ID of the request.', 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816'],
'Alias' => [
- 'title' => '别名信息',
- 'description' => '',
'type' => 'object',
'properties' => [
- 'Name' => [
- 'title' => '别名名称',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my-alias-name',
- ],
- 'Description' => [
- 'title' => '别名描述',
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my alias description',
- ],
+ 'Name' => ['type' => 'string', 'title' => '', 'description' => 'The name of the alias.', 'example' => 'alias-name'],
+ 'Description' => ['type' => 'string', 'title' => '', 'description' => 'The description of the alias.', 'example' => 'alias description'],
'RoutingConfigurations' => [
- 'title' => '权重配置',
- 'description' => '',
'type' => 'array',
'items' => [
- 'description' => '',
'type' => 'object',
'properties' => [
- 'Version' => [
- 'title' => '版本',
- 'description' => '',
- 'type' => 'string',
- 'example' => '1',
- ],
- 'Weight' => [
- 'title' => '权重',
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int32',
- 'example' => '20',
- ],
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The version.', 'example' => '1'],
+ 'Weight' => ['type' => 'integer', 'format' => 'int32', 'title' => '', 'description' => 'The weight.', 'example' => '10'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'description' => 'The weight configuration.',
+ 'example' => '',
],
- 'CreatedTime' => [
- 'title' => '创建时间',
- 'description' => '',
- 'type' => 'string',
- 'example' => '2025-10-24T14:11:26+08:00',
- ],
+ 'CreatedTime' => ['type' => 'string', 'title' => '', 'description' => 'The time when the alias was created.', 'example' => '2024-04-22T06:09:39.907Z'],
],
+ 'title' => '',
+ 'description' => 'The alias information.',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DescribeFlowAlias',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"Alias\\": {\\n \\"Name\\": \\"my-alias-name\\",\\n \\"Description\\": \\"my alias description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": 20\\n }\\n ],\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n }\\n}","type":"json"}]',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"Alias\\": {\\n \\"Name\\": \\"alias-name\\",\\n \\"Description\\": \\"alias description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": 10\\n }\\n ],\\n \\"CreatedTime\\": \\"2024-04-22T06:09:39.907Z\\"\\n }\\n}","type":"json"}]',
],
- 'DeleteFlowAlias' => [
- 'summary' => '删除流程别名',
- 'path' => '',
- 'methods' => [
- 'post',
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'DescribeMapRun' => [
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'write',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
- 'riskType' => 'high',
+ 'operationType' => 'get',
+ 'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
- 'autoTest' => true,
+ 'abilityTreeCode' => '227531',
+ 'abilityTreeNodes' => ['FEATUREfnfR0JC2A'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
+ 'name' => 'RequestId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The request ID.', 'type' => 'string', 'required' => false, 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164', 'title' => ''],
+ ],
+ [
'name' => 'FlowName',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'my_flow_name',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the flow.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'Name',
- 'in' => 'formData',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'alias_name',
- ],
+ 'name' => 'ExecutionName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the execution.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_exec_name', 'title' => ''],
+ ],
+ [
+ 'name' => 'MapRunName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the MapRun. When an execution starts a MapRun, a MapRunStarted event is generated. The MapRunName can be obtained from the output of this event.', 'type' => 'string', 'required' => true, 'example' => 'c39142f1345b196d678333c41f113200', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164',
+ 'Status' => ['description' => 'The status of the execution. Valid values:'."\n"
+ ."\n"
+ .'- **Pending**'."\n"
+ ."\n"
+ .'- **Running**'."\n"
+ ."\n"
+ .'- **Failed**'."\n"
+ ."\n"
+ .'- **Succeeded**'."\n"
+ ."\n"
+ .'- **Aborted**', 'type' => 'string', 'example' => 'Succeeded', 'title' => ''],
+ 'StoppedTime' => ['description' => 'The time when the execution stopped.', 'type' => 'string', 'example' => '2025-10-24T14:11:28+08:00', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164', 'title' => ''],
+ 'StartedTime' => ['description' => 'The time when the execution started.', 'type' => 'string', 'example' => '2025-10-24T14:11:26+08:00', 'title' => ''],
+ 'Concurrency' => ['description' => 'The concurrency limit for the MapRun at runtime.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ToleratedFailedCount' => ['description' => 'The maximum number of failed items that are allowed.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'ToleratedFailedPercentage' => ['description' => 'The maximum percentage of failed items that are allowed.', 'type' => 'number', 'format' => 'float', 'example' => '20', 'title' => ''],
+ 'ExecutionName' => ['description' => 'The name of the execution.', 'type' => 'string', 'example' => 'my_exec_name', 'title' => ''],
+ 'MapRunName' => ['description' => 'The name of the MapRun.', 'type' => 'string', 'example' => 'c39142f1345b196d678333c41f113000', 'title' => ''],
+ 'ItemCounts' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Pending' => ['description' => 'The number of pending items.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'Running' => ['description' => 'The number of running items.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'Succeed' => ['description' => 'The number of succeeded items.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'Failed' => ['description' => 'The number of failed items.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'Aborted' => ['description' => 'The number of aborted items.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'Total' => ['description' => 'The total number of items.', 'type' => 'integer', 'format' => 'int64', 'example' => '500', 'title' => ''],
+ ],
+ 'description' => 'A summary of the number of items in different processing states in the MapRun task.',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
- ],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\"\\n}","type":"json"}]',
- ],
- 'StartExecution' => [
- 'summary' => 'Starts the execution of a workflow.',
- 'methods' => [
- 'post',
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ],
+ 403 => [
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ],
+ [
+ ['errorCode' => 'ExecutionNotExists', 'errorMessage' => 'Execution %s for flow %s does not exist.', 'description' => 'Execution %s for flow %s does not exist.'],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
+ ],
+ 412 => [
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => 'The resource to be modified has been changed. Please try again later.'],
+ ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
+ ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
+ ],
+ 500 => [
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'DescribeMapRun',
+ 'summary' => 'Retrieves the details of a MapRun.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2025-10-24T14:11:28+08:00\\",\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\",\\n \\"StartedTime\\": \\"2025-10-24T14:11:26+08:00\\",\\n \\"Concurrency\\": 1,\\n \\"ToleratedFailedCount\\": 100,\\n \\"ToleratedFailedPercentage\\": 20,\\n \\"ExecutionName\\": \\"my_exec_name\\",\\n \\"MapRunName\\": \\"c39142f1345b196d678333c41f113000\\",\\n \\"ItemCounts\\": {\\n \\"Pending\\": 100,\\n \\"Running\\": 100,\\n \\"Succeed\\": 100,\\n \\"Failed\\": 100,\\n \\"Aborted\\": 100,\\n \\"Total\\": 500\\n }\\n}","type":"json"}]',
+ ],
+ 'DescribeRegions' => [
+ 'summary' => 'Queries the regions supported by CloudFlow.',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
+ 'operationType' => 'get',
'riskType' => 'none',
- 'chargeType' => 'paid',
- 'abilityTreeCode' => '98867',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '264118',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'FlowName',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the workflow to be executed.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
- ],
- [
- 'name' => 'ExecutionName',
+ 'name' => 'AcceptLanguage',
'in' => 'formData',
'schema' => [
- 'description' => 'The name of the execution. The execution name is unique within a workflow. Configure this parameter based on the following rules:'."\n"
+ 'description' => 'The language of the response. You can specify this parameter to return information about regions in Chinese or English. For more information, see [RFC 7231](https://datatracker.ietf.org/doc/html/rfc7231). Valid values:'."\n"
."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'exec',
- ],
- ],
- [
- 'name' => 'Input',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The input of the execution, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"key":"value"}',
- ],
- ],
- [
- 'name' => 'CallbackFnFTaskToken',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'Specifies that the **TaskToken**-related tasks are called back after the execution in the flow ends.'."\n",
+ .'- zh-CN: Chinese.'."\n"
+ ."\n"
+ .'- en-US: English.'."\n"
+ ."\n"
+ .'Default value: zh-CN.',
'type' => 'string',
'required' => false,
- 'example' => '12',
- ],
- ],
- [
- 'name' => 'Qualifier',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '指定流程版本或别名',
- 'type' => 'string',
- 'example' => '1',
+ 'example' => 'zh-CN',
+ 'default' => 'zh-CN',
+ 'enum' => ['zh-CN', 'en-US'],
+ 'title' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response parameters.'."\n",
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of response',
'type' => 'object',
'properties' => [
- 'Status' => [
- 'description' => 'The execution status. Valid values:'."\n"
- ."\n"
- .'* **Starting**'."\n"
- .'* **Running**'."\n"
- .'* **Stopped**'."\n"
- .'* **Succeeded**'."\n"
- .'* **Failed**'."\n"
- .'* **TimedOut**'."\n",
- 'type' => 'string',
- 'example' => 'Succeeded',
- ],
- 'StoppedTime' => [
- 'description' => 'The time when the execution stopped.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'StartedTime' => [
- 'description' => 'The time when the execution started.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'FlowDefinition' => [
- 'description' => 'The definition of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'Output' => [
- 'description' => 'The execution result, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
- 'FlowName' => [
- 'description' => 'The name of the workflow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'Name' => [
- 'description' => 'The name of the execution.'."\n",
- 'type' => 'string',
- 'example' => 'exec1',
- ],
- 'Input' => [
- 'description' => 'The input of the execution, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
+ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '0aa3f793-6e5f-8472-c7a2-70d2b84c04ac'],
+ 'Regions' => [
+ 'description' => 'The information about the regions.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Region' => [
+ 'description' => 'A collection of region information.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'A region object.',
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-qingdao', 'title' => ''],
+ 'RegionEndpoint' => ['description' => 'The public endpoint of the region.', 'type' => 'string', 'example' => 'cn-qingdao.fnf.aliyuncs.com', 'title' => ''],
+ 'LocalName' => ['description' => 'The name of the region.', 'type' => 'string', 'example' => 'China (Qingdao)', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'ExecutionAlreadyExists',
- 'errorMessage' => 'Execution %s for flow %s already exists.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation %s is incorrect. Please check.', 'description' => 'The requested API operation %s is incorrect. Please check.'],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version %s is not supported yet. Please check.', 'description' => 'The requested API version %s is not supported yet. Please check.'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- ],
- [
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- ],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
- ],
- 500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"旧版:\\\\n\\\\\\"type: flow\\\\\\\\nversion: v1\\\\\\\\nname: my_flow_name\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\\\\\"\\\\n\\\\n新版:\\\\n\\\\\\"Type: StateMachine\\\\\\\\nSpecVersion: v1\\\\\\\\nName: my_flow_name\\\\\\\\nStartAt: my_state\\\\\\\\nStates:\\\\\\\\n - Type: Pass\\\\\\\\n Name: my_state\\\\\\\\n End: true\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\"\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'StartExecution',
- 'description' => '## [](#)Usage notes'."\n"
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0aa3f793-6e5f-8472-c7a2-70d2b84c04ac\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"RegionId\\": \\"cn-qingdao\\",\\n \\"RegionEndpoint\\": \\"cn-qingdao.fnf.aliyuncs.com\\",\\n \\"LocalName\\": \\"China (Qingdao)\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'DescribeRegions',
+ 'responseParamsDescription' => 'Sample response in JSON format'."\n"
."\n"
- .'* The flow is created. A flow only in standard mode is supported.'."\n"
- .'* If you do not specify an execution, the system automatically generates an execution and starts the execution.'."\n"
- .'* If an ongoing execution has the same name as that of the execution to be started, the system directly returns the ongoing execution.'."\n"
- .'* If the ongoing execution with the same name has ended (succeeded or failed), `ExecutionAlreadyExists` is returned.'."\n"
- .'* If no execution with the same name exists, the system starts a new execution.'."\n",
+ .'```json'."\n"
+ .'{'."\n"
+ .' "RequestId": "67623904-2da4-d950-c8c0-7c68573899ab",'."\n"
+ .' "Regions": {'."\n"
+ .' "Region": ['."\n"
+ .' {'."\n"
+ .' "RegionId": "cn-qingdao",'."\n"
+ .' "RegionEndpoint": "cn-qingdao.fnf.aliyuncs.com",'."\n"
+ .' "LocalName": "China (Qingdao)"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' }'."\n"
+ .'}'."\n"
+ .'```',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ 'translator' => 'manual',
],
- 'StopExecution' => [
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'DescribeSchedule' => [
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'abilityTreeCode' => '98868',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '98860',
+ 'abilityTreeNodes' => ['FEATUREfnf06LH4G'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the workflow to be stopped. You can call the **ListFlows** operation to obtain the value of this parameter.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
- ],
- [
- 'name' => 'ExecutionName',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the execution to be stopped. You can call the **ListExecutions** operation to obtain the value of this parameter.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'exec',
- ],
- ],
- [
- 'name' => 'Cause',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The reason for stopping the execution. The value must be 1 to 4,096 characters in length.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'for test',
- ],
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the flow that is associated with the time-based schedule. The name must be unique within the region and cannot be modified after the time-based schedule is created. The name must meet the following conventions:'."\n"
+ ."\n"
+ .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
+ .'* The name must start with a letter or an underscore (\\_).'."\n"
+ .'* The name is case-sensitive.'."\n"
+ .'* The name must be 1 to 128 characters in length.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testFlowName', 'title' => ''],
],
[
- 'name' => 'Error',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The error code for stopping the execution. The error code must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'nill',
- ],
+ 'name' => 'ScheduleName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The name of the time-based schedule. The name must meet the following conventions:'."\n"
+ ."\n"
+ .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
+ .'* The name must start with a letter or an underscore (\\_).'."\n"
+ .'* The name is case-sensitive.'."\n"
+ .'* The name must be 1 to 128 characters in length.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testScheduleName', 'title' => ''],
],
],
'responses' => [
@@ -2649,169 +1466,64 @@
'description' => 'Schema of response.'."\n",
'type' => 'object',
'properties' => [
- 'Status' => [
- 'description' => 'The execution status. Valid values:'."\n"
- ."\n"
- .'* **Starting**'."\n"
- .'* **Running**'."\n"
- .'* **Stopped**'."\n"
- .'* **Succeeded**'."\n"
- .'* **Failed**'."\n"
- .'* **TimedOut**'."\n",
- 'type' => 'string',
- 'example' => 'Running',
- ],
- 'StoppedTime' => [
- 'description' => 'The time when the execution stopped.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'StartedTime' => [
- 'description' => 'The time when the execution started.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'FlowDefinition' => [
- 'description' => 'The definition of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'Output' => [
- 'description' => 'The execution result, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
- 'FlowName' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'Name' => [
- 'description' => 'The name of the execution.'."\n",
- 'type' => 'string',
- 'example' => 'exec',
- ],
- 'Input' => [
- 'description' => 'The input of the execution, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
- 'RoleArn' => [
- 'description' => 'The Alibaba Cloud resource name (ARN) of the role that executed the flow. If the RoleArn in the flow definition is changed during the execution of the flow, the system records and returns a snapshot of the original RoleArn.'."\n"
- ."\n"
- .'> If you do not specify the RoleArn parameter in the request parameters, the response parameters do not contain the RoleArn parameter.'."\n",
- 'type' => 'string',
- 'example' => 'acs:ram:${region}:${accountID}:${role}',
- ],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'Description' => ['description' => 'The description of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'test description', 'title' => ''],
+ 'ScheduleId' => ['description' => 'The ID of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'testScheduleId', 'title' => ''],
+ 'Payload' => ['description' => 'The trigger message of the time-based schedule.'."\n", 'type' => 'string', 'example' => '{"key": "value"}', 'title' => ''],
+ 'ScheduleName' => ['description' => 'The name of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'testScheduleName', 'title' => ''],
+ 'CreatedTime' => ['description' => 'The time when the time-based schedule was created.'."\n", 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'The time when the time-based schedule was last modified.'."\n", 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'CronExpression' => ['description' => 'The CRON expression.'."\n", 'type' => 'string', 'example' => '0 * * * * *', 'title' => ''],
+ 'Enable' => ['description' => 'Indicates whether the time-based schedule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* **true**'."\n"
+ .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'ExecutionAlreadyCompleted',
- 'errorMessage' => 'Execution \'%s\' for flow \'%s\' has already completed.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
],
[
- [
- 'errorCode' => 'ExecutionNotExists',
- 'errorMessage' => 'Execution %s for flow %s does not exist.',
- ],
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- ],
- 409 => [
- [
- 'errorCode' => 'ConcurrentUpdateError',
- 'errorMessage' => 'Update conflict, please retry.',
- ],
- ],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => ''],
+ ['errorCode' => 'ScheduleNotExists', 'errorMessage' => 'The schedule %s for flow %s does not exist.', 'description' => ''],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
+ ],
+ ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"test description\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"testScheduleName\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'title' => 'DescribeSchedule',
+ 'summary' => 'Queries the detailed information about a time-based schedule.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:DescribeSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Status\\": \\"Running\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"旧版:\\\\n\\\\\\"type: flow\\\\\\\\nversion: v1\\\\\\\\nname: my_flow_name\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\\\\\"\\\\n\\\\n新版:\\\\n\\\\\\"Type: StateMachine\\\\\\\\nSpecVersion: v1\\\\\\\\nName: my_flow_name\\\\\\\\nStartAt: my_state\\\\\\\\nStates:\\\\\\\\n - Type: Pass\\\\\\\\n Name: my_state\\\\\\\\n End: true\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\"\\n}","errorExample":""},{"type":"xml","example":"<StopExecutionResponse>\\n <Status>Running</Status>\\n <StoppedTime>2019-01-01T01:01:01.001Z</StoppedTime>\\n <RequestId>testRequestId</RequestId>\\n <StartedTime>2019-01-01T01:01:01.001Z</StartedTime>\\n <FlowDefinition>version: v1.0\\\\ntype: flow\\\\nname: test\\\\nsteps:\\\\n - type: pass\\\\n name: mypass</FlowDefinition>\\n <Output>{\\"key\\":\\"value\\"}</Output>\\n <FlowName>flow</FlowName>\\n <Name>exec</Name>\\n <Input>{\\"key\\":\\"value\\"}</Input>\\n</StopExecutionResponse>","errorExample":""}]',
- 'title' => 'StopExecution',
- 'summary' => 'Stops an execution that is in progress in a flow.',
- 'description' => '## [](#)Usage notes'."\n"
- ."\n"
- .'The flow must be in progress.'."\n",
],
- 'DescribeExecution' => [
- 'summary' => 'Queries an execution in a flow. The long polling mode is supported. The maximum waiting period for long polling depends on the value of the WaitTimeSeconds parameter.',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'GetExecutionHistory' => [
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -2820,51 +1532,31 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '98858',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '98861',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the workflow.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
+ 'schema' => ['description' => 'The name of the workflow.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'flow', 'title' => ''],
],
[
'name' => 'ExecutionName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the execution.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'exec',
- ],
+ 'schema' => ['description' => 'The name of the execution.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'exec', 'title' => ''],
],
[
- 'name' => 'WaitTimeSeconds',
+ 'name' => 'NextToken',
'in' => 'query',
- 'schema' => [
- 'description' => 'The maximum period of time for long polling waits. Valid values: 0 to 60. Unit: seconds. Configure this parameter based on the following rules:'."\n"
- ."\n"
- .'* If the value is 0, the system immediately returns the current execution status.'."\n"
- .'* If the value is greater than 0, the long polling request waits until the execution ends or the specified period elapses.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '20',
- ],
+ 'schema' => ['description' => 'The name of the event to start the query. You can obtain the value from the response data.'."\n", 'type' => 'string', 'required' => false, 'example' => 'flow_xxx', 'title' => ''],
+ ],
+ [
+ 'name' => 'Limit',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The number of workflows that you want to query. Valid values: 1-999. Default value: 60.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
],
'responses' => [
@@ -2873,180 +1565,101 @@
'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'Status' => [
- 'description' => 'The execution status. Valid values:'."\n"
- ."\n"
- .'* **Starting**'."\n"
- .'* **Running**'."\n"
- .'* **Stopped**'."\n"
- .'* **Succeeded**'."\n"
- .'* **Failed**'."\n"
- .'* **TimedOut**'."\n",
- 'type' => 'string',
- 'example' => 'Succeeded',
- ],
- 'StoppedTime' => [
- 'description' => 'The time when the execution stopped.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'StartedTime' => [
- 'description' => 'The time when the execution started.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'FlowDefinition' => [
- 'description' => 'The definition of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'Output' => [
- 'description' => 'The execution result, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
- 'FlowName' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'Name' => [
- 'description' => 'The name of the execution.'."\n",
- 'type' => 'string',
- 'example' => 'exec',
- ],
- 'Input' => [
- 'description' => 'The input of the execution, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
- 'Environment' => [
- 'title' => 'Flow 执行时使用的环境变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Variables' => [
- 'title' => 'Flow 执行时使用的环境变量列表',
- 'type' => 'array',
- 'items' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
- ],
- ],
+ 'NextToken' => ['description' => 'You do not need to specify this parameter for the first request. The returned value of **ScheduleEventId** is used as the token for the next query. No value is returned for the last query.'."\n", 'type' => 'string', 'example' => '3', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'Events' => [
+ 'description' => 'The events.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => ['description' => 'The type of the execution step. Valid values:'."\n"
+ ."\n"
+ .'* **StepEntered**'."\n"
+ .'* **StepStarted**'."\n"
+ .'* **StepSucceeded**'."\n"
+ .'* **StepFailed**'."\n"
+ .'* **StepExited**'."\n"
+ .'* **BranchEntered**'."\n"
+ .'* **BranchExited**'."\n"
+ .'* **IterationEntered**'."\n"
+ .'* **IterationExited**'."\n"
+ .'* **TaskScheduled**'."\n"
+ .'* **TaskStarted**'."\n"
+ .'* **TaskSubmitted**'."\n"
+ .'* **TaskSubmitFailed**'."\n"
+ .'* **TaskSucceeded**'."\n"
+ .'* **TaskFailed**'."\n"
+ .'* **TaskTimedOut**'."\n"
+ .'* **ExecutionStarted**'."\n"
+ .'* **ExecutionStopped**'."\n"
+ .'* **ExecutionSucceeded**'."\n"
+ .'* **ExecutionFailed**'."\n"
+ .'* **ExecutionTimedOut**'."\n", 'type' => 'string', 'example' => 'TaskSucceeded', 'title' => ''],
+ 'EventId' => ['description' => 'The ID of the execution step.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''],
+ 'Time' => ['description' => 'The time when the event was updated.'."\n", 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'ScheduleEventId' => ['description' => 'The ID of the scheduling step.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'EventDetail' => ['description' => 'The details about the execution step.'."\n", 'type' => 'string', 'example' => '{}', 'title' => ''],
+ 'StepName' => ['description' => 'The name of the execution step.'."\n", 'type' => 'string', 'example' => 'passStep', 'title' => ''],
],
+ 'title' => '',
],
+ 'title' => '',
],
],
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => ''],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => ''],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => ''],
],
[
- [
- 'errorCode' => 'ExecutionNotExists',
- 'errorMessage' => 'Execution %s for flow %s does not exist.',
- ],
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- ],
- 412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
+ ['errorCode' => 'ExecutionNotExists', 'errorMessage' => 'Execution %s for flow %s does not exist.', 'description' => ''],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => ''],
],
415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => ''],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"3\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Events\\": [\\n {\\n \\"Type\\": \\"TaskSucceeded\\",\\n \\"EventId\\": 2,\\n \\"Time\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"ScheduleEventId\\": 1,\\n \\"EventDetail\\": \\"{}\\",\\n \\"StepName\\": \\"passStep\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'title' => 'GetExecutionHistory',
+ 'summary' => 'Queries the details about each step in an execution process.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'fnf:GetExecutionHistory',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"旧版:\\\\n\\\\\\"type: flow\\\\\\\\nversion: v1\\\\\\\\nname: my_flow_name\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\\\\\"\\\\n\\\\n新版:\\\\n\\\\\\"Type: StateMachine\\\\\\\\nSpecVersion: v1\\\\\\\\nName: my_flow_name\\\\\\\\nStartAt: my_state\\\\\\\\nStates:\\\\\\\\n - Type: Pass\\\\\\\\n Name: my_state\\\\\\\\n End: true\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'DescribeExecution',
],
'ListExecutions' => [
- 'summary' => 'Queries all historical executions of a flow.',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'summary' => 'Lists the execution history of a flow.',
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -3059,313 +1672,212 @@
'riskType' => 'none',
'chargeType' => 'free',
'abilityTreeCode' => '98862',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the flow. The name must be unique within the region and cannot be modified after the flow is created. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
+ 'schema' => ['description' => 'The name of the flow. The name must be unique within the same region and cannot be changed after the flow is created. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- Can contain letters (a-z and A-Z), digits (0-9), underscores (\\_), and hyphens (-).'."\n"
+ ."\n"
+ .'- Must start with a letter (a-z or A-Z) or an underscore (\\_).'."\n"
+ ."\n"
+ .'- Is case-sensitive.'."\n"
+ ."\n"
+ .'- Must be 1 to 128 characters in length.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
'name' => 'NextToken',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the execution to start the query. You can obtain the value from the response data. You do not need to specify this parameter for the first request.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'flow_xxx',
- ],
+ 'schema' => ['description' => 'The token to start the query from. Obtain the token from the response of this operation. This parameter is not required for the first query.', 'type' => 'string', 'required' => false, 'example' => 'flow_xxx', 'title' => ''],
],
[
'name' => 'Limit',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of executions that you want to query. Valid values: 1-99. Default value: 60.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The number of executions to query. The value must be in the range of \\[1, 100]. The default value is 60.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
'name' => 'Status',
'in' => 'query',
- 'schema' => [
- 'description' => 'The status of the execution that you want to filter. Valid values:'."\n"
- ."\n"
- .'* **Starting**'."\n"
- .'* **Running**'."\n"
- .'* **Stopped**'."\n"
- .'* **Succeeded**'."\n"
- .'* **Failed**'."\n"
- .'* **TimedOut**'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'Succeeded',
- ],
+ 'schema' => ['description' => 'The status of the executions to filter. Valid values:'."\n"
+ ."\n"
+ .'- **Starting**'."\n"
+ ."\n"
+ .'- **Running**'."\n"
+ ."\n"
+ .'- **Stopped**'."\n"
+ ."\n"
+ .'- **Succeeded**'."\n"
+ ."\n"
+ .'- **Failed**'."\n"
+ ."\n"
+ .'- **TimedOut**', 'type' => 'string', 'required' => false, 'example' => 'Succeeded', 'title' => ''],
],
[
'name' => 'StartedTimeBegin',
'in' => 'query',
- 'schema' => [
- 'description' => 'The beginning of the time range to query executions. Specify the value in the UTC RFC3339 format.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '2020-12-02T02:39:20.402Z',
- ],
+ 'schema' => ['description' => 'Filters for executions that started after this time. The time must be in the UTC RFC3339 format.', 'type' => 'string', 'required' => false, 'example' => '2020-12-02T02:39:20.402Z', 'title' => ''],
],
[
'name' => 'StartedTimeEnd',
'in' => 'query',
- 'schema' => [
- 'description' => 'The end of the time range to query executions. Specify the value in the UTC RFC3339 format.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '2020-12-02T02:23:54.817Z',
- ],
+ 'schema' => ['description' => 'Filters for executions that started before this time. The time must be in the UTC RFC3339 format.', 'type' => 'string', 'required' => false, 'example' => '2020-12-02T02:23:54.817Z', 'title' => ''],
],
[
'name' => 'ExecutionNamePrefix',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name prefix of the execution.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'run',
- ],
+ 'schema' => ['description' => 'The prefix of the execution name.', 'type' => 'string', 'required' => false, 'example' => 'run', 'title' => ''],
],
[
'name' => 'MetadataOnly',
'in' => 'query',
- 'schema' => [
- 'title' => '是否只返回执行的元数据。为true时,返回值中不包括Flow定义、Input和Output,为false时会返回全部数据',
- 'type' => 'boolean',
- ],
+ 'schema' => ['description' => 'Specifies whether to return only the metadata of the executions. If you set this to true, the response does not include the flow definition, input, or output. If you set this to false, the response includes all data.', 'type' => 'boolean', 'title' => '', 'required' => false, 'example' => ''],
],
[
'name' => 'Qualifier',
'in' => 'query',
- 'schema' => [
- 'title' => '指定流程的版本或别名',
- 'type' => 'string',
- 'example' => '1',
- ],
+ 'schema' => ['description' => 'The version or alias of the flow.', 'type' => 'string', 'example' => '1', 'title' => '', 'required' => false],
],
[
'name' => 'MapRunName',
'in' => 'query',
- 'schema' => [
- 'title' => 'MapRun 名称',
- 'type' => 'string',
- ],
+ 'schema' => ['description' => 'The name of the MapRun. When a MapRun is started in an execution, a MapRunStarted event is generated. You can get the MapRunName from the output of the MapRunStarted event.'."\n"
+ ."\n"
+ .'You can set MapRunName to filter child executions started by a specific MapRun in the current flow.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'c39142f1345b196d678333c41f113100'],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The returned data.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'NextToken' => [
- 'description' => 'The start key for the next query. This parameter is not returned if this is the last query.'."\n"
- ."\n"
- .'> This parameter may not be displayed in the response because no next page exists.'."\n",
- 'type' => 'string',
- 'example' => 'exec2',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
+ 'NextToken' => ['description' => 'The token to start the next query. This parameter is not returned if no more data is available.'."\n"
+ ."\n"
+ .'> This parameter might not appear in the response if there are no more results.', 'type' => 'string', 'example' => '397aba96-4d85-11ef-9c97-************', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '69AD2AA7-DB47-449B-941B-B14409DF****', 'title' => ''],
'Executions' => [
- 'description' => 'The information about executions.'."\n",
+ 'description' => 'The execution information.',
'type' => 'array',
'items' => [
- 'description' => '',
+ 'description' => 'The execution information.',
'type' => 'object',
'properties' => [
- 'Status' => [
- 'description' => 'The status of the execution.'."\n",
- 'type' => 'string',
- 'example' => 'Succeeded',
- ],
- 'StoppedTime' => [
- 'description' => 'The time when the execution stopped.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'StartedTime' => [
- 'description' => 'The time when the execution started.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'FlowDefinition' => [
- 'description' => 'The definition of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass',
- ],
- 'Output' => [
- 'description' => 'The output of the execution, which is in the JSON format'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
- 'FlowName' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'flow',
- ],
- 'Name' => [
- 'description' => 'The name of the execution.'."\n",
- 'type' => 'string',
- 'example' => 'exec',
- ],
- 'Input' => [
- 'description' => 'The input of the execution, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
+ 'Status' => ['description' => 'The status of the execution.', 'type' => 'string', 'example' => 'Succeeded', 'title' => ''],
+ 'StoppedTime' => ['description' => 'The time when the execution stopped.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'StartedTime' => ['description' => 'The time when the execution started.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'FlowDefinition' => ['description' => 'The definition of the executed flow.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"type: flow\\nversion: v1\\nname: my_flow_name\\nsteps:\\n - type: pass\\n name: mypass"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"Type: StateMachine\\nSpecVersion: v1\\nName: my_flow_name\\nStartAt: my_state\\nStates:\\n - Type: Pass\\n Name: my_state\\n End: true"', 'title' => ''],
+ 'Output' => ['description' => 'The output of the execution, in JSON object format.', 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
+ 'FlowName' => ['description' => 'The name of the flow.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'Name' => ['description' => 'The name of the execution.', 'type' => 'string', 'example' => 'my_exec_name', 'title' => ''],
+ 'Input' => ['description' => 'The input of the execution, in JSON object format.', 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
'Environment' => [
- 'title' => 'Flow 执行时使用的环境变量列表',
'type' => 'object',
'properties' => [
'Variables' => [
- 'title' => 'Flow 执行时使用的环境变量列表',
'type' => 'array',
'items' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
'type' => 'object',
'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
- ],
+ 'Name' => ['description' => 'The name of the variable.', 'type' => 'string', 'example' => 'key', 'title' => ''],
+ 'Value' => ['description' => 'The value of the variable.', 'type' => 'string', 'example' => 'value', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the flow execution.',
+ 'example' => '',
],
+ 'title' => '',
+ 'description' => 'The list of environment variables used during the flow execution.',
+ 'example' => '',
],
],
+ 'description' => 'The list of environment variables used during the flow execution.',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
],
[
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
],
412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => 'The resource to be modified has been changed. Please try again later.'],
],
415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
],
429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"397aba96-4d85-11ef-9c97-************\\",\\n \\"RequestId\\": \\"69AD2AA7-DB47-449B-941B-B14409DF****\\",\\n \\"Executions\\": [\\n {\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"旧版:\\\\n\\\\\\"type: flow\\\\\\\\nversion: v1\\\\\\\\nname: my_flow_name\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\\\\\"\\\\n\\\\n新版:\\\\n\\\\\\"Type: StateMachine\\\\\\\\nSpecVersion: v1\\\\\\\\nName: my_flow_name\\\\\\\\nStartAt: my_state\\\\\\\\nStates:\\\\\\\\n - Type: Pass\\\\\\\\n Name: my_state\\\\\\\\n End: true\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"397aba96-4d85-11ef-9c97-************\\",\\n \\"RequestId\\": \\"69AD2AA7-DB47-449B-941B-B14409DF****\\",\\n \\"Executions\\": [\\n {\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"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\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n }\\n ]\\n}","type":"json"}]',
'title' => 'ListExecutions',
- 'description' => '## [](#)Usage notes'."\n"
+ 'description' => '## Description'."\n"
."\n"
- .'After you delete a flow, you cannot query its historical executions, even if you create a flow of the same name.'."\n",
+ .'You cannot query the execution history of a flow after it is deleted, even if you create a new flow with the same name.',
'requestParamsDescription' => ' ',
'responseParamsDescription' => ' ',
'extraInfo' => ' ',
- ],
- 'GetExecutionHistory' => [
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ListExecutions',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ 'translator' => 'machine',
+ ],
+ 'ListFlowAliases' => [
+ 'summary' => 'Lists the aliases for a flow.',
+ 'path' => '',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -3374,465 +1886,309 @@
'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
- 'abilityTreeCode' => '98861',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'autoTest' => true,
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the workflow.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
- ],
- [
- 'name' => 'ExecutionName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the execution.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'exec',
- ],
+ 'schema' => ['type' => 'string', 'required' => true, 'title' => '', 'description' => 'The name of the flow.', 'example' => 'example-flow-name'],
],
[
'name' => 'NextToken',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the event to start the query. You can obtain the value from the response data.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'flow_xxx',
- ],
+ 'schema' => ['type' => 'string', 'required' => false, 'title' => '', 'description' => 'The token that is used to retrieve the next page of results.', 'example' => 'token'],
],
[
'name' => 'Limit',
'in' => 'query',
- 'schema' => [
- 'description' => 'The number of workflows that you want to query. Valid values: 1-999. Default value: 60.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'example' => '1',
- ],
+ 'schema' => ['type' => 'integer', 'format' => 'int32', 'title' => '', 'description' => 'The maximum number of results to return.', 'required' => false, 'example' => '10'],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'NextToken' => [
- 'description' => 'You do not need to specify this parameter for the first request. The returned value of **ScheduleEventId** is used as the token for the next query. No value is returned for the last query.'."\n",
- 'type' => 'string',
- 'example' => '3',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'Events' => [
- 'description' => 'The events.'."\n",
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The ID of the request.', 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164'],
+ 'NextToken' => ['type' => 'string', 'title' => '', 'description' => 'The token that is used to retrieve the next page of results.', 'example' => 'testNextToken'],
+ 'Aliases' => [
'type' => 'array',
'items' => [
- 'description' => '',
'type' => 'object',
'properties' => [
- 'Type' => [
- 'description' => 'The type of the execution step. Valid values:'."\n"
- ."\n"
- .'* **StepEntered**'."\n"
- .'* **StepStarted**'."\n"
- .'* **StepSucceeded**'."\n"
- .'* **StepFailed**'."\n"
- .'* **StepExited**'."\n"
- .'* **BranchEntered**'."\n"
- .'* **BranchExited**'."\n"
- .'* **IterationEntered**'."\n"
- .'* **IterationExited**'."\n"
- .'* **TaskScheduled**'."\n"
- .'* **TaskStarted**'."\n"
- .'* **TaskSubmitted**'."\n"
- .'* **TaskSubmitFailed**'."\n"
- .'* **TaskSucceeded**'."\n"
- .'* **TaskFailed**'."\n"
- .'* **TaskTimedOut**'."\n"
- .'* **ExecutionStarted**'."\n"
- .'* **ExecutionStopped**'."\n"
- .'* **ExecutionSucceeded**'."\n"
- .'* **ExecutionFailed**'."\n"
- .'* **ExecutionTimedOut**'."\n",
- 'type' => 'string',
- 'example' => 'TaskSucceeded',
- ],
- 'EventId' => [
- 'description' => 'The ID of the execution step.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '2',
- ],
- 'Time' => [
- 'description' => 'The time when the event was updated.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'ScheduleEventId' => [
- 'description' => 'The ID of the scheduling step.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'EventDetail' => [
- 'description' => 'The details about the execution step.'."\n",
- 'type' => 'string',
- 'example' => '{}',
- ],
- 'StepName' => [
- 'description' => 'The name of the execution step.'."\n",
- 'type' => 'string',
- 'example' => 'passStep',
+ 'Name' => ['type' => 'string', 'title' => '', 'description' => 'The name of the alias.', 'example' => 'my-alias-name'],
+ 'Description' => ['type' => 'string', 'title' => '', 'description' => 'The description of the alias.', 'example' => 'my alias description'],
+ 'RoutingConfigurations' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The version of the flow.', 'example' => '1'],
+ 'Weight' => ['type' => 'string', 'title' => '', 'description' => 'The weight.', 'example' => '20'],
+ ],
+ 'description' => 'The traffic distribution configuration. You can specify one or two flow versions. When an execution is started using the alias, the system selects a flow version based on its weight.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'The traffic distribution configuration. You can specify one or two flow versions. When an execution is started using the alias, the system selects a flow version based on its weight.',
+ 'example' => '',
],
+ 'CreatedTime' => ['type' => 'string', 'title' => '', 'description' => 'The time when the alias was created.', 'example' => '2025-10-24T14:11:26+08:00'],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'description' => 'A list of aliases.',
+ 'example' => '',
],
],
+ 'title' => '',
+ 'description' => 'The response schema.',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'ListFlowAliases',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\",\\n \\"NextToken\\": \\"testNextToken\\",\\n \\"Aliases\\": [\\n {\\n \\"Name\\": \\"my-alias-name\\",\\n \\"Description\\": \\"my alias description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": \\"20\\"\\n }\\n ],\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'ListFlowVersions' => [
+ 'summary' => 'Lists the versions of a flow.',
+ 'path' => '',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
],
- 403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'FlowName',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The name of the flow.', 'required' => true, 'example' => 'example-flow-name'],
],
[
- [
- 'errorCode' => 'ExecutionNotExists',
- 'errorMessage' => 'Execution %s for flow %s does not exist.',
- ],
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The token for the next page of results.', 'required' => false, 'example' => 'token'],
],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
+ [
+ 'name' => 'Limit',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The maximum number of results to return.', 'required' => false, 'example' => '10'],
],
- 500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The request ID.', 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816'],
+ 'NextToken' => ['type' => 'string', 'title' => '', 'description' => 'The token for the next page of results.', 'example' => 'token'],
+ 'FlowVersions' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The version name.', 'example' => '1'],
+ 'Description' => ['type' => 'string', 'title' => '', 'description' => 'The version description.', 'example' => 'version description'],
+ 'CreatedTime' => ['type' => 'string', 'title' => '', 'description' => 'The time when the version was created.', 'example' => '2025-10-24T14:11:26+08:00'],
+ ],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'The list of flow versions.',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'description' => 'The response schema.',
+ 'example' => '',
],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"3\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Events\\": [\\n {\\n \\"Type\\": \\"TaskSucceeded\\",\\n \\"EventId\\": 2,\\n \\"Time\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"ScheduleEventId\\": 1,\\n \\"EventDetail\\": \\"{}\\",\\n \\"StepName\\": \\"passStep\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'GetExecutionHistory',
- 'summary' => 'Queries the details about each step in an execution process.',
- ],
- 'StartSyncExecution' => [
- 'summary' => 'Synchronously starts an execution in a flow.',
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'https',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'ListFlowVersions',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"NextToken\\": \\"token\\",\\n \\"FlowVersions\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Description\\": \\"version description\\",\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n }\\n ]\\n}","type":"json"}]',
+ ],
+ 'ListFlows' => [
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'readAndWrite',
+ 'operationType' => 'read',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'update',
- 'riskType' => 'high',
- 'chargeType' => 'paid',
- 'abilityTreeCode' => '195751',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '98863',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'FlowName',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the workflow to be executed.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'my_flow_name',
- ],
- ],
- [
- 'name' => 'ExecutionName',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the execution that you want to start. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n"
- ."\n"
- .'Different from the StartExecution operation, in the synchronous execution mode, the execution name is no longer required to be unique within a flow. You can choose to provide an execution name to identify the current execution. In this case, the system adds a UUID to the current execution name. The used format is {ExecutionName}:{UUID}. If you do not specify the execution name, the system automatically generates an execution name.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'my_exec_name',
- ],
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Starting name for flow query.', 'type' => 'string', 'required' => false, 'example' => 'flow_nextxxx', 'title' => ''],
],
[
- 'name' => 'Input',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'The input of the execution, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"key":"value"}',
- ],
+ 'name' => 'Limit',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Query quantity. The value range is \\[1, 1000), and the default value is 60.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''],
],
[
- 'name' => 'Qualifier',
- 'in' => 'formData',
- 'schema' => [
- 'title' => '指定流程版本或别名',
- 'type' => 'string',
- 'example' => '1',
- ],
+ 'name' => 'ResourceGroupId',
+ 'in' => 'query',
+ 'schema' => ['type' => 'string', 'example' => 'rg-xxx', 'description' => '', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'Flow list.',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'FlowName' => [
- 'description' => 'The name of the flow.'."\n",
- 'type' => 'string',
- 'example' => 'my_flow_name',
- ],
- 'Name' => [
- 'description' => 'The name of the execution.'."\n",
- 'type' => 'string',
- 'example' => 'my_exec_name:{UUID}',
- ],
- 'Status' => [
- 'description' => 'The status of the execution. Valid values:'."\n"
- ."\n"
- .'* **Starting**'."\n"
- .'* **Running**'."\n"
- .'* **Stopped**'."\n"
- .'* **Succeeded**'."\n"
- .'* **Failed**'."\n"
- .'* **TimedOut**'."\n",
- 'type' => 'string',
- 'example' => 'Succeeded',
- ],
- 'ErrorCode' => [
- 'description' => 'The error code that is returned if the execution failed.'."\n",
- 'type' => 'string',
- 'example' => 'ActionNotSupported',
- ],
- 'ErrorMessage' => [
- 'description' => 'The error message that indicates the execution timed out.'."\n",
- 'type' => 'string',
- 'example' => 'Standard execution is not supported',
- ],
- 'Output' => [
- 'description' => 'The output of the execution, which is in the JSON format.'."\n",
- 'type' => 'string',
- 'example' => '{"key":"value"}',
- ],
- 'StartedTime' => [
- 'description' => 'The time when the execution started.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'StoppedTime' => [
- 'description' => 'The time when the execution stopped.'."\n",
- 'type' => 'string',
- 'example' => '2019-01-01T01:01:01.001Z',
- ],
- 'Environment' => [
- 'title' => 'Flow 执行时使用的环境变量列表',
- 'type' => 'object',
- 'properties' => [
- 'Variables' => [
- 'title' => 'Flow 执行时使用的环境变量列表',
- 'type' => 'array',
- 'items' => [
- 'title' => 'Flow 执行期间可以访问的变量列表',
+ 'NextToken' => ['description' => 'Next query starting key. Not returned if no other data exists.', 'type' => 'string', 'example' => 'flow_nextxxx', 'title' => ''],
+ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'Flows' => [
+ 'description' => 'Flow list.',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Flow list.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => ['description' => 'Flow type.', 'type' => 'string', 'example' => 'FDL', 'title' => ''],
+ 'Definition' => ['description' => 'Flow definition, follows FDL syntax standard.', 'type' => 'string', 'example' => 'version: v1.0\\ntype: flow\\nname: test\\nsteps:\\n - type: pass\\n name: mypass', 'title' => ''],
+ 'RoleArn' => ['description' => 'Resource descriptor information required for flow execution.', 'type' => 'string', 'example' => 'acs:ram::${accountID}:${role}', 'title' => ''],
+ 'Description' => ['description' => 'Flow description.', 'type' => 'string', 'example' => 'my test flow', 'title' => ''],
+ 'Name' => ['description' => 'Flow name.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'CreatedTime' => ['description' => 'Flow creation time.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'Last modified time of the flow.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'Id' => ['description' => 'Unique ID of the flow.', 'type' => 'string', 'example' => 'e589e092-e2c0-4dee-b306-3574ddf5****', 'title' => ''],
+ 'ExecutionMode' => ['description' => 'Execution mode, enumeration type. Can be Express or Standard. An empty string is equivalent to Standard.', 'type' => 'string', 'title' => '', 'example' => 'Standard'],
+ 'Environment' => [
'type' => 'object',
'properties' => [
- 'Name' => [
- 'title' => '变量名称',
- 'type' => 'string',
- 'example' => 'key',
- ],
- 'Value' => [
- 'title' => '变量值',
- 'type' => 'string',
- 'example' => 'value',
+ 'Variables' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Description' => ['description' => 'Variable description.', 'type' => 'string', 'example' => 'description', 'title' => ''],
+ 'Name' => ['description' => 'Variable name.', 'type' => 'string', 'example' => 'key', 'title' => ''],
+ 'Value' => ['description' => 'Variable value.', 'type' => 'string', 'example' => 'value', 'title' => ''],
+ ],
+ 'title' => '',
+ 'description' => 'List of variables accessible during flow execution.',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'List of variables accessible during flow execution.',
+ 'example' => '',
],
],
+ 'description' => 'List of variables accessible during flow execution.',
+ 'title' => '',
+ 'example' => '',
],
+ 'ResourceGroupId' => ['type' => 'string', 'example' => 'rg-xxx', 'description' => '', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
+ 'title' => '',
+ 'example' => '',
],
],
- 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'ExecutionAlreadyExists',
- 'errorMessage' => 'Execution %s for flow %s already exists.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation %s is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version %s is not supported yet. Please check.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
],
403 => [
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources does not belong to you.',
- ],
- ],
- [
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
],
415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
],
429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'title' => 'ListFlows',
+ 'summary' => 'Retrieves information about multiple flows.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ListFlows',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'Flow', 'arn' => 'acs:fnf:{#regionId}:{#accountId}:flow/*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name:{UUID}\\",\\n \\"Status\\": \\"Succeeded\\",\\n \\"ErrorCode\\": \\"ActionNotSupported\\",\\n \\"ErrorMessage\\": \\"Standard execution is not supported\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
- 'title' => 'StartSyncExecution',
- 'description' => '* Only flows of the express execution mode are supported.'."\n",
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"flow_nextxxx\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Flows\\": [\\n {\\n \\"Type\\": \\"FDL\\",\\n \\"Definition\\": \\"version: v1.0\\\\\\\\ntype: flow\\\\\\\\nname: test\\\\\\\\nsteps:\\\\\\\\n - type: pass\\\\\\\\n name: mypass\\",\\n \\"RoleArn\\": \\"acs:ram::${accountID}:${role}\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddf5****\\",\\n \\"ExecutionMode\\": \\"Standard\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Description\\": \\"description\\",\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-xxx\\"\\n }\\n ]\\n}","type":"json"}]',
],
- 'DescribeMapRun' => [
- 'summary' => '查询 MapRun 详情',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'ListSchedules' => [
+ 'methods' => ['get'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -3842,485 +2198,169 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
- 'riskType' => 'none',
- 'chargeType' => 'free',
- 'abilityTreeCode' => '227531',
- 'abilityTreeNodes' => [
- 'FEATUREfnfR0JC2A',
- ],
+ 'abilityTreeCode' => '98864',
+ 'abilityTreeNodes' => ['FEATUREfnf06LH4G'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'RequestId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164',
- ],
- ],
- [
'name' => 'FlowName',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'my_flow_name',
- ],
+ 'schema' => ['description' => 'The name of the flow that is associated with the time-based schedules. The name is unique within the region and cannot be modified after the flow is created. The name must meet the following conventions:'."\n"
+ ."\n"
+ .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
+ .'* The name must start with a letter or an underscore (\\_).'."\n"
+ .'* The name is case-sensitive.'."\n"
+ .'* The name must be 1 to 128 characters in length.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testFlowName', 'title' => ''],
],
[
- 'name' => 'ExecutionName',
+ 'name' => 'NextToken',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'my_exec_name',
- ],
+ 'schema' => ['description' => 'For the first query, you do not need to specify this parameter. The system uses the value of the **FlowName** parameter as the value of the **NextToken** parameter. When the query ends, no value is returned for this parameter.'."\n", 'type' => 'string', 'required' => false, 'example' => 'testNextToken', 'title' => ''],
],
[
- 'name' => 'MapRunName',
+ 'name' => 'Limit',
'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'c39142f1345b196d678333c41f113200',
- ],
+ 'schema' => ['description' => 'The number of schedules that you want to query. Valid values: 1 to 1000.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'docRequired' => false, 'maximum' => '1000', 'minimum' => '1', 'example' => '1', 'default' => '60', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
+ 'description' => 'The schema of response.'."\n",
'type' => 'object',
'properties' => [
- 'Status' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'Succeeded',
- ],
- 'StoppedTime' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '2025-10-24T14:11:28+08:00',
- ],
- 'RequestId' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164',
- ],
- 'StartedTime' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => '2025-10-24T14:11:26+08:00',
- ],
- 'Concurrency' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'ToleratedFailedCount' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'ToleratedFailedPercentage' => [
- 'description' => '',
- 'type' => 'number',
- 'format' => 'float',
- 'example' => '20',
- ],
- 'ExecutionName' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my_exec_name',
- ],
- 'MapRunName' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'c39142f1345b196d678333c41f113000',
- ],
- 'ItemCounts' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Pending' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'Running' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'Succeed' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'Failed' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'Aborted' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'Total' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '500',
+ 'NextToken' => ['description' => 'The token for the next query.'."\n", 'type' => 'string', 'example' => 'testNextToken', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'Schedules' => [
+ 'description' => 'The time-based schedules that are queried.'."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'Description' => ['description' => 'The description of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'test description', 'title' => ''],
+ 'ScheduleId' => ['description' => 'The ID of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'testScheduleId', 'title' => ''],
+ 'Payload' => ['description' => 'The trigger message of the time-based schedule.'."\n", 'type' => 'string', 'example' => '{"key": "value"}', 'title' => ''],
+ 'ScheduleName' => ['description' => 'The name of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'testScheduleName', 'title' => ''],
+ 'CreatedTime' => ['description' => 'The time when the time-based schedule was created.'."\n", 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'The time when the time-based schedule was last modified.'."\n", 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'CronExpression' => ['description' => 'The cron expression of the scheduled task.'."\n", 'type' => 'string', 'example' => '0 * * * * *', 'title' => ''],
+ 'Enable' => ['description' => 'Indicates whether the time-based schedule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* **true**'."\n"
+ .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
],
+ 'title' => '',
],
],
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
],
[
- [
- 'errorCode' => 'ExecutionNotExists',
- 'errorMessage' => 'Execution %s for flow %s does not exist.',
- ],
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => ''],
],
412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
- ],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => ''],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"testNextToken\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Schedules\\": [\\n {\\n \\"Description\\": \\"test description\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"testScheduleName\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'title' => 'ListSchedules',
+ 'summary' => 'Queries time-based schedules in a flow.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ListSchedules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2025-10-24T14:11:28+08:00\\",\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\",\\n \\"StartedTime\\": \\"2025-10-24T14:11:26+08:00\\",\\n \\"Concurrency\\": 1,\\n \\"ToleratedFailedCount\\": 100,\\n \\"ToleratedFailedPercentage\\": 20,\\n \\"ExecutionName\\": \\"my_exec_name\\",\\n \\"MapRunName\\": \\"c39142f1345b196d678333c41f113000\\",\\n \\"ItemCounts\\": {\\n \\"Pending\\": 100,\\n \\"Running\\": 100,\\n \\"Succeed\\": 100,\\n \\"Failed\\": 100,\\n \\"Aborted\\": 100,\\n \\"Total\\": 500\\n }\\n}","type":"json"}]',
],
- 'UpdateMapRun' => [
- 'summary' => '更新 MapRun 配置',
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'https',
- ],
+ 'PublishFlowVersion' => [
+ 'summary' => 'Publishes a new version of a flow based on its current definition. A flow version includes the flow\'s definition, description, environment variable settings, and execution role. The version number starts at 1 and increments with each new version.',
+ 'path' => '',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'write',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
+ 'operationType' => 'create',
'riskType' => 'none',
'chargeType' => 'free',
- 'abilityTreeCode' => '227533',
- 'abilityTreeNodes' => [
- 'FEATUREfnfR0JC2A',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
- 'name' => 'RequestId',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => false,
- 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164',
- ],
- ],
- [
'name' => 'FlowName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'my_flow_name',
- ],
- ],
- [
- 'name' => 'ExecutionName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'my_exec_name',
- ],
- ],
- [
- 'name' => 'MapRunName',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'string',
- 'required' => true,
- 'example' => 'c39142f1345b196d678333c41f113100',
- ],
- ],
- [
- 'name' => 'Concurrency',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '1',
- ],
- ],
- [
- 'name' => 'ToleratedFailedCount',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'required' => false,
- 'example' => '100',
- ],
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'required' => true, 'title' => '', 'description' => 'The name of the flow.', 'example' => 'example-flow-name'],
],
[
- 'name' => 'ToleratedFailedPercentage',
- 'in' => 'query',
- 'schema' => [
- 'description' => '',
- 'type' => 'number',
- 'format' => 'float',
- 'required' => false,
- 'example' => '20',
- ],
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The description of the version.', 'required' => false, 'example' => 'example flow description'],
],
],
'responses' => [
200 => [
'schema' => [
- 'title' => 'Schema of Response',
- 'description' => 'Schema of Response',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'title' => 'Id of the request',
- 'description' => 'Id of the request',
- 'type' => 'string',
- 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164',
- ],
- 'FlowName' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my_flow_name',
- ],
- 'ExecutionName' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'my_exec_name',
- ],
- 'MapRunName' => [
- 'description' => '',
- 'type' => 'string',
- 'example' => 'c39142f1345b196d678333c41f113000',
- ],
- 'Concurrency' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'ToleratedFailedCount' => [
- 'description' => '',
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '100',
- ],
- 'ToleratedFailedPercentage' => [
- 'description' => '',
- 'type' => 'number',
- 'format' => 'float',
- 'example' => '20',
- ],
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The ID of the request.', 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816'],
+ 'FlowName' => ['type' => 'string', 'title' => '', 'description' => 'The name of the flow.', 'example' => 'my-flow-name'],
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The version of the flow.', 'example' => '1'],
+ 'Description' => ['type' => 'string', 'title' => '', 'description' => 'The description of the flow version.', 'example' => 'my flow description'],
+ 'CreatedTime' => ['type' => 'string', 'title' => '', 'description' => 'The time when the flow version was created.', 'example' => '2025-10-24T14:11:26+08:00'],
],
+ 'title' => '',
+ 'description' => 'The schema of the response.',
+ 'example' => '',
],
],
],
- 'errorCodes' => [
- 400 => [
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- ],
- 403 => [
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- ],
- [
- [
- 'errorCode' => 'ExecutionNotExists',
- 'errorMessage' => 'Execution %s for flow %s does not exist.',
- ],
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- ],
- 412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
- ],
- 415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
- ],
- 429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
- ],
- 500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
- ],
- ],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'PublishFlowVersion',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"ExecutionName\\": \\"my_exec_name\\",\\n \\"MapRunName\\": \\"c39142f1345b196d678333c41f113000\\",\\n \\"Concurrency\\": 1,\\n \\"ToleratedFailedCount\\": 100,\\n \\"ToleratedFailedPercentage\\": 20\\n}","type":"json"}]',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"FlowName\\": \\"my-flow-name\\",\\n \\"Version\\": \\"1\\",\\n \\"Description\\": \\"my flow description\\",\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n}","type":"json"}]',
],
'ReportTaskFailed' => [
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -4330,43 +2370,24 @@
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '98865',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'TaskToken',
'in' => 'query',
- 'schema' => [
- 'description' => 'The token of the task whose execution you want to report. The task token is passed to the called service, such as Message Service (MNS) or Function Compute. For MNS, the value of this parameter can be obtained from a message. For Function Compute, the value of this parameter can be obtained from an event. For more information, see [Service integration modes](~~2592915~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'emptyString',
- ],
+ 'schema' => ['description' => 'The token of the task whose execution you want to report. The task token is passed to the called service, such as Message Service (MNS) or Function Compute. For MNS, the value of this parameter can be obtained from a message. For Function Compute, the value of this parameter can be obtained from an event. For more information, see [Service integration modes](~~2592915~~).'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'emptyString', 'title' => ''],
],
[
'name' => 'Error',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The error code for the failed task. The error code must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'nill',
- ],
+ 'schema' => ['description' => 'The error code for the failed task. The error code must be 1 to 128 characters in length.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'nill', 'title' => ''],
],
[
'name' => 'Cause',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The cause of the failure. The value must be 1 to 4,096 characters in length.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'emptyString',
- ],
+ 'schema' => ['description' => 'The cause of the failure. The value must be 1 to 4,096 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => 'emptyString', 'title' => ''],
],
],
'responses' => [
@@ -4375,93 +2396,40 @@
'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'EventId' => [
- 'description' => 'The ID of the event.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
+ 'EventId' => ['description' => 'The ID of the event.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
],
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'TaskAlreadyCompleted',
- 'errorMessage' => 'Task %s has already completed.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'TaskAlreadyCompleted', 'errorMessage' => 'Task %s has already completed.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => ''],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => ''],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => ''],
],
409 => [
- [
- 'errorCode' => 'TaskInvalidState',
- 'errorMessage' => 'Task is in an invalid state, please retry.',
- ],
+ ['errorCode' => 'TaskInvalidState', 'errorMessage' => 'Task is in an invalid state, please retry.', 'description' => ''],
],
415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => ''],
],
429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => ''],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"EventId\\": 1,\\n \\"RequestId\\": \\"testRequestId\\"\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
@@ -4472,15 +2440,24 @@
.'In the previous service (Serverless Workflow), the task step that ReportTaskFailed is used to call back `pattern: waitForCallback` indicates that the current task fails to be executed.'."\n"
."\n"
.'In the new service (CloudFlow), the task step that ReportTaskFailed is used to call back `TaskMode: WaitForCustomCallback` indicates that the current task fails to be executed.'."\n",
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ReportTaskFailed',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ ],
],
'ReportTaskSucceeded' => [
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -4490,33 +2467,19 @@
'systemTags' => [
'operationType' => 'get',
'abilityTreeCode' => '98866',
- 'abilityTreeNodes' => [
- 'FEATUREfnf8CPMA5',
- ],
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'TaskToken',
'in' => 'query',
- 'schema' => [
- 'description' => 'The token of the task whose execution you want to report. The task token is passed to the called service, such as Message Service (MNS) or Function Compute. For MNS, the value of this parameter can be obtained from a message. For Function Compute, the value of this parameter can be obtained from an event. For more information, see [Service integration modes](~~2592915~~).'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'emptyString',
- ],
+ 'schema' => ['description' => 'The token of the task whose execution you want to report. The task token is passed to the called service, such as Message Service (MNS) or Function Compute. For MNS, the value of this parameter can be obtained from a message. For Function Compute, the value of this parameter can be obtained from an event. For more information, see [Service integration modes](~~2592915~~).'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'emptyString', 'title' => ''],
],
[
'name' => 'Output',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The output information of the task whose execution success you want to report.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '{"key":"value"}',
- ],
+ 'schema' => ['description' => 'The output information of the task whose execution success you want to report.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '{"key":"value"}', 'title' => ''],
],
],
'responses' => [
@@ -4525,93 +2488,40 @@
'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'EventId' => [
- 'description' => 'The ID of the event.'."\n",
- 'type' => 'integer',
- 'format' => 'int64',
- 'example' => '1',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
+ 'EventId' => ['description' => 'The ID of the event.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
],
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'EntityTooLarge',
- 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'TaskAlreadyCompleted',
- 'errorMessage' => 'Task %s has already completed.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'TaskAlreadyCompleted', 'errorMessage' => 'Task %s has already completed.', 'description' => ''],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
- [
- 'errorCode' => 'InvalidAccessKeyID',
- 'errorMessage' => 'The AccessKey ID %s is invalid.',
- ],
- [
- 'errorCode' => 'RequestTimeTooSkewed',
- 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.',
- ],
- [
- 'errorCode' => 'SignatureNotMatch',
- 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => ''],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => ''],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => ''],
],
409 => [
- [
- 'errorCode' => 'TaskInvalidState',
- 'errorMessage' => 'Task is in an invalid state, please retry.',
- ],
+ ['errorCode' => 'TaskInvalidState', 'errorMessage' => 'Task is in an invalid state, please retry.', 'description' => ''],
],
415 => [
- [
- 'errorCode' => 'UnsupportedMediaType',
- 'errorMessage' => 'The content type must be "application/json".',
- ],
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => ''],
],
429 => [
- [
- 'errorCode' => 'ResourceThrottled',
- 'errorMessage' => 'The request is throttled. Please try again later.',
- ],
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => ''],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
],
],
'responseDemo' => '[{"type":"json","example":"{\\n \\"EventId\\": 1,\\n \\"RequestId\\": \\"testRequestId\\"\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
@@ -4622,15 +2532,25 @@
.'In the previous service (Serverless Workflow), the task step that ReportTaskSucceeded is used to call back pattern: waitForCallback indicates that the current task is successfully executed.'."\n"
."\n"
.'In the new service (CloudFlow), the task step that ReportTaskSucceeded is used to call back TaskMode: WaitForCustomCallback indicates that the current task is successfully executed.'."\n",
- ],
- 'CreateSchedule' => [
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ReportTaskSucceeded',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
+ ],
+ 'StartExecution' => [
+ 'summary' => 'Starts a flow execution.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -4639,203 +2559,308 @@
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'create',
- 'abilityTreeCode' => '98855',
- 'abilityTreeNodes' => [
- 'FEATUREfnf06LH4G',
- ],
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '98867',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the workflow that is associated with the time-based schedule.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'flow',
- ],
+ 'schema' => ['description' => 'The name of the flow to execute.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'ScheduleName',
+ 'name' => 'ExecutionName',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the time-based schedule. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* It is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testScheduleName',
- ],
+ 'schema' => ['description' => 'The name of the execution. The name must be unique within the same flow. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- It must start with a letter (a-z or A-Z) or an underscore (\\_).'."\n"
+ ."\n"
+ .'- It can contain letters (a-z or A-Z), digits (0-9), underscores (\\_), and hyphens (-).'."\n"
+ ."\n"
+ .'- It is case-sensitive.'."\n"
+ ."\n"
+ .'- It must be 1 to 128 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'my_exec_name', 'title' => ''],
],
[
- 'name' => 'Description',
+ 'name' => 'Input',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The description of the time-based schedule.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test description',
- ],
+ 'schema' => ['description' => 'The input for the execution. The input must be in the JSON object format.', 'type' => 'string', 'required' => false, 'example' => '{"key":"value"}', 'title' => ''],
],
[
- 'name' => 'Payload',
+ 'name' => 'CallbackFnFTaskToken',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The trigger message of the time-based schedule. Specify the value in the JSON format.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"key": "value"}',
- ],
+ 'schema' => ['description' => 'The token of a task to be called back after the flow execution is complete.', 'type' => 'string', 'required' => false, 'example' => '12', 'title' => ''],
],
[
- 'name' => 'CronExpression',
+ 'name' => 'Qualifier',
'in' => 'formData',
+ 'schema' => ['description' => 'The version or alias of the flow.', 'type' => 'string', 'example' => '1', 'title' => '', 'required' => false],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
'schema' => [
- 'description' => 'The CRON expression.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => '0 * * * * *',
+ 'description' => 'The returned data.',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => ['description' => 'The status of the execution. Valid values:'."\n"
+ ."\n"
+ .'- **Starting**'."\n"
+ ."\n"
+ .'- **Running**'."\n"
+ ."\n"
+ .'- **Stopped**'."\n"
+ ."\n"
+ .'- **Succeeded**'."\n"
+ ."\n"
+ .'- **Failed**'."\n"
+ ."\n"
+ .'- **TimedOut**', 'type' => 'string', 'example' => 'Succeeded', 'title' => ''],
+ 'StoppedTime' => ['description' => 'The time when the execution stopped.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'StartedTime' => ['description' => 'The time when the execution started.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'FlowDefinition' => ['description' => 'The definition of the executed flow.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"type: flow\\nversion: v1\\nname: my_flow_name\\nsteps:\\n - type: pass\\n name: mypass"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"Type: StateMachine\\nSpecVersion: v1\\nName: my_flow_name\\nStartAt: my_state\\nStates:\\n - Type: Pass\\n Name: my_state\\n End: true"', 'title' => ''],
+ 'Output' => ['description' => 'The output of the execution, in JSON object format.', 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
+ 'FlowName' => ['description' => 'The name of the flow.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'Name' => ['description' => 'The name of the execution.', 'type' => 'string', 'example' => 'my_exec_name', 'title' => ''],
+ 'Input' => ['description' => 'The input for the execution, in JSON object format.', 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
+ ],
+ 'title' => '',
+ 'example' => '',
],
],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ['errorCode' => 'ExecutionAlreadyExists', 'errorMessage' => 'Execution %s for flow %s already exists.', 'description' => 'Execution %s for flow %s already exists.'],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
+ ],
+ 403 => [
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
+ ],
[
- 'name' => 'Enable',
- 'in' => 'formData',
- 'schema' => [
- 'description' => 'Specifies whether to enable the time-based schedule. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'required' => false,
- 'example' => 'true',
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
+ ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
+ ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
+ ],
+ 500 => [
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Succeeded\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"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\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\"\\n}","type":"json"}]',
+ 'title' => 'StartExecution',
+ 'description' => '## Description'."\n"
+ ."\n"
+ .'- The specified flow must exist and be in Standard execution mode.'."\n"
+ ."\n"
+ .'- If an execution name is not specified, the service automatically generates one and starts the execution.'."\n"
+ ."\n"
+ .'- If an execution with the same name is already in progress, a new execution is not started. Instead, the system returns the details of the ongoing execution.'."\n"
+ ."\n"
+ .'- If an execution with the same name has already completed, the system returns an `ExecutionAlreadyExists` error, regardless of whether the execution succeeded or failed.'."\n"
+ ."\n"
+ .'- If no execution with the same name exists, a new execution starts.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:StartExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
+ 'translator' => 'machine',
+ ],
+ 'StartSyncExecution' => [
+ 'summary' => 'Synchronously starts a flow execution.',
+ 'methods' => ['post'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '195751',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'FlowName',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the flow to execute.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => 'my_flow_name'],
+ ],
+ [
+ 'name' => 'ExecutionName',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the execution. The name must meet the following requirements:'."\n"
+ ."\n"
+ .'- It can contain letters (a–z and A–Z), digits (0–9), underscores (\\_), and hyphens (-).'."\n"
+ ."\n"
+ .'- It must start with a letter (a–z or A–Z) or an underscore (\\_).'."\n"
+ ."\n"
+ .'- It is case-sensitive.'."\n"
+ ."\n"
+ .'- It must be 1 to 128 characters in length.'."\n"
+ ."\n"
+ .'Unlike the StartExecution operation, the execution name for a synchronous call does not need to be unique within a flow. You can specify an execution name to identify the execution. The system appends a UUID to the name in the \\`{ExecutionName}:{UUID}\\` format. If you do not specify an execution name, the system automatically generates one.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'my_exec_name'],
+ ],
+ [
+ 'name' => 'Input',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The input of the execution. The input must be in JSON format.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '{"key":"value"}'],
+ ],
+ [
+ 'name' => 'Qualifier',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The version or alias of the flow.', 'required' => false, 'example' => '1'],
+ ],
+ ],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response parameters.'."\n",
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'Description' => [
- 'description' => 'The description of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'test description',
- ],
- 'ScheduleId' => [
- 'description' => 'The ID of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleId',
- ],
- 'Payload' => [
- 'description' => 'The trigger message of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => '{"key": "value"}',
- ],
- 'ScheduleName' => [
- 'description' => 'The name of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleName',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the time-based schedule was created.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the time-based schedule was last modified.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'CronExpression' => [
- 'description' => 'The CRON expression.'."\n",
- 'type' => 'string',
- 'example' => '0 * * * * *',
- ],
- 'Enable' => [
- 'description' => 'Indicates whether the time-based schedule is enabled.'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'testRequestId'],
+ 'FlowName' => ['description' => 'The name of the flow.', 'type' => 'string', 'title' => '', 'example' => 'my_flow_name'],
+ 'Name' => ['description' => 'The name of the flow execution.', 'type' => 'string', 'title' => '', 'example' => 'my_exec_name:{UUID}'],
+ 'Status' => ['description' => 'The status of the execution. Valid values:'."\n"
+ ."\n"
+ .'- **Starting**'."\n"
+ ."\n"
+ .'- **Running**'."\n"
+ ."\n"
+ .'- **Stopped**'."\n"
+ ."\n"
+ .'- **Succeeded**'."\n"
+ ."\n"
+ .'- **Failed**'."\n"
+ ."\n"
+ .'- **TimedOut**', 'type' => 'string', 'title' => '', 'example' => 'Succeeded'],
+ 'ErrorCode' => ['description' => 'The error code returned if the execution fails.', 'type' => 'string', 'title' => '', 'example' => 'ActionNotSupported'],
+ 'ErrorMessage' => ['description' => 'The execution timed out.', 'type' => 'string', 'title' => '', 'example' => 'Standard execution is not supported'],
+ 'Output' => ['description' => 'The output of the execution, which is a JSON object.', 'type' => 'string', 'title' => '', 'example' => '{"key":"value"}'],
+ 'StartedTime' => ['description' => 'The time when the execution started.', 'type' => 'string', 'title' => '', 'example' => '2019-01-01T01:01:01.001Z'],
+ 'StoppedTime' => ['description' => 'The time when the execution stopped.', 'type' => 'string', 'title' => '', 'example' => '2019-01-01T01:01:01.001Z'],
+ 'Environment' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Variables' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => ['type' => 'string', 'title' => '', 'description' => 'The name of the variable.', 'example' => 'key'],
+ 'Value' => ['type' => 'string', 'title' => '', 'description' => 'The value of the variable.', 'example' => 'value'],
+ ],
+ 'title' => '',
+ 'description' => 'The variables that are accessible during the execution of the flow.',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'A list of environment variables.',
+ 'example' => '',
+ ],
+ ],
+ 'description' => 'The environment variables used during the flow execution.',
+ 'title' => '',
+ 'example' => '',
],
],
+ 'description' => '',
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ['errorCode' => 'ExecutionAlreadyExists', 'errorMessage' => 'Execution %s for flow %s already exists.', 'description' => 'Execution %s for flow %s already exists.'],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation %s is incorrect. Please check.', 'description' => 'The requested API operation %s is incorrect. Please check.'],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version %s is not supported yet. Please check.', 'description' => 'The requested API version %s is not supported yet. Please check.'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources does not belong to you.', 'description' => 'The request is denied due to the authority check failure.'],
],
[
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
],
- 409 => [
- [
- 'errorCode' => 'ConcurrentUpdateError',
- 'errorMessage' => 'Update conflict, please retry.',
- ],
- [
- 'errorCode' => 'ScheduleAlreadyExists',
- 'errorMessage' => 'The schedule %s already exists in flow %s.',
- ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
+ ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name:{UUID}\\",\\n \\"Status\\": \\"Succeeded\\",\\n \\"ErrorCode\\": \\"ActionNotSupported\\",\\n \\"ErrorMessage\\": \\"Standard execution is not supported\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => 'StartSyncExecution',
+ 'description' => '- This operation supports only flows in Express mode.',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:StartSyncExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"test description\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"testScheduleName\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'CreateSchedule',
- 'summary' => 'Creates a time-based schedule.',
],
- 'DeleteSchedule' => [
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'StopExecution' => [
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -4844,125 +2869,129 @@
'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'delete',
- 'abilityTreeCode' => '98857',
- 'abilityTreeNodes' => [
- 'FEATUREfnf06LH4G',
- ],
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '98868',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
'name' => 'FlowName',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the workflow with which the scheduling task that you want to delete is associated.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testFlowName',
- ],
+ 'schema' => ['description' => 'The name of the workflow to be stopped. You can call the **ListFlows** operation to obtain the value of this parameter.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'ScheduleName',
+ 'name' => 'ExecutionName',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the scheduling task that you want to delete.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testScheduleName',
- ],
+ 'schema' => ['description' => 'The name of the execution to be stopped. You can call the **ListExecutions** operation to obtain the value of this parameter.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_exec_name', 'title' => ''],
+ ],
+ [
+ 'name' => 'Cause',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The reason for stopping the execution. The value must be 1 to 4,096 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => 'for test', 'title' => ''],
+ ],
+ [
+ 'name' => 'Error',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The error code for stopping the execution. The error code must be 1 to 128 characters in length.'."\n", 'type' => 'string', 'required' => false, 'example' => 'InvalidArgument', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The response parameters.'."\n",
+ 'description' => 'Schema of response.'."\n",
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
+ 'Status' => ['description' => 'The execution status. Valid values:'."\n"
+ ."\n"
+ .'* **Starting**'."\n"
+ .'* **Running**'."\n"
+ .'* **Stopped**'."\n"
+ .'* **Succeeded**'."\n"
+ .'* **Failed**'."\n"
+ .'* **TimedOut**'."\n", 'type' => 'string', 'example' => 'Running', 'title' => ''],
+ 'StoppedTime' => ['description' => 'The time when the execution stopped.'."\n", 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'StartedTime' => ['description' => 'The time when the execution started.'."\n", 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'FlowDefinition' => ['description' => 'The definition of the flow.'."\n", 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"type: flow\\nversion: v1\\nname: my_flow_name\\nsteps:\\n - type: pass\\n name: mypass"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"Type: StateMachine\\nSpecVersion: v1\\nName: my_flow_name\\nStartAt: my_state\\nStates:\\n - Type: Pass\\n Name: my_state\\n End: true"', 'title' => ''],
+ 'Output' => ['description' => 'The execution result, which is in the JSON format.'."\n", 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
+ 'FlowName' => ['description' => 'The name of the flow.'."\n", 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'Name' => ['description' => 'The name of the execution.'."\n", 'type' => 'string', 'example' => 'my_exec_name', 'title' => ''],
+ 'Input' => ['description' => 'The input of the execution, which is in the JSON format.'."\n", 'type' => 'string', 'example' => '{"key":"value"}', 'title' => ''],
+ 'RoleArn' => ['description' => 'The Alibaba Cloud resource name (ARN) of the role that executed the flow. If the RoleArn in the flow definition is changed during the execution of the flow, the system records and returns a snapshot of the original RoleArn.'."\n"
+ ."\n"
+ .'> If you do not specify the RoleArn parameter in the request parameters, the response parameters do not contain the RoleArn parameter.'."\n", 'type' => 'string', 'example' => 'acs:ram:${region}:${accountID}:${role}', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ['errorCode' => 'ExecutionAlreadyCompleted', 'errorMessage' => 'Execution \'%s\' for flow \'%s\' has already completed.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
],
[
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- [
- 'errorCode' => 'ScheduleNotExists',
- 'errorMessage' => 'The schedule %s for flow %s does not exist.',
- ],
+ ['errorCode' => 'ExecutionNotExists', 'errorMessage' => 'Execution %s for flow %s does not exist.', 'description' => 'Execution %s for flow %s does not exist.'],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
],
409 => [
- [
- 'errorCode' => 'ConcurrentUpdateError',
- 'errorMessage' => 'Update conflict, please retry.',
- ],
+ ['errorCode' => 'ConcurrentUpdateError', 'errorMessage' => 'Update conflict, please retry.', 'description' => 'Update conflict, please retry.'],
],
- 412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
+ ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Status\\": \\"Running\\",\\n \\"StoppedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"StartedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"FlowDefinition\\": \\"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\\\\\\"\\",\\n \\"Output\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"Name\\": \\"my_exec_name\\",\\n \\"Input\\": \\"{\\\\\\"key\\\\\\":\\\\\\"value\\\\\\"}\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\"\\n}","errorExample":""},{"type":"xml","example":"<StopExecutionResponse>\\n <Status>Running</Status>\\n <StoppedTime>2019-01-01T01:01:01.001Z</StoppedTime>\\n <RequestId>testRequestId</RequestId>\\n <StartedTime>2019-01-01T01:01:01.001Z</StartedTime>\\n <FlowDefinition>version: v1.0\\\\ntype: flow\\\\nname: test\\\\nsteps:\\\\n - type: pass\\\\n name: mypass</FlowDefinition>\\n <Output>{\\"key\\":\\"value\\"}</Output>\\n <FlowName>flow</FlowName>\\n <Name>exec</Name>\\n <Input>{\\"key\\":\\"value\\"}</Input>\\n</StopExecutionResponse>","errorExample":""}]',
+ 'title' => 'StopExecution',
+ 'summary' => 'Stops an execution that is in progress in a flow.',
+ 'description' => '## [](#)Usage notes'."\n"
+ ."\n"
+ .'The flow must be in progress.'."\n",
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:StopExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\"\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'DeleteSchedule',
- 'summary' => 'Deletes a time-based scheduling task.',
],
- 'UpdateSchedule' => [
- 'methods' => [
- 'post',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'UpdateFlow' => [
+ 'summary' => 'Updates the content of a flow.',
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
@@ -4972,212 +3001,316 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'update',
- 'abilityTreeCode' => '98870',
- 'abilityTreeNodes' => [
- 'FEATUREfnf06LH4G',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '98869',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
],
'parameters' => [
[
- 'name' => 'FlowName',
+ 'name' => 'Name',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the flow that is associated with the time-based schedule. The name must be unique within the region and cannot be modified after the time-based schedule is created. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testFlowName',
- ],
+ 'schema' => ['description' => 'The name of the flow that you created.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'ScheduleName',
+ 'name' => 'Definition',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The name of the time-based schedule. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testScheduleName',
- ],
+ 'schema' => ['description' => 'The definition of the flow. The definition must follow the syntax of Flow Definition Language (FDL). For forward compatibility, the system supports two versions of the flow definition specification.'."\n"
+ ."\n"
+ .'> In the preceding example, Name: my\\_flow\\_name indicates the flow name, which must be the same as the value of the Name request parameter.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"'."\n"
+ .'type: flow'."\n"
+ .'version: v1'."\n"
+ .'name: my_flow_name'."\n"
+ .'steps:'."\n"
+ .' - type: pass'."\n"
+ .' name: mypass'."\n"
+ .'"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"'."\n"
+ .'Type: StateMachine'."\n"
+ .'SpecVersion: v1'."\n"
+ .'Name: my_flow_name'."\n"
+ .'StartAt: my_state'."\n"
+ .'States:'."\n"
+ .' - Type: Pass'."\n"
+ .' Name: my_state'."\n"
+ .' End: true'."\n"
+ .'"', 'required' => false, 'title' => ''],
],
[
'name' => 'Description',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The description of the time-based schedule.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'test description',
- ],
+ 'schema' => ['description' => 'The description of the flow.', 'type' => 'string', 'required' => false, 'example' => 'my test flow', 'title' => ''],
],
[
- 'name' => 'Payload',
+ 'name' => 'Type',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The trigger message of the time-based schedule. It must be in the JSON format.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '{"key": "value"}',
- ],
+ 'schema' => ['description' => 'The type of the flow. Set the value to **FDL**.', 'type' => 'string', 'required' => false, 'example' => 'FDL', 'title' => ''],
],
[
- 'name' => 'CronExpression',
+ 'name' => 'RoleArn',
'in' => 'formData',
- 'schema' => [
- 'description' => 'The CRON expression.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => '0 * * * * *',
- ],
+ 'schema' => ['description' => 'The resource descriptor of the role that the flow execution relies on. When a flow is executed, the execution engine assumes this role to call the related resource APIs.', 'type' => 'string', 'required' => false, 'example' => 'acs:ram:${region}:${accountID}:${role}', 'title' => ''],
],
[
- 'name' => 'Enable',
+ 'name' => 'Environment',
'in' => 'formData',
+ 'style' => 'json',
'schema' => [
- 'description' => 'Specifies whether to enable the time-based schedule. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
+ 'type' => 'object',
+ 'properties' => [
+ 'Variables' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => ['description' => 'The name of the variable.', 'type' => 'string', 'example' => 'key', 'title' => '', 'required' => false],
+ 'Value' => ['description' => 'The value of the variable.', 'type' => 'string', 'example' => 'value', 'title' => '', 'required' => false],
+ 'Description' => ['description' => 'The description of the variable.', 'type' => 'string', 'example' => 'description', 'title' => '', 'required' => false],
+ ],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the execution of the flow.',
+ 'required' => false,
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the execution of the flow.',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the execution of the flow.',
'required' => false,
- 'example' => 'true',
+ 'example' => '',
],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'The schema of response.'."\n",
+ 'description' => 'The returned data.',
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'Description' => [
- 'description' => 'The description of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'test description',
- ],
- 'ScheduleId' => [
- 'description' => 'The ID of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleId',
- ],
- 'Payload' => [
- 'description' => 'The trigger message of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => '{"key": "value"}',
- ],
- 'ScheduleName' => [
- 'description' => 'The name of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleName',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the time-based schedule was created.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the time-based schedule was last updated.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'CronExpression' => [
- 'description' => 'The CRON expression.'."\n",
- 'type' => 'string',
- 'example' => '0 * * * * *',
- ],
- 'Enable' => [
- 'description' => 'Indicates whether the time-based schedule is enabled. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
+ 'Type' => ['description' => 'The type of the flow.', 'type' => 'string', 'example' => 'FDL', 'title' => ''],
+ 'Definition' => ['description' => 'The definition of the flow. The definition must follow the syntax of FDL. For forward compatibility, the system supports two versions of the flow definition specification.', 'type' => 'string', 'example' => 'Legacy version:'."\n"
+ .'"type: flow\\nversion: v1\\nname: my_flow_name\\nsteps:\\n - type: pass\\n name: mypass"'."\n"
+ ."\n"
+ .'New version:'."\n"
+ .'"Type: StateMachine\\nSpecVersion: v1\\nName: my_flow_name\\nStartAt: my_state\\nStates:\\n - Type: Pass\\n Name: my_state\\n End: true"', 'title' => ''],
+ 'RoleArn' => ['description' => 'The resource descriptor of the role that the flow execution relies on. When a flow is executed, the execution engine assumes this role to call the related resource APIs.', 'type' => 'string', 'example' => 'acs:ram:${region}:${accountID}:${role}', 'title' => ''],
+ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'testRequestID', 'title' => ''],
+ 'Description' => ['description' => 'The description of the flow.', 'type' => 'string', 'example' => 'my test flow', 'title' => ''],
+ 'ExternalStorageLocation' => ['description' => 'The external storage location.', 'type' => 'string', 'example' => '/path', 'title' => ''],
+ 'Name' => ['description' => 'The name of the flow.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'CreatedTime' => ['description' => 'The time when the flow was created.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'The time when the flow was last modified.', 'type' => 'string', 'example' => '2019-01-01T01:01:01.001Z', 'title' => ''],
+ 'Id' => ['description' => 'The unique ID of the flow.', 'type' => 'string', 'example' => 'e589e092-e2c0-4dee-b306-3574ddfdddf5****', 'title' => ''],
+ 'Environment' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Variables' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => ['description' => 'The name of the variable.', 'type' => 'string', 'example' => 'key', 'title' => ''],
+ 'Value' => ['description' => 'The value of the variable.', 'type' => 'string', 'example' => 'value', 'title' => ''],
+ 'Description' => ['description' => 'The description of the variable.', 'type' => 'string', 'example' => 'description', 'title' => ''],
+ ],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the execution of the flow.',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'The list of variables that can be accessed during the execution of the flow.',
+ 'example' => '',
+ ],
+ ],
+ 'description' => 'The list of variables that can be accessed during the execution of the flow.',
+ 'title' => '',
+ 'example' => '',
],
+ 'ResourceGroupId' => ['type' => 'string', 'example' => 'rg-xxx', 'description' => '', 'title' => ''],
],
+ 'title' => '',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
],
[
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- [
- 'errorCode' => 'ScheduleNotExists',
- 'errorMessage' => 'The schedule %s for flow %s does not exist.',
- ],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
],
409 => [
- [
- 'errorCode' => 'ConcurrentUpdateError',
- 'errorMessage' => 'Update conflict, please retry.',
- ],
+ ['errorCode' => 'ConcurrentUpdateError', 'errorMessage' => 'Update conflict, please retry.', 'description' => 'Update conflict, please retry.'],
],
412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
- ],
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => 'The resource to be modified has been changed. Please try again later.'],
+ ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
+ ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Type\\": \\"FDL\\",\\n \\"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\\\\\\"\\",\\n \\"RoleArn\\": \\"acs:ram:${region}:${accountID}:${role}\\",\\n \\"RequestId\\": \\"testRequestID\\",\\n \\"Description\\": \\"my test flow\\",\\n \\"ExternalStorageLocation\\": \\"/path\\",\\n \\"Name\\": \\"my_flow_name\\",\\n \\"CreatedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2019-01-01T01:01:01.001Z\\",\\n \\"Id\\": \\"e589e092-e2c0-4dee-b306-3574ddfdddf5****\\",\\n \\"Environment\\": {\\n \\"Variables\\": [\\n {\\n \\"Name\\": \\"key\\",\\n \\"Value\\": \\"value\\",\\n \\"Description\\": \\"description\\"\\n }\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-xxx\\"\\n}","type":"json"}]',
+ 'title' => 'UpdateFlow',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:UpdateFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"my test schedule\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"my_schedule_name\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'UpdateSchedule',
- 'summary' => 'Updates a time-based schedule.',
+ 'translator' => 'machine',
],
- 'DescribeSchedule' => [
- 'methods' => [
- 'get',
+ 'UpdateFlowAlias' => [
+ 'summary' => 'Updates the alias configuration for a flow.',
+ 'path' => '',
+ 'methods' => ['post', 'get'],
+ 'schemes' => ['https'],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => ['FEATUREfnf8CPMA5'],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'FlowName',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The name of the flow.', 'required' => true, 'example' => 'example-flow-name'],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The name of the alias.', 'required' => true, 'example' => 'alias name'],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['type' => 'string', 'title' => '', 'description' => 'The description of the alias.', 'required' => false, 'example' => 'example description'],
+ ],
+ [
+ 'name' => 'RoutingConfigurations',
+ 'in' => 'formData',
+ 'style' => 'json',
+ 'schema' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The version.', 'required' => false, 'example' => '1'],
+ 'Weight' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The weight.', 'required' => false, 'title' => '', 'example' => '20'],
+ ],
+ 'description' => 'The traffic distribution configuration. Configure one or two flow versions. When an execution starts for the alias, the system selects a flow version based on the specified weights.',
+ 'required' => false,
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'The weight configuration.',
+ 'required' => false,
+ 'example' => '',
+ ],
+ ],
],
- 'schemes' => [
- 'http',
- 'https',
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'Id of the request', 'example' => '294D68C1-5108-5971-853A-1A9CC87B4816'],
+ 'Alias' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => ['type' => 'string', 'title' => '', 'description' => 'The name of the alias.', 'example' => 'my-alias-name'],
+ 'Description' => ['type' => 'string', 'title' => '', 'description' => 'The description of the alias.', 'example' => 'my alias description'],
+ 'RoutingConfigurations' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Version' => ['type' => 'string', 'title' => '', 'description' => 'The version.', 'example' => '1'],
+ 'Weight' => ['type' => 'integer', 'format' => 'int32', 'title' => '', 'description' => 'The weight.', 'example' => '20'],
+ ],
+ 'description' => 'The traffic distribution configuration. Configure one or two flow versions. When an execution starts for the alias, the system selects a flow version based on the specified weights.',
+ 'title' => '',
+ 'example' => '',
+ ],
+ 'title' => '',
+ 'description' => 'The weight configuration.',
+ 'example' => '',
+ ],
+ 'CreatedTime' => ['type' => 'string', 'title' => '', 'description' => 'The time when the alias was created.', 'example' => '2025-10-24T14:11:26+08:00'],
+ ],
+ 'title' => '',
+ 'description' => 'The alias information.',
+ 'example' => '',
+ ],
+ ],
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'example' => '',
+ ],
+ ],
],
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'UpdateFlowAlias',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
+ ],
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"294D68C1-5108-5971-853A-1A9CC87B4816\\",\\n \\"Alias\\": {\\n \\"Name\\": \\"my-alias-name\\",\\n \\"Description\\": \\"my alias description\\",\\n \\"RoutingConfigurations\\": [\\n {\\n \\"Version\\": \\"1\\",\\n \\"Weight\\": 20\\n }\\n ],\\n \\"CreatedTime\\": \\"2025-10-24T14:11:26+08:00\\"\\n }\\n}","type":"json"}]',
+ 'translator' => 'machine',
+ ],
+ 'UpdateMapRun' => [
+ 'summary' => 'Updates the configuration of a MapRun.',
+ 'methods' => ['get'],
+ 'schemes' => ['https'],
'security' => [
[
'AK' => [],
@@ -5187,221 +3320,167 @@
'deprecated' => false,
'systemTags' => [
'operationType' => 'get',
- 'abilityTreeCode' => '98860',
- 'abilityTreeNodes' => [
- 'FEATUREfnf06LH4G',
- ],
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '227533',
+ 'abilityTreeNodes' => ['FEATUREfnfR0JC2A'],
'tenantRelevance' => 'publicInformation',
],
'parameters' => [
[
+ 'name' => 'RequestId',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Request ID.', 'type' => 'string', 'required' => false, 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164', 'title' => ''],
+ ],
+ [
'name' => 'FlowName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the flow that is associated with the time-based schedule. The name must be unique within the region and cannot be modified after the time-based schedule is created. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testFlowName',
- ],
+ 'schema' => ['description' => 'Name of the flow.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_flow_name', 'title' => ''],
],
[
- 'name' => 'ScheduleName',
+ 'name' => 'ExecutionName',
'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the time-based schedule. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testScheduleName',
- ],
+ 'schema' => ['description' => 'Name of the execution.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'my_exec_name', 'title' => ''],
+ ],
+ [
+ 'name' => 'MapRunName',
+ 'in' => 'query',
+ 'schema' => ['description' => 'Name of the MapRun. Retrieve this value from the output of the `MapRunStarted` event.', 'type' => 'string', 'required' => true, 'example' => 'c39142f1345b196d678333c41f113100', 'title' => ''],
+ ],
+ [
+ 'name' => 'Concurrency',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The concurrency limit for the MapRun runtime. The default quota for a single account is 300. You can request a quota increase in Quota Center.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''],
+ ],
+ [
+ 'name' => 'ToleratedFailedCount',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The maximum number of failed items that are allowed.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100', 'title' => ''],
+ ],
+ [
+ 'name' => 'ToleratedFailedPercentage',
+ 'in' => 'query',
+ 'schema' => ['description' => 'The maximum percentage of failed items that are allowed. Valid range: 0 to 100.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '20', 'title' => ''],
],
],
'responses' => [
200 => [
'schema' => [
- 'description' => 'Schema of response.'."\n",
'type' => 'object',
'properties' => [
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'Description' => [
- 'description' => 'The description of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'test description',
- ],
- 'ScheduleId' => [
- 'description' => 'The ID of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleId',
- ],
- 'Payload' => [
- 'description' => 'The trigger message of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => '{"key": "value"}',
- ],
- 'ScheduleName' => [
- 'description' => 'The name of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleName',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the time-based schedule was created.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the time-based schedule was last modified.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'CronExpression' => [
- 'description' => 'The CRON expression.'."\n",
- 'type' => 'string',
- 'example' => '0 * * * * *',
- ],
- 'Enable' => [
- 'description' => 'Indicates whether the time-based schedule is enabled. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
+ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'title' => '', 'example' => '3A44E113-9962-5B0B-AB92-14060EFE3164'],
+ 'FlowName' => ['description' => 'Name of the flow.', 'type' => 'string', 'example' => 'my_flow_name', 'title' => ''],
+ 'ExecutionName' => ['description' => 'Name of the execution.', 'type' => 'string', 'example' => 'my_exec_name', 'title' => ''],
+ 'MapRunName' => ['description' => 'Name of the MapRun.', 'type' => 'string', 'example' => 'c39142f1345b196d678333c41f113000', 'title' => ''],
+ 'Concurrency' => ['description' => 'The concurrency limit for the MapRun runtime.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''],
+ 'ToleratedFailedCount' => ['description' => 'The maximum number of failed items that are allowed.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''],
+ 'ToleratedFailedPercentage' => ['description' => 'The maximum percentage of failed items that are allowed.', 'type' => 'number', 'format' => 'float', 'example' => '20', 'title' => ''],
],
+ 'title' => '',
+ 'description' => 'Schema of Response',
+ 'example' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
- ],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
- ],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
- ],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
- ],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
- ],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => 'Parameter error.'],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => 'The HTTP query \'%s\' must be specified.'],
+ ['errorCode' => 'ActionNotSupported', 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.', 'description' => ''],
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'EntityTooLarge', 'errorMessage' => 'The payload size exceeds maximum allowed size (%s bytes).', 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
],
403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
- ],
+ ['errorCode' => 'InvalidAccessKeyID', 'errorMessage' => 'The AccessKey ID %s is invalid.', 'description' => 'The AccessKey ID %s is invalid.'],
+ ['errorCode' => 'RequestTimeTooSkewed', 'errorMessage' => 'The difference between the request time %s and the current time %s is too large.', 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['errorCode' => 'SignatureNotMatch', 'errorMessage' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
],
[
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
- ],
- [
- 'errorCode' => 'ScheduleNotExists',
- 'errorMessage' => 'The schedule %s for flow %s does not exist.',
- ],
+ ['errorCode' => 'ExecutionNotExists', 'errorMessage' => 'Execution %s for flow %s does not exist.', 'description' => 'Execution %s for flow %s does not exist.'],
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => 'Flow %s does not exist.'],
+ ],
+ 412 => [
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => 'The resource to be modified has been changed. Please try again later.'],
+ ],
+ 415 => [
+ ['errorCode' => 'UnsupportedMediaType', 'errorMessage' => 'The content type must be "application/json".', 'description' => 'The content type must be "application/json".'],
+ ],
+ 429 => [
+ ['errorCode' => 'ResourceThrottled', 'errorMessage' => 'The request is throttled. Please try again later.', 'description' => 'The request is throttled. Please try again later.'],
],
500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
- ],
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => 'An internal error has occurred. Please retry.'],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ 'staticInfo' => ['returnType' => 'synchronous'],
+ 'title' => 'UpdateMapRun',
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"test description\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"my_schedule_name\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'DescribeSchedule',
- 'summary' => 'Queries the detailed information about a time-based schedule.',
+ 'ramActions' => [],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A44E113-9962-5B0B-AB92-14060EFE3164\\",\\n \\"FlowName\\": \\"my_flow_name\\",\\n \\"ExecutionName\\": \\"my_exec_name\\",\\n \\"MapRunName\\": \\"c39142f1345b196d678333c41f113000\\",\\n \\"Concurrency\\": 1,\\n \\"ToleratedFailedCount\\": 100,\\n \\"ToleratedFailedPercentage\\": 20\\n}","type":"json"}]',
],
- 'ListSchedules' => [
- 'methods' => [
- 'get',
- ],
- 'schemes' => [
- 'http',
- 'https',
- ],
+ 'UpdateSchedule' => [
+ 'methods' => ['post'],
+ 'schemes' => ['http', 'https'],
'security' => [
[
'AK' => [],
],
],
- 'operationType' => 'read',
+ 'operationType' => 'readAndWrite',
'deprecated' => false,
'systemTags' => [
- 'operationType' => 'get',
- 'abilityTreeCode' => '98864',
- 'abilityTreeNodes' => [
- 'FEATUREfnf06LH4G',
- ],
- 'tenantRelevance' => 'publicInformation',
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '98870',
+ 'abilityTreeNodes' => ['FEATUREfnf06LH4G'],
],
'parameters' => [
[
'name' => 'FlowName',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The name of the flow that is associated with the time-based schedules. The name is unique within the region and cannot be modified after the flow is created. The name must meet the following conventions:'."\n"
- ."\n"
- .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
- .'* The name must start with a letter or an underscore (\\_).'."\n"
- .'* The name is case-sensitive.'."\n"
- .'* The name must be 1 to 128 characters in length.'."\n",
- 'type' => 'string',
- 'required' => true,
- 'docRequired' => true,
- 'example' => 'testFlowName',
- ],
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the flow that is associated with the time-based schedule. The name must be unique within the region and cannot be modified after the time-based schedule is created. The name must meet the following conventions:'."\n"
+ ."\n"
+ .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
+ .'* The name must start with a letter or an underscore (\\_).'."\n"
+ .'* The name is case-sensitive.'."\n"
+ .'* The name must be 1 to 128 characters in length.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testFlowName', 'title' => ''],
],
[
- 'name' => 'NextToken',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'For the first query, you do not need to specify this parameter. The system uses the value of the **FlowName** parameter as the value of the **NextToken** parameter. When the query ends, no value is returned for this parameter.'."\n",
- 'type' => 'string',
- 'required' => false,
- 'example' => 'testNextToken',
- ],
+ 'name' => 'ScheduleName',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The name of the time-based schedule. The name must meet the following conventions:'."\n"
+ ."\n"
+ .'* The name can contain letters, digits, underscores (\\_), and hyphens (-).'."\n"
+ .'* The name must start with a letter or an underscore (\\_).'."\n"
+ .'* The name is case-sensitive.'."\n"
+ .'* The name must be 1 to 128 characters in length.'."\n", 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'testScheduleName', 'title' => ''],
],
[
- 'name' => 'Limit',
- 'in' => 'query',
- 'schema' => [
- 'description' => 'The number of schedules that you want to query. Valid values: 1 to 1000.'."\n",
- 'type' => 'integer',
- 'format' => 'int32',
- 'required' => false,
- 'docRequired' => false,
- 'maximum' => '1000',
- 'minimum' => '1',
- 'example' => '1',
- 'default' => '60',
- ],
+ 'name' => 'Description',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The description of the time-based schedule.'."\n", 'type' => 'string', 'required' => false, 'example' => 'test description', 'title' => ''],
+ ],
+ [
+ 'name' => 'Payload',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The trigger message of the time-based schedule. It must be in the JSON format.'."\n", 'type' => 'string', 'required' => false, 'example' => '{"key": "value"}', 'title' => ''],
+ ],
+ [
+ 'name' => 'CronExpression',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'The CRON expression.'."\n", 'type' => 'string', 'required' => false, 'example' => '0 * * * * *', 'title' => ''],
+ ],
+ [
+ 'name' => 'Enable',
+ 'in' => 'formData',
+ 'schema' => ['description' => 'Specifies whether to enable the time-based schedule. Valid values:'."\n"
+ ."\n"
+ .'* **true**'."\n"
+ .'* **false**'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''],
],
],
'responses' => [
@@ -5410,157 +3489,357 @@
'description' => 'The schema of response.'."\n",
'type' => 'object',
'properties' => [
- 'NextToken' => [
- 'description' => 'The token for the next query.'."\n",
- 'type' => 'string',
- 'example' => 'testNextToken',
- ],
- 'RequestId' => [
- 'description' => 'The request ID.'."\n",
- 'type' => 'string',
- 'example' => 'testRequestId',
- ],
- 'Schedules' => [
- 'description' => 'The time-based schedules that are queried.'."\n",
- 'type' => 'array',
- 'items' => [
- 'description' => '',
- 'type' => 'object',
- 'properties' => [
- 'Description' => [
- 'description' => 'The description of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'test description',
- ],
- 'ScheduleId' => [
- 'description' => 'The ID of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleId',
- ],
- 'Payload' => [
- 'description' => 'The trigger message of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => '{"key": "value"}',
- ],
- 'ScheduleName' => [
- 'description' => 'The name of the time-based schedule.'."\n",
- 'type' => 'string',
- 'example' => 'testScheduleName',
- ],
- 'CreatedTime' => [
- 'description' => 'The time when the time-based schedule was created.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'LastModifiedTime' => [
- 'description' => 'The time when the time-based schedule was last modified.'."\n",
- 'type' => 'string',
- 'example' => '2020-01-01T01:01:01.001Z',
- ],
- 'CronExpression' => [
- 'description' => 'The cron expression of the scheduled task.'."\n",
- 'type' => 'string',
- 'example' => '0 * * * * *',
- ],
- 'Enable' => [
- 'description' => 'Indicates whether the time-based schedule is enabled. Valid values:'."\n"
- ."\n"
- .'* **true**'."\n"
- .'* **false**'."\n",
- 'type' => 'boolean',
- 'example' => 'true',
- ],
- ],
- ],
- ],
+ 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'testRequestId', 'title' => ''],
+ 'Description' => ['description' => 'The description of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'test description', 'title' => ''],
+ 'ScheduleId' => ['description' => 'The ID of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'testScheduleId', 'title' => ''],
+ 'Payload' => ['description' => 'The trigger message of the time-based schedule.'."\n", 'type' => 'string', 'example' => '{"key": "value"}', 'title' => ''],
+ 'ScheduleName' => ['description' => 'The name of the time-based schedule.'."\n", 'type' => 'string', 'example' => 'testScheduleName', 'title' => ''],
+ 'CreatedTime' => ['description' => 'The time when the time-based schedule was created.'."\n", 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'LastModifiedTime' => ['description' => 'The time when the time-based schedule was last updated.'."\n", 'type' => 'string', 'example' => '2020-01-01T01:01:01.001Z', 'title' => ''],
+ 'CronExpression' => ['description' => 'The CRON expression.'."\n", 'type' => 'string', 'example' => '0 * * * * *', 'title' => ''],
+ 'Enable' => ['description' => 'Indicates whether the time-based schedule is enabled. Valid values:'."\n"
+ ."\n"
+ .'* **true**'."\n"
+ .'* **false**'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''],
],
+ 'title' => '',
],
],
],
'errorCodes' => [
400 => [
- [
- 'errorCode' => 'ActionNotSupported',
- 'errorMessage' => 'The requested API operation \'%s\' is incorrect. Please check.',
+ ['errorCode' => 'APIVersionNotSupported', 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.', 'description' => ''],
+ ['errorCode' => 'InvalidArgument', 'errorMessage' => 'Parameter error.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredHeader', 'errorMessage' => 'The HTTP header \'%s\' must be specified.', 'description' => ''],
+ ['errorCode' => 'MissingRequiredParams', 'errorMessage' => 'The HTTP query \'%s\' must be specified.', 'description' => ''],
+ ],
+ 403 => [
+ ['errorCode' => 'AccessDenied', 'errorMessage' => 'The resources doesn\'t belong to you.', 'description' => ''],
+ ],
+ [
+ ['errorCode' => 'FlowNotExists', 'errorMessage' => 'Flow %s does not exist.', 'description' => ''],
+ ['errorCode' => 'ScheduleNotExists', 'errorMessage' => 'The schedule %s for flow %s does not exist.', 'description' => ''],
+ ],
+ 409 => [
+ ['errorCode' => 'ConcurrentUpdateError', 'errorMessage' => 'Update conflict, please retry.', 'description' => ''],
+ ],
+ 412 => [
+ ['errorCode' => 'PreconditionFailed', 'errorMessage' => 'The resource to be modified has been changed.', 'description' => ''],
+ ],
+ 500 => [
+ ['errorCode' => 'InternalServerError', 'errorMessage' => 'An internal error has occurred. Please retry.', 'description' => ''],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Description\\": \\"test description\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"testScheduleName\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
+ 'title' => 'UpdateSchedule',
+ 'summary' => 'Updates a time-based schedule.',
+ 'changeSet' => [],
+ 'ramActions' => [
+ [
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:UpdateSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
],
- [
- 'errorCode' => 'APIVersionNotSupported',
- 'errorMessage' => 'The requested API version \'%s\' is not supported yet. Please check.',
+ ],
+ ],
+ ],
+ ],
+ 'endpoints' => [
+ ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ap-southeast-1.fnf.aliyuncs.com', 'endpoint' => 'ap-southeast-1.fnf.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'cn-beijing.fnf.aliyuncs.com', 'endpoint' => 'cn-beijing.fnf.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'cn-hangzhou.fnf.aliyuncs.com', 'endpoint' => 'cn-hangzhou.fnf.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'cn-qingdao.fnf.aliyuncs.com', 'endpoint' => 'cn-qingdao.fnf.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'cn-shanghai.fnf.aliyuncs.com', 'endpoint' => 'cn-shanghai.fnf.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'cn-shenzhen.fnf.aliyuncs.com', 'endpoint' => 'cn-shenzhen.fnf.aliyuncs.com', 'vpc' => ''],
+ ['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'us-west-1.fnf.aliyuncs.com', 'endpoint' => 'us-west-1.fnf.aliyuncs.com', 'vpc' => ''],
+ ],
+ 'errorCodes' => [
+ ['code' => 'AccessDenied', 'message' => 'The resources does not belong to you.', 'http_code' => 403, 'description' => 'The request is denied due to the authority check failure.'],
+ ['code' => 'ActionNotSupported', 'message' => 'The requested API operation %s is incorrect. Please check.', 'http_code' => 400, 'description' => 'The requested API operation %s is incorrect. Please check.'],
+ ['code' => 'APIVersionNotSupported', 'message' => 'The requested API version %s is not supported yet. Please check.', 'http_code' => 400, 'description' => 'The requested API version %s is not supported yet. Please check.'],
+ ['code' => 'ConcurrentUpdateError', 'message' => 'Update conflict, please retry.', 'http_code' => 409, 'description' => 'Update conflict, please retry.'],
+ ['code' => 'EntityTooLarge', 'message' => 'The payload size exceeds maximum allowed size (%s bytes).', 'http_code' => 400, 'description' => 'The payload size exceeds maximum allowed size (%s bytes).'],
+ ['code' => 'ExecutionAlreadyCompleted', 'message' => 'Execution %s for flow %s has already completed.', 'http_code' => 400, 'description' => 'Execution %s for flow %s has already completed.'],
+ ['code' => 'ExecutionAlreadyExists', 'message' => 'Execution %s for flow %s already exists.', 'http_code' => 400, 'description' => 'Execution %s for flow %s already exists.'],
+ ['code' => 'ExecutionNotExists', 'message' => 'Execution %s for flow %s does not exist.', 'http_code' => 404, 'description' => 'Execution %s for flow %s does not exist.'],
+ ['code' => 'FlowAlreadyExists', 'message' => 'Flow %s already exists.', 'http_code' => 409, 'description' => 'Flow %s already exists.'],
+ ['code' => 'FlowNotEmpty', 'message' => 'The flow %s has schedules. Please delete all its schedules before deleting the flow.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'FlowNotExists', 'message' => 'Flow %s does not exist.', 'http_code' => 404, 'description' => 'Flow %s does not exist.'],
+ ['code' => 'InternalServerError', 'message' => 'An internal error has occurred. Please retry.', 'http_code' => 500, 'description' => 'An internal error has occurred. Please retry.'],
+ ['code' => 'InvalidAccessKeyID', 'message' => 'The AccessKey ID %s is invalid.', 'http_code' => 403, 'description' => 'The AccessKey ID %s is invalid.'],
+ ['code' => 'InvalidArgument', 'message' => 'Parameter error.', 'http_code' => 400, 'description' => 'Parameter error.'],
+ ['code' => 'MissingRequiredHeader', 'message' => 'The HTTP header \'%s\' must be specified.', 'http_code' => 400, 'description' => 'The HTTP header \'%s\' must be specified.'],
+ ['code' => 'MissingRequiredParams', 'message' => 'The HTTP query \'%s\' must be specified.', 'http_code' => 400, 'description' => 'The HTTP query \'%s\' must be specified.'],
+ ['code' => 'PreconditionFailed', 'message' => 'The resource to be modified has been changed.', 'http_code' => 412, 'description' => 'The resource to be modified has been changed. Please try again later.'],
+ ['code' => 'RequestTimeTooSkewed', 'message' => 'The difference between the request time %s and the current time %s is too large.', 'http_code' => 403, 'description' => 'The difference between the request time %s and the current time %s is too large.'],
+ ['code' => 'ResourceThrottled', 'message' => 'The request is throttled. Please try again later.', 'http_code' => 429, 'description' => 'The request is throttled. Please try again later.'],
+ ['code' => 'ScheduleAlreadyExists', 'message' => 'The schedule %s already exists in flow %s.', 'http_code' => 409, 'description' => ''],
+ ['code' => 'ScheduleNotExists', 'message' => 'The schedule %s for flow %s does not exist.', 'http_code' => 404, 'description' => ''],
+ ['code' => 'SignatureNotMatch', 'message' => 'The request signature we calculated does not match the signature you provided. Check your access key and signing method.', 'http_code' => 403, 'description' => 'The calculated signature of the request does not match the signature you provided. Check your AccessKey Secret and signing algorithm.'],
+ ['code' => 'TaskAlreadyCompleted', 'message' => 'Task %s has already completed.', 'http_code' => 400, 'description' => 'Task %s has already completed.'],
+ ['code' => 'TaskInvalidState', 'message' => 'Task is in an invalid state, please retry.', 'http_code' => 409, 'description' => 'Task is in an invalid state, please retry.'],
+ ['code' => 'UnsupportedMediaType', 'message' => 'The content type must be "application/json".', 'http_code' => 415, 'description' => 'The content type must be "application/json".'],
+ ],
+ 'changeSet' => [],
+ 'flowControl' => [
+ 'flowControlList' => [
+ ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'],
+ ],
+ ],
+ 'ram' => [
+ 'productCode' => 'FnF',
+ 'productName' => 'CloudFlow',
+ 'ramCodes' => ['fnf'],
+ 'ramLevel' => 'RESOURCE',
+ 'ramConditions' => [],
+ 'ramActions' => [
+ [
+ 'apiName' => 'StartSyncExecution',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:StartSyncExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
- [
- 'errorCode' => 'InvalidArgument',
- 'errorMessage' => 'Parameter error.',
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteFlow',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'fnf:DeleteFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
- [
- 'errorCode' => 'MissingRequiredHeader',
- 'errorMessage' => 'The HTTP header \'%s\' must be specified.',
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeExecution',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:DescribeExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
- [
- 'errorCode' => 'MissingRequiredParams',
- 'errorMessage' => 'The HTTP query \'%s\' must be specified.',
+ ],
+ ],
+ [
+ 'apiName' => 'CreateSchedule',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'fnf:CreateSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 403 => [
- [
- 'errorCode' => 'AccessDenied',
- 'errorMessage' => 'The resources doesn\'t belong to you.',
+ ],
+ [
+ 'apiName' => 'CreateFlow',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'fnf:CreateFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'Flow', 'arn' => 'acs:fnf:{#regionId}:{#accountId}:flow/*'],
],
],
- [
- [
- 'errorCode' => 'FlowNotExists',
- 'errorMessage' => 'Flow %s does not exist.',
+ ],
+ [
+ 'apiName' => 'DescribeSchedule',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:DescribeSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 412 => [
- [
- 'errorCode' => 'PreconditionFailed',
- 'errorMessage' => 'The resource to be modified has been changed.',
+ ],
+ [
+ 'apiName' => 'UpdateSchedule',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:UpdateSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
- 500 => [
- [
- 'errorCode' => 'InternalServerError',
- 'errorMessage' => 'An internal error has occurred. Please retry.',
+ ],
+ [
+ 'apiName' => 'ReportTaskFailed',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ReportTaskFailed',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
],
],
],
- 'staticInfo' => [
- 'returnType' => 'synchronous',
+ [
+ 'apiName' => 'StartExecution',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:StartExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'UpdateFlow',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:UpdateFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DeleteSchedule',
+ 'description' => '',
+ 'operationType' => 'delete',
+ 'ramAction' => [
+ 'action' => 'fnf:DeleteSchedule',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ReportTaskSucceeded',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ReportTaskSucceeded',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListExecutions',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ListExecutions',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'GetExecutionHistory',
+ 'description' => '',
+ 'operationType' => 'create',
+ 'ramAction' => [
+ 'action' => 'fnf:GetExecutionHistory',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'StopExecution',
+ 'description' => '',
+ 'operationType' => 'update',
+ 'ramAction' => [
+ 'action' => 'fnf:StopExecution',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListSchedules',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ListSchedules',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'DescribeFlow',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:DescribeFlow',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'All Resource', 'arn' => '*'],
+ ],
+ ],
+ ],
+ [
+ 'apiName' => 'ListFlows',
+ 'description' => '',
+ 'operationType' => 'get',
+ 'ramAction' => [
+ 'action' => 'fnf:ListFlows',
+ 'authLevel' => 'resource',
+ 'actionConditions' => [],
+ 'resources' => [
+ ['validationType' => 'always', 'product' => 'FnF', 'resourceType' => 'Flow', 'arn' => 'acs:fnf:{#regionId}:{#accountId}:flow/*'],
+ ],
+ ],
],
- 'responseDemo' => '[{"type":"json","example":"{\\n \\"NextToken\\": \\"testNextToken\\",\\n \\"RequestId\\": \\"testRequestId\\",\\n \\"Schedules\\": [\\n {\\n \\"Description\\": \\"test description\\",\\n \\"ScheduleId\\": \\"testScheduleId\\",\\n \\"Payload\\": \\"{\\\\\\"key\\\\\\": \\\\\\"value\\\\\\"}\\",\\n \\"ScheduleName\\": \\"my_schedule_name\\",\\n \\"CreatedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"LastModifiedTime\\": \\"2020-01-01T01:01:01.001Z\\",\\n \\"CronExpression\\": \\"0 * * * * *\\",\\n \\"Enable\\": true\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]',
- 'title' => 'ListSchedules',
- 'summary' => 'Queries time-based schedules in a flow.',
- ],
- ],
- 'endpoints' => [
- [
- 'regionId' => 'cn-qingdao',
- 'endpoint' => 'cn-qingdao.fnf.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-beijing',
- 'endpoint' => 'cn-beijing.fnf.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-hangzhou',
- 'endpoint' => 'cn-hangzhou.fnf.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shanghai',
- 'endpoint' => 'cn-shanghai.fnf.aliyuncs.com',
- ],
- [
- 'regionId' => 'cn-shenzhen',
- 'endpoint' => 'cn-shenzhen.fnf.aliyuncs.com',
- ],
- [
- 'regionId' => 'ap-southeast-1',
- 'endpoint' => 'ap-southeast-1.fnf.aliyuncs.com',
],
- [
- 'regionId' => 'us-west-1',
- 'endpoint' => 'us-west-1.fnf.aliyuncs.com',
+ 'resourceTypes' => [
+ ['validationType' => 'always', 'resourceType' => 'Flow', 'arn' => 'acs:fnf:*:{#accountId}:flow/{#FlowName}'],
+ ['validationType' => 'always', 'resourceType' => 'Execution', 'arn' => 'acs:fnf:*:{#accountId}:flow/{#FlowName}/execution/{#ExecutionName}'],
+ ['validationType' => 'always', 'resourceType' => 'Schedule', 'arn' => 'acs:fnf:*:{#accountId}:flow/{#FlowName}/schedule/*'],
+ ['validationType' => 'always', 'resourceType' => 'Flow', 'arn' => 'acs:fnf:{#regionId}:{#accountId}:flow/*'],
+ ['validationType' => 'always', 'resourceType' => 'Schedule', 'arn' => 'acs:fnf:*:{#accountId}:flow/{#FlowName}/schedule/{#ScheduleName}'],
+ ['validationType' => 'always', 'resourceType' => 'Execution', 'arn' => 'acs:fnf:*:{#accountId}:flow/{#FlowName}/execution/*'],
],
],
];