'1.0', 'info' => ['style' => 'RPC', 'product' => 'ROS', 'version' => '2019-09-10'], 'directories' => [ [ 'children' => ['CreateAITask', 'ListAITasks'], 'type' => 'directory', 'title' => 'AI task operations', ], [ 'children' => ['CreateStack', 'DeleteStack', 'UpdateStack', 'ContinueCreateStack', 'ListStacks', 'CancelUpdateStack', 'CancelStackOperation', 'ListStackEvents', 'ListStackOperationRisks', 'PreviewStack'], 'type' => 'directory', 'title' => 'Stack operations', ], [ 'children' => ['ListStackResources', 'GetStackResource'], 'type' => 'directory', 'title' => 'Resource operations', ], [ 'children' => ['CreateTemplateScratch', 'DeleteTemplateScratch', 'UpdateTemplateScratch', 'GetTemplateScratch', 'GenerateTemplateByScratch'], 'type' => 'directory', 'title' => 'Resource scenario operations', ], [ 'children' => ['ListTemplateVersions', 'GetTemplateParameterConstraints', 'SetTemplatePermission', 'GetTemplateEstimateCost', 'GetTemplateSummary', 'ValidateTemplate', 'GenerateTemplatePolicy'], 'type' => 'directory', 'title' => 'Template operations', ], [ 'children' => ['SetStackPolicy', 'GetStackPolicy'], 'type' => 'directory', 'title' => 'Stack policy operations', ], [ 'children' => ['CreateChangeSet', 'DeleteChangeSet', 'GetChangeSet', 'ListChangeSets', 'ExecuteChangeSet'], 'type' => 'directory', 'title' => 'Change set operations', ], [ 'children' => ['CreateStackGroup', 'DeleteStackGroup', 'UpdateStackGroup', 'ListStackGroups', 'GetStackGroup', 'CreateStackInstances', 'DeleteStackInstances', 'UpdateStackInstances', 'GetStackInstance', 'StopStackGroupOperation', 'ListStackInstances', 'GetStackGroupOperation', 'ListStackGroupOperations', 'ListStackGroupOperationResults', 'ImportStacksToStackGroup'], 'type' => 'directory', 'title' => 'Stack group operations', ], [ 'children' => ['UpdateStackTemplateByResources', 'GetStackDriftDetectionStatus', 'ListStackResourceDrifts', 'DetectStackDrift', 'DetectStackGroupDrift', 'DetectStackResourceDrift'], 'type' => 'directory', 'title' => 'Drift detection operations', ], [ 'children' => ['RegisterResourceType', 'SetResourceType', 'DeregisterResourceType', 'ListResourceTypes', 'GetResourceTypeTemplate', 'GetResourceType', 'ListResourceTypeVersions', 'ListResourceTypeRegistrations'], 'type' => 'directory', 'title' => 'Resource type operations', ], [ 'children' => ['SignalResource', 'GetServiceProvisions', 'GetFeatureDetails'], 'type' => 'directory', 'title' => 'Other operations', ], [ 'children' => [ 'EnableServiceAccess', 'EnableServices', 'GetServiceAccess', 'ListSummaries', 'CreateDiagnostic', 'CreateTemplate', 'DeleteDiagnostic', 'DeleteTemplate', 'DescribeRegions', 'GetAITask', 'GetDiagnostic', 'GetStack', 'GetTemplate', 'ListAITaskEvents', 'ListDiagnostics', 'ListTagKeys', 'ListTagResources', 'ListTagValues', 'ListTemplateScratches', 'ListTemplates', 'MoveResourceGroup', 'SetDeletionProtection', 'TagResources', 'UntagResources', 'UpdateTemplate', ], 'type' => 'directory', 'title' => 'Others', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'CancelStackOperation' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'CancelType', 'in' => 'query', 'schema' => ['description' => 'The method that you want to use to cancel the operations. Valid values:'."\n" ."\n" .'- Quick: cancels the operations on the stack at the earliest opportunity. In this case, Resource Orchestration Service (ROS) stops scheduling new resources and stops running resources at the earliest opportunity. If you use this method, the resource status may become invalid and subsequent stack operations may be affected.'."\n" ."\n" .'- Safe (default): cancels the operations on the stack in a secure manner. In this case, ROS stops scheduling new resources and waits for running resources to be stopped.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Safe', 'title' => ''], ], [ 'name' => 'AllowedStackOperations', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The operations that you want to cancel on the stack.', 'type' => 'array', 'items' => ['description' => 'The operation N that you want to cancel on the stack. Valid values:'."\n" ."\n" .'- CREATE: creates a stack, or continues to create a stack from where the creation operation is stopped.'."\n" ."\n" .'- UPDATE: updates a stack.'."\n" ."\n" .'- IMPORT\\_UPDATE: creates a stack by importing resources.'."\n" ."\n" .'- IMPORT\\_UPDATE: updates a stack by importing resources.'."\n" ."\n" .'- DELETE: deletes a stack.'."\n" ."\n" .'- NOT\\_ROLLBACK (default): all types of non-rollback operations, including CREATE, UPDATE, IMPORT\\_CREATE, IMPORT\\_UPDATE, and DELETE. If you cancel a rollback operation on a stack, the stack status may become invalid and subsequent stack operations may be affected. We recommend that you do not cancel rollback operations.'."\n" ."\n" .'- CREATE\\_ROLLBACK: rolls back resources after a stack fails to be created.'."\n" ."\n" .'- ROLLBACK: rolls back resources after a stack fails to be updated.'."\n" ."\n" .'- IMPORT\\_CREATE\\_ROLLBACK: rolls back resources after a stack fails to be created by using imported resources.'."\n" ."\n" .'- IMPORT\\_UPDATE\\_ROLLBACK: rolls back resources after a stack fails to be updated by using imported resources.'."\n" ."\n" .'- ALL: all types of operations, including CREATE, UPDATE, IMPORT\\_CREATE, IMPORT\\_UPDATE, DELETE, CREATE\\_ROLLBACK, ROLLBACK, IMPORT\\_CREATE\\_ROLLBACK, and IMPORT\\_UPDATE\\_ROLLBACK.'."\n" ."\n" .'Valid values of N: 1 to 10.', 'type' => 'string', 'required' => false, 'example' => 'NOT_ROLLBACK', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'CancelStackOperation', 'summary' => 'Cancels operations on a stack.', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. | 资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 400 | NotSupported | {feature} is not supported. | 不支持feature(特性或操作)。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelStackOperation'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:CancelStackOperation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'CancelUpdateStack' => [ 'path' => '/V2/CancelUpdateStack', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'CancelType', 'in' => 'query', 'schema' => ['description' => 'The method to cancel the update operation. Valid values:'."\n" ."\n" .'- Quick: cancels the update of a stack as soon as possible.'."\n" ."\n" .'- Safe: cancels the update of a stack as safely as possible.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Safe', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'CancelUpdateStack', 'summary' => 'Cancels an update operation on a stack. You can call this operation to cancel an update operation on a stack when the stack is being updated or created.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => '| HTTP status code | Error code | Error message | Description |'."\n" .'| ---------------- | ---------------- | ---------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. | The error message returned because the specified stack does not exist. name indicates the name or ID of the stack. |'."\n" .'| 409 | ActionInProgress | Stack {name} already has an action ({action}) in progress. | The error message returned because the specified stack has a change operation in progress. name indicates the name or ID of the stack, and action indicates the change operation. |', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. | 资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 409 | ActionInProgress | Stack {name} already has an action ({action}) in progress. | 资源栈在变更中。name为资源栈名称或ID,action为具体的变更操作。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelUpdateStack'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:CancelUpdateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'ContinueCreateStack' => [ 'summary' => 'Continues to create a stack after the stack fails to be created.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM role. Resource Orchestration Service (ROS) assumes the RAM role to create the stack and uses the credentials of the role to call the APIs of Alibaba Cloud services.
'."\n" .'ROS assumes the RAM role to perform operations on the stack. If you have permissions to perform operations on the stack but do not have permissions to use the RAM role, ROS still assumes the RAM role. You must make sure that the least privileges are granted to the RAM role.
'."\n" .'If you do not specify this parameter, ROS assumes the existing role that is associated with the stack. If no roles are available, ROS uses a temporary credential that is generated from the credentials of your account.
'."\n" .'The name of the RAM role can be up to 64 bytes in length.', 'type' => 'string', 'required' => false, 'example' => 'test-role', 'title' => ''], ], [ 'name' => 'Mode', 'in' => 'query', 'schema' => ['description' => 'The mode in which ROS continues to create the stack. Valid values:'."\n" ."\n" .'- Recreate (default)'."\n" ."\n" .' If you set this parameter to Recreate, ROS continues to create only the following types of resources:'."\n" ."\n" .' - Resources that fail to be created'."\n" ."\n" .' - Resources that you specify for RecreatingResources.N'."\n" ."\n" .' - Dependencies of the resources that you specify for RecreatingResources.N'."\n" ."\n" .' - Resources that you have not created'."\n" ."\n" .'> RecreatingResources.N, TemplateBody, TemplateURL, and Parameters take effect only when Mode is set to Recreate.'."\n" ."\n" .'- Ignore'."\n" ."\n" .' - ROS ignores and discards resources that fail to be created and you have not created, and considers that the stack is successfully created.'."\n" ."\n" .' - The body of the template that you use to create the stack is changed.'."\n" ."\n" .'> This mode is available only for ROS stacks.', 'type' => 'string', 'required' => false, 'example' => 'Recreate', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'query', 'schema' => ['description' => 'The structure that contains the template body. The template body must be 1 to 524,288 bytes in length.
'."\n" .'If the length of the template body exceeds the upper limit, we recommend that you add parameters to the HTTP POST request body to prevent request failures caused by excessively long URLs.'."\n" ."\n" .'A ROS template is subject to the following limits:'."\n" ."\n" .'- You can modify only the following sections in the template: Description, Metadata, Resources, and Outputs.'."\n" ."\n" .'- You cannot add sections to or remove sections from the template.'."\n" ."\n" .'- The Resources section is subject to the following limits:'."\n" ."\n" .' - You cannot delete the resources or change the template body for the resources that you do not want to continue to create.'."\n" ."\n" .' - You can delete the resources or change the template body for the resources that you want to continue to create.'."\n" ."\n" .' - You can add resources to this section.'."\n" ."\n" .'> * This parameter takes effect only when Mode is set to Recreate.'."\n" .'>'."\n" .'> * You can specify only one of the following parameters: TemplateBody, TemplateURL, and TemplateId. If you do not specify the parameters, the existing template is used.', 'type' => 'string', 'required' => false, 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an Object Storage Service (OSS) bucket, such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. The template body can be up to 524,288 bytes in length.'."\n" ."\n" .'If you do not specify the region ID of the OSS bucket, the value of RegionId is used.'."\n" ."\n" .'> - This parameter takes effect only when Mode is set to Recreate. When you specify TemplateURL of a template, the template is subject to the limits that are described for TemplateBody in this topic.'."\n" .'>'."\n" .'> - You can specify only one of the following parameters: TemplateBody, TemplateURL, and TemplateId. If you do not specify the parameters, the existing template is used.', 'type' => 'string', 'required' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether only to validate the stack in the request. Valid values:'."\n" ."\n" .'- true: only validates the stack.'."\n" ."\n" .'- false (default): validates and continues to create the stack.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. This parameter applies to shared and private templates.'."\n" ."\n" .'> - This parameter takes effect when `Mode` is set to `Recreate`. When you specify TemplateId of a template, the template is subject to the limits that are described for `TemplateBody` in this topic.'."\n" .'>'."\n" .'> - You can specify only one of the following parameters: `TemplateBody`, `TemplateURL`, and `TemplateId`. If you do not specify the parameters, the existing template is used.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. This parameter takes effect only when TemplateId is specified.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'RecreatingResources', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The resources that ROS continues to create after the resources failed to be created. You can add new resources to the resources that ROS continues to create. ROS continues to create all dependencies of the new resources.'."\n" ."\n" .'> This parameter is available only for ROS stacks.', 'type' => 'array', 'items' => ['description' => 'The resource that ROS continues to create after the resource failed to be created. You can add new resources to the resources that ROS continues to create. ROS continues to create all dependencies of the new resources.'."\n" ."\n" .'> This parameter is available only for ROS stacks.', 'type' => 'string', 'required' => false, 'example' => 'WebServer', 'title' => ''], 'required' => false, 'example' => 'WebServer', 'maxItems' => 200, 'title' => '', ], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The template parameters that you want to use to override specific parameters.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of template parameter N that you want to use to override a specific parameter. If you do not specify the name and value of a template parameter, ROS uses the name and value specified in the previous operation that was performed to create the stack. Maximum value of N: 200.'."\n" ."\n" .'> This parameter takes effect only when Mode is set to Recreate.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of template parameter N that you want to use to override a specific parameter. Maximum value of N: 200.'."\n" ."\n" .'For ROS stacks, the template parameters that you use to override specific parameters are subject to the following limits:'."\n" ."\n" .'- You cannot change the condition values in the Conditions section of a template from true to false or from false to true.'."\n" ."\n" .'- The template parameters can be referenced only by resources that ROS continues to create.'."\n" ."\n" .'> This parameter takes effect only when Mode is set to Recreate.', 'type' => 'string', 'required' => true, 'example' => '12', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'Parallelism', 'in' => 'query', 'schema' => ['description' => 'The maximum number of concurrent operations that can be performed on resources.'."\n" ."\n" .'By default, this parameter is empty. You can set this parameter to an integer that is greater than or equal to 0.'."\n" ."\n" .'> - If you set this parameter to an integer that is greater than 0, the integer is used.'."\n" .'>'."\n" .'> - If you set this parameter to 0, no limit is imposed on ROS stacks. However, the default value in Terraform is used for Terraform stacks. In most cases, the default value in Terraform is 10.'."\n" .'>'."\n" .'> - If you leave this parameter empty, the value that you specified for this parameter in the previous request is used. If you left this parameter empty in the previous request, no limit is imposed on ROS stacks. However, the default value in Terraform is used for Terraform stacks. In most cases, the default value in Terraform is 10.'."\n" .'>'."\n" .'> - If you set this parameter to a specific value, ROS associates the value with the stack. The value affects subsequent operations on the stack.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'RecreatingOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The options that ROS adopts when ROS continues to create the stack.', 'type' => 'array', 'items' => ['description' => 'The option that ROS adopts when ROS continues to create the stack. This parameter takes effect when `Mode` is set to `Recreate`. Valid values:'."\n" ."\n" .'- TryToFixSignalFailureByRerunEcsCommand: ROS tries to fix existing signals of the FAILURE type. When ALIYUN::ROS::WaitCondition resources fail to be created, ROS uses the associated and created ALIYUN::ECS::RunCommand and ALIYUN::ECS::Invocation resources and the relevant dependencies to recreate the ALIYUN::ROS::WaitCondition resources.'."\n" ."\n" .' > This value is valid only for ROS stacks.'."\n" ."\n" .'- IgnoreExistingSignalFailure: ROS ignores existing signals of the FAILURE type. If ALIYUN::ROS::WaitCondition resources fail to be created, the resources are successfully created when ROS continues to create the stack.'."\n" ."\n" .' > This value is valid only for ROS stacks.'."\n" ."\n" .'- AutoRecreatingResources: ROS automatically recreates the resources whose template content or referenced parameters are modified and the relevant dependencies. This option facilitates the configurations of RecreatingResources.N. However, unnecessary resources may also be recreated.'."\n" ."\n" .' > This value is valid only for ROS stacks.'."\n" ."\n" .'- CreateNewPrepaidInstance: ROS creates a **new subscription instance** if **subscription** resources fail to be created, or if you use ROS to recreate subscription resources that are successfully created.'."\n" ."\n" .'> * This value is valid only for ROS stacks.'."\n" .'>'."\n" .'> * If a subscription instance is already created, ROS retains the subscription instance because subscription resources **cannot be deleted**.'."\n" .'>'."\n" .'> * If you do not set RecreatingOptions.N to CreateNewPrepaidInstance, ROS tries to reuse an existing instance. If ROS reuses the instance, you cannot modify the resource properties, or you can modify only a small number of resource properties.', 'type' => 'string', 'required' => false, 'example' => 'CreateNewPrepaidInstance', 'title' => ''], 'required' => false, 'maxItems' => 5, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'DryRunResult' => [ 'description' => 'The validation result.', 'type' => 'object', 'properties' => [ 'ParametersAllowedToBeModified' => [ 'description' => 'The parameters that can be modified.', 'type' => 'array', 'items' => ['description' => 'The parameter that can be modified. The operation that is performed to modify the parameters does not cause a validation error.'."\n" ."\n" .'> This parameter is returned only if DryRun is set to `true`. The value of ParametersAllowedToBeModified varies based on the values of Mode, Template\\*, RecreatingResources.N, and RecreatingOptions.N.', 'type' => 'string', 'example' => 'description', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersConditionallyAllowedToBeModified' => [ 'description' => 'The parameters that can be modified under specific conditions.', 'type' => 'array', 'items' => ['description' => 'The parameter that can be modified under specific conditions.'."\n" ."\n" .'The new values of the parameters determine whether the operation that is performed to modify the parameters causes a validation error.'."\n" ."\n" .'> This parameter is returned only if DryRun is set to `true`. The value of ParametersConditionallyAllowedToBeModified varies based on the values of Mode, Template\\*, RecreatingResources.N, and RecreatingOptions.N.', 'type' => 'string', 'example' => 'name', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersNotAllowedToBeModified' => [ 'description' => 'The parameters that cannot be modified.', 'type' => 'array', 'items' => ['description' => 'The parameter that cannot be modified. The operation that is performed to modify the parameters causes a validation error.'."\n" ."\n" .'> This parameter is returned only if DryRun is set to `true`. The value of ParametersNotAllowedToBeModified varies based on the values of Mode, Template\\*, RecreatingResources.N, and RecreatingOptions.N.', 'type' => 'string', 'example' => 'cidr', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ContinueCreateStack', 'description' => 'This topic provides an example on how to continue to create a stack after the stack fails to be created. In this example, the stack whose ID is `4a6c9851-3b0f-4f5f-b4ca-a14bf691****` is created in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | CircularDependency | Circular Dependency Found: {reason}. |模板包含循环引用,reason为具体原因。 |'."\n" .'| 400 | InvalidSchema | {reason}. |模板格式不正确,reason为具体原因。 |'."\n" .'| 400 | InvalidTemplateAttribute | The Referenced Attribute ({resource} {name}) is incorrect. |模板包含不正确的资源属性(输出)引用,resource为资源名,name为属性名。 |'."\n" .'| 400 | InvalidTemplatePropertyType | The specified value type of ({resource} {section}) is incorrect. |模板资源定义中,字段类型不正确,resource为资源名,section为字段名。 |'."\n" .'| 400 | InvalidTemplateReference | The specified reference "{name}" (in {referencer}) is incorrect. |模板包含不正确的引用,name为引用名,referencer为引用者。 |'."\n" .'| 400 | InvalidTemplateSection | The template section is invalid: {section}. |模板包含无效的字段,section为字段名。 |'."\n" .'| 400 | InvalidTemplateVersion | The template version is invalid: {reason}. |模板版本不正确,reason为具体原因。 |'."\n" .'| 400 | StackValidationFailed | {reason}. |资源栈校验失败,reason为具体原因。 |'."\n" .'| 400 | UnknownUserParameter | The Parameter ({name}) was not defined in template. |传递的参数在模板中未定义,name为参数名。 |'."\n" .'| 400 | UserParameterMissing | The Parameter {name} was not provided. |参数在模板中已定义,但未传递值,name为参数名。 |'."\n" .'| 400 | ContinueCreateStackValidationFailed | {reason}. |继续创建资源栈校验失败,reason为具体原因。|'."\n" .'| 404 | ResourceNotFound | The Resource ({name}) could not be found in Stack {stack}. |资源栈中不存某资源。name为资源名,stack为资源栈名称或ID。 |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 409 | ActionInProgress | Stack {name} already has an action ({action}) in progress. |资源栈在变更中。name为资源栈名称或ID,action为变更操作。 |'."\n" .'| 404 | TemplateNotFound |The Tempalte ({ ID }) could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ContinueCreateStack'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:ContinueCreateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\",\\n \\"DryRunResult\\": {\\n \\"ParametersAllowedToBeModified\\": [\\n \\"description\\"\\n ],\\n \\"ParametersConditionallyAllowedToBeModified\\": [\\n \\"name\\"\\n ],\\n \\"ParametersNotAllowedToBeModified\\": [\\n \\"cidr\\"\\n ]\\n }\\n}","type":"json"}]', ], 'CreateAITask' => [ 'summary' => 'Create AI Task', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '227764', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'TaskType', 'in' => 'query', 'schema' => [ 'description' => 'The type of AI task. Values:'."\n" .'- GenerateTemplate: AI template generation'."\n" .'- FixTemplate: AI template repair', 'type' => 'string', 'required' => false, 'enumValueTitles' => ['GenerateTemplate' => 'GenerateTemplate', 'FixTemplate' => 'FixTemplate'], 'example' => 'GenerateTemplate', 'title' => '', ], ], [ 'name' => 'Prompt', 'in' => 'query', 'schema' => ['description' => 'The input description for the AI task.'."\n" ."\n" .'- When the task type is Generate Template, this parameter specifies the functionality of the template to be generated.'."\n" .'- When the task type is FixTemplate, this parameter can describe how the template should be repaired.', 'type' => 'string', 'required' => false, 'example' => 'Create oneECS, and deploynignx service', 'title' => ''], ], [ 'name' => 'Template', 'in' => 'formData', 'schema' => ['description' => 'When the task type is AI template repair, specify the original template that needs to be fixed or modified.', 'type' => 'string', 'required' => false, 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the template to be generated or repaired. Default is ROS.', 'type' => 'string', 'required' => false, 'enumValueTitles' => ['ROS' => 'ROS', ' Terraform' => ' Terraform'], 'example' => 'ROS'."\n", 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F'], 'TaskId' => ['description' => 'AI task ID.', 'type' => 'string', 'example' => 't-asas*****', 'title' => ''], 'Code' => ['description' => 'Error code.', 'type' => 'string', 'example' => 'Forbidden', 'title' => ''], 'Message' => ['description' => 'Error message.', 'type' => 'string', 'example' => 'You are not authorized to complete this action.', 'title' => ''], 'Success' => ['description' => 'Indicates whether the call was successful. Values:'."\n" .'- true: Call succeeded.'."\n" .'- false: Call failed.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'HttpStatusCode' => ['description' => 'HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], ], 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"TaskId\\": \\"t-asas*****\\",\\n \\"Code\\": \\"Forbidden\\",\\n \\"Message\\": \\"You are not authorized to complete this action.\\",\\n \\"Success\\": \\"true\\",\\n \\"HttpStatusCode\\": 200\\n}","type":"json"}]', 'title' => 'Create AI Task', 'description' => 'This API allows users to create an AI task based on the specified task type, covering a range of capabilities from natural language understanding to resource stack deployment. Users need to provide the task type and any required parameters, and the API will return a unique TaskId for tracking the status and results of the task.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '5', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateAITask'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateAITask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'translator' => 'machine', ], 'CreateChangeSet' => [ 'summary' => 'Creates a change set for a stack so you can preview changes before execution.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATURErosM9I2VQ'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID. ROS compares the stack information with the submitted changes, such as a modified template or different parameter values, to generate the change set. Call [ListStacks](~~610818~~) to query stack IDs.'."\n" ."\n" .'> This parameter takes effect only when ChangeSetType is set to UPDATE or IMPORT.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'StackPolicyURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the stack policy file. The URL must point to a policy on a web server (HTTP or HTTPS) or in an OSS bucket, such as oss\\://ros/stack-policy/demo or oss\\://ros/stack-policy/demo?RegionId=cn-hangzhou. Maximum policy file size: 16,384 bytes.'."\n" ."\n" .'Maximum URL length: 1,350 bytes.'."\n" ."\n" .'> If you do not specify the region of the OSS bucket, the value of RegionId is used.'."\n" ."\n" .'When ChangeSetType is set to **CREATE**, you can specify only one of the StackPolicyBody and StackPolicyURL parameters.'."\n" ."\n" .'When ChangeSetType is set to **UPDATE**, you can specify only one of the following parameters:'."\n" ."\n" .'- StackPolicyBody'."\n" ."\n" .'- StackPolicyURL'."\n" ."\n" .'- StackPolicyDuringUpdateBody'."\n" ."\n" .'- StackPolicyDuringUpdateURL', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/stack-policy/demo', 'title' => ''], ], [ 'name' => 'StackPolicyBody', 'in' => 'query', 'schema' => ['description' => 'The structure of the stack policy. The policy body must be 1 to 16,384 bytes in length.'."\n" ."\n" .'When ChangeSetType is set to **CREATE**, you can specify only one of the StackPolicyBody and StackPolicyURL parameters.'."\n" ."\n" .'When ChangeSetType is set to **UPDATE**, you can specify only one of the following parameters:'."\n" ."\n" .'- StackPolicyBody'."\n" ."\n" .'- StackPolicyURL'."\n" ."\n" .'- StackPolicyDuringUpdateBody'."\n" ."\n" .'- StackPolicyDuringUpdateURL', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"Statement":[{"Effect":"Allow","Action":"Update:*","Principal":"*","Resource":"*"}]}', 'title' => ''], ], [ 'name' => 'StackName', 'in' => 'query', 'schema' => ['description' => 'The stack name. Maximum length: 255 characters. The name can contain digits, letters, hyphens (-), and underscores (\\_), and must start with a digit or letter.'."\n" ."\n" .'> This parameter takes effect only when ChangeSetType is set to CREATE or IMPORT.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'MyStack', 'title' => ''], ], [ 'name' => 'UsePreviousParameters', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the values of parameters that were last used. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false (default)'."\n" ."\n" .'> This parameter takes effect only when ChangeSetType is set to UPDATE or IMPORT.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'ChangeSetType', 'in' => 'query', 'schema' => ['description' => 'The type of the change set. Valid values:'."\n" ."\n" .'- CREATE: creates a change set for a new stack.'."\n" ."\n" .'- UPDATE (default): creates a change set for an existing stack.'."\n" ."\n" .'- IMPORT: creates a change set for a new stack or an existing stack to import resources that are not managed by ROS.'."\n" ."\n" .'If you set the value of ChangeSetType to CREATE, ROS creates a new stack. The stack is in the `REVIEW_IN_PROGRESS` state until you execute the change set.'."\n" ."\n" .'> - You cannot use the UPDATE type to create a change set for a new stack or the CREATE type to create a change set for an existing stack.'."\n" .'>'."\n" .'> - You cannot set a stack policy for a change set of the IMPORT type. You can set a stack policy when you create or update a stack.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'UPDATE', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the change set. The description can be up to 1,024 bytes in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'It is a demo.', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the change set.'."\n" ."\n" .'Call [DescribeRegions](~~131035~~) to query available regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token used to ensure request idempotence. The token must be unique across requests and can be up to 64 characters in length, containing letters, digits, hyphens (-), and underscores (\\_). [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the template file. The URL must point to a template on a web server (HTTP or HTTPS) or in an OSS bucket, such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. Maximum template body size: 524,288 bytes.'."\n" ."\n" .'> If you do not specify the region of the OSS bucket, the value of RegionId is used.'."\n" ."\n" .'You can specify only one of the TemplateBody, TemplateURL, and TemplateId parameters.'."\n" ."\n" .'The URL can be up to 1,024 bytes in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/template/demo', 'title' => ''], ], [ 'name' => 'StackPolicyDuringUpdateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the temporary overriding stack policy file. The URL must point to a policy on a web server (HTTP or HTTPS) or in an OSS bucket, such as oss\\://ros/stack-policy/demo or oss\\://ros/stack-policy/demo?RegionId=cn-hangzhou. Maximum policy file size: 16,384 bytes.'."\n" ."\n" .'> If you do not specify the region of the OSS bucket, the value of RegionId is used.'."\n" ."\n" .'Maximum URL length: 1,350 bytes. To update protected resources, specify a temporary overriding stack policy. If unspecified, the current stack policy applies. This parameter takes effect only when ChangeSetType is set to UPDATE. You can specify only one of the following parameters:'."\n" ."\n" .'- StackPolicyBody'."\n" ."\n" .'- StackPolicyURL'."\n" ."\n" .'- StackPolicyDuringUpdateBody'."\n" ."\n" .'- StackPolicyDuringUpdateURL', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/stack-policy/demo', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The template body. Length: 1 to 524,288 bytes. For large templates, use HTTP POST with a body parameter to avoid URL length limits.'."\n" ."\n" .'> You can specify only one of the TemplateBody, TemplateURL, and TemplateId parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'TimeoutInMinutes', 'in' => 'query', 'schema' => ['description' => 'The timeout period before the stack enters CREATE\\_FAILED or UPDATE\\_FAILED state. Required when ChangeSetType is CREATE. Optional when ChangeSetType is UPDATE.'."\n" ."\n" .'- Unit: minutes.'."\n" ."\n" .'- Valid values: 10 to 1440.'."\n" ."\n" .'- Default value: 60.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '12', 'title' => ''], ], [ 'name' => 'DisableRollback', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to disable rollback on stack creation failure. Valid values:'."\n" ."\n" .'- true: disables rollback on creation failure.'."\n" ."\n" .'- false (default): enables rollback on creation failure.'."\n" ."\n" .'> This parameter takes effect only when ChangeSetType is set to CREATE or IMPORT.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ChangeSetName', 'in' => 'query', 'schema' => ['description' => 'The change set name. Maximum length: 255 characters. The name can contain digits, letters, hyphens (-), and underscores (\\_), and must start with a digit or letter.'."\n" ."\n" .'> The name of the change set must be unique within the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyChangeSet', 'title' => ''], ], [ 'name' => 'StackPolicyDuringUpdateBody', 'in' => 'query', 'schema' => ['description' => 'The temporary overriding stack policy body. Length: 1 to 16,384 bytes. To update protected resources, specify a temporary overriding policy. If unspecified, the current stack policy applies. This parameter takes effect only when ChangeSetType is set to UPDATE. You can specify only one of the following parameters:'."\n" ."\n" .'- StackPolicyBody'."\n" ."\n" .'- StackPolicyURL'."\n" ."\n" .'- StackPolicyDuringUpdateBody'."\n" ."\n" .'- StackPolicyDuringUpdateURL', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"Statement":[{"Effect":"Allow","Action":"Update:*","Principal":"*","Resource":"*"}]}', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The RAM role name. ROS assumes this role to call Alibaba Cloud service APIs and always uses it for all stack operations. If you lack the required permissions, ROS assumes the role specified by RamRoleName. If unspecified, ROS uses the existing stack role. If no role is available, ROS uses a temporary credential from your account. Maximum length: 64 bytes.'."\n" ."\n" .'[Stack roles](~~2568025~~).', 'type' => 'string', 'required' => false, 'example' => 'test-role', 'title' => ''], ], [ 'name' => 'ReplacementOption', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable replacement update when a resource property change does not support modification updates. A replacement update deletes the existing resource and creates a new one with a new physical ID. Valid values:'."\n" ."\n" .'- Enabled: enables replacement update.'."\n" ."\n" .'- Disabled (default): disables replacement update.'."\n" ."\n" .'> Modification updates are preferentially used. This parameter takes effect only when ChangeSetType is set to UPDATE.', 'type' => 'string', 'required' => false, 'example' => 'Disabled', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. This parameter applies to shared templates and private templates.'."\n" ."\n" .'Call [ListTemplates](~~610842~~) to query template IDs.'."\n" ."\n" .'> You can specify only one of the TemplateBody, TemplateURL, and TemplateId parameters.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template.'."\n" ."\n" .'> This parameter takes effect only when TemplateId is specified.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters that are defined in the template.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter that is defined in the template. If you do not specify the name and value of a parameter, ROS uses the default name and value that are specified in the template. The value of N can be up to 200.'."\n" ."\n" .'> The Parameters parameter is optional. If you specify Parameters, you must also specify Parameters.N.ParameterKey.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter that is defined in the template. The value of N can be up to 200.'."\n" ."\n" .'> The Parameters parameter is optional. If you specify Parameters, you must also specify Parameters.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => '12', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'NotificationURLs', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of webhook addresses for receiving stack event notifications.', 'type' => 'array', 'items' => ['description' => 'The webhook address for receiving stack event notifications. Valid values:'."\n" ."\n" .'- HTTP POST URL Each URL can be up to 1,024 bytes in length.'."\n" ."\n" .'- eventbridge Stack status changes are sent to the EventBridge service. You can log on to the [EventBridge console](https://eventbridge.console.aliyun.com) and click **Event Buses** in the navigation pane on the left to view event information.'."\n" ."\n" .'> This feature is supported in the China (Hangzhou), China (Shanghai), China (Beijing), China (Hong Kong), and China (Zhangjiakou) regions.'."\n" ."\n" .'Maximum: 5 URLs. Notifications are sent on stack status changes. With rollback enabled, CREATE\\_FAILED and UPDATE\\_FAILED are replaced by CREATE\\_ROLLBACK and ROLLBACK notifications. IN\\_PROGRESS is not reported. Notifications are sent regardless of the Outputs parameter. Sample notification:'."\n" ."\n" .'```'."\n" .'{'."\n" .' "Outputs": ['."\n" .' {'."\n" .' "Description": "No description given",'."\n" .' "OutputKey": "InstanceId",'."\n" .' "OutputValue": "i-xxx"'."\n" .' }'."\n" .' ],'."\n" .' "StackId": "80bd6b6c-e888-4573-ae3b-93d29113****",'."\n" .' "StackName": "test-notification-url",'."\n" .' "Status": "CREATE_COMPLETE"'."\n" .'}'."\n" .'```', 'type' => 'string', 'required' => false, 'example' => 'http://example.com/ros-notify', 'title' => ''], 'required' => false, 'example' => 'http://my-site.com/ros-notify', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'ResourcesToImport', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of resources to be imported.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceIdentifier' => ['description' => 'A key-value mapping between strings. The value is a JSON string that is used to identify the resource to be imported. The key is the identifier property of the resource, such as the VpcId of an ALIYUN::ECS::VPC resource. The value is the value of the property, such as `vpc-2zevx9ios****`.'."\n" ."\n" .'Call [GetTemplateSummary](~~172485~~) to query resource identifier properties.'."\n" ."\n" .'> This parameter takes effect only when ChangeSetType is set to IMPORT. The ResourcesToImport parameter is optional. If you specify ResourcesToImport, you must also specify ResourcesToImport.N.ResourceIdentifier.', 'type' => 'string', 'required' => false, 'example' => '{"VpcId": "vpc-2zevx9ios******"}', 'title' => ''], 'LogicalResourceId' => ['description' => 'The logical ID of the resource. The logical ID is the resource name that is defined in the template.'."\n" ."\n" .'> This parameter takes effect only when ChangeSetType is set to IMPORT. The ResourcesToImport parameter is optional. If you specify ResourcesToImport, you must also specify ResourcesToImport.N.LogicalResourceId.', 'type' => 'string', 'required' => false, 'example' => 'Vpc', 'title' => ''], 'ResourceType' => ['description' => 'The type of the resource. The resource type must be the same as the resource type that is defined in the template.'."\n" ."\n" .'> This parameter takes effect only when ChangeSetType is set to IMPORT. The ResourcesToImport parameter is optional. If you specify ResourcesToImport, you must also specify ResourcesToImport.N.ResourceType.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 300, 'title' => '', 'example' => '', ], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The resource scenario ID, which is the resource management scenario ID.'."\n" ."\n" .'This parameter takes effect only when ChangeSetType is set to IMPORT. This parameter supports only the creation of new stacks for resource import.'."\n" ."\n" .'If you want to import resources in a resource management scenario, specify only this parameter. Do not specify parameters related to templates.'."\n" ."\n" .'Call [ListTemplateScratches](~~610832~~) to query scenario IDs.', 'type' => 'string', 'required' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'Parallelism', 'in' => 'query', 'schema' => ['description' => 'The maximum number of concurrent resource operations. By default, this value is empty. Once set, the value is associated with the stack and affects subsequent operations.'."\n" ."\n" .'This parameter takes effect only when ChangeSetType is set to CREATE or UPDATE. Valid values:'."\n" ."\n" .'- If ChangeSetType is set to CREATE'."\n" ."\n" .' - If you set this parameter to an integer that is greater than 0, the integer is used.'."\n" ."\n" .' - If you set this parameter to 0 or do not set this parameter, no limit is imposed on ROS stacks. For Terraform stacks, the default value of Terraform is used, which is 10.'."\n" ."\n" .'- If ChangeSetType is set to UPDATE'."\n" ."\n" .' - If you set this parameter to an integer that is greater than 0, the integer is used.'."\n" ."\n" .' - If you set this parameter to 0, no limit is imposed on ROS stacks. For Terraform stacks, the default value of Terraform is used, which is 10.'."\n" ."\n" .' - If you do not set this parameter, the value that you specified in the previous operation is used. If you did not set this parameter in the previous operation, no limit is imposed on ROS stacks. For Terraform stacks, the default value of Terraform is used, which is 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack.'."\n" ."\n" .'The value of N can be from 1 to 20.'."\n" ."\n" .'> - The Tags parameter is optional. If you specify Tags, you must also specify Tags.N.Key.'."\n" .'>'."\n" .'> - The tag is propagated to each stack resource that supports tags. [Propagate tags](~~201421~~).', 'type' => 'string', 'required' => false, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack.'."\n" ."\n" .'The value of N can be from 1 to 20.'."\n" ."\n" .'> The tag is propagated to each stack resource that supports tags. For more information, see [Propagate tags](~~201421~~).', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'description' => 'The tags of the change set.', 'required' => false, 'title' => '', 'example' => '', ], 'maxItems' => 20, 'description' => 'The tags of the change set.', 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. If unspecified, the stack is added to the default resource group. [What is a resource group?](~~94475~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], [ 'name' => 'TaintResources', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['description' => '- For ROS stacks, the value is the resource name, such as my\\_vpc.'."\n" ."\n" .'- For Terraform stacks, the value is the resource type and resource name, such as alicloud\\_vpc.my\\_vpc', 'type' => 'string', 'required' => false, 'example' => 'my_vpc', 'title' => ''], 'maxItems' => 100, 'description' => 'The list of resources to be marked as dirty.', 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ChangeSetId' => ['description' => 'The ID of the change set.', 'type' => 'string', 'example' => 'e85abe0c-6528-43fb-ae93-fdf8de22****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'CreateChangeSet', 'description' => '### Scenarios'."\n" ."\n" .'#### Create a stack using a change set'."\n" ."\n" .'To manage cloud resources and preview creation results before the stack is created, set `ChangeSetType` to CREATE. [Change sets](~~155649~~).'."\n" ."\n" .'#### Update a stack using a change set'."\n" ."\n" .'To preview the impact of an update before applying changes, set `ChangeSetType` to UPDATE. [Change sets](~~155649~~).'."\n" ."\n" .'#### Create a stack from existing resources'."\n" ."\n" .'To import existing cloud resources into a new stack, set `ChangeSetType` to IMPORT. [Overview](~~193454~~).'."\n" ."\n" .'#### Import existing resources to a stack'."\n" ."\n" .'To import existing resources into an existing stack, set `ChangeSetType` to IMPORT. [Overview](~~193454~~).'."\n" ."\n" .'### Limits'."\n" ."\n" .'- Only stacks in specific states can be updated using change sets. [Update a stack using a change set](~~155873~~).'."\n" ."\n" .'- A stack can have a maximum of 20 change sets at a time.'."\n" ."\n" .'- A change set shows only the changes to a stack. It does not indicate whether the stack will be successfully updated.'."\n" ."\n" .'- A change set does not check for issues such as exceeded account quotas, non-updatable resources, or insufficient permissions. These issues can cause the stack update to fail. If the update fails, ROS attempts to roll back resources to their previous state.'."\n" ."\n" .'In this example, a change set named `MyChangeSet` is created in the China (Hangzhou) region (`cn-hangzhou`) to update the template of stack `4a6c9851-3b0f-4f5f-b4ca-a14bf691****` to `{"ROSTemplateFormatVersion":"2015-09-01"}`.', 'requestParamsDescription' => 'This API also uses [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | CircularDependency | Circular Dependency Found: {reason}. |模板包含循环引用。reason为具体原因。 |'."\n" .'| 400 | InvalidSchema | {reason}. |模板格式不正确。reason为具体原因。 |'."\n" .'| 400 | InvalidTemplateAttribute | The Referenced Attribute ({resource} {name}) is incorrect. |模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |'."\n" .'| 400 | InvalidTemplatePropertyType | The specified value type of ({resource} {section}) is incorrect. |模板资源定义中的字段类型不正确。resource为资源名,section为字段名。 |'."\n" .'| 400 | InvalidTemplateReference | The specified reference "{name}" (in {referencer}) is incorrect. |模板包含不正确的引用。name为引用名,referencer为引用者。 |'."\n" .'| 400 | InvalidTemplateSection | The template section is invalid: {section}. |模板包含无效的字段。section为字段名。 |'."\n" .'| 400 | InvalidTemplateVersion | The template version is invalid: {reason}. |模板版本不正确。reason为具体原因。 |'."\n" .'| 400 | StackPolicyValidationFailed | Action denied by stack policy: {reason}. |未通过资源栈策略校验。reason为具体原因。 |'."\n" .'| 400 | StackValidationFailed | {reason}. |资源栈校验失败。reason为具体原因。 |'."\n" .'| 400 | UnknownUserParameter | The Parameter ({name}) was not defined in template. |传递的参数在模板中未定义。name为参数名。 |'."\n" .'| 400 | UserParameterMissing | The Parameter {name} was not provided. |参数在模板中已定义,但未传递值。name为参数名。 |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 409 | ActionInProgress | Stack {name} already has an action ({action}) in progress. |资源栈在变更中。name为资源栈名称或ID,action为具体的变更操作。 |'."\n" .'| 409 | ChangeSetExists | The ChangeSet ({name}) of Stack ({stack}) already exists. |同名更改集已存在。name为更改集名,stack为关联的资源栈名称或ID。 |'."\n" .'| 409 | StackExists | The Stack ({name}) already exists. |同名资源栈已存在。name为资源栈名称。 |'."\n" .'| 404 | TemplateNotFound |The Tempalte ({ ID }) could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateChangeSet'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ChangeSetId\\": \\"e85abe0c-6528-43fb-ae93-fdf8de22****\\",\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\"\\n}","type":"json"}]', ], 'CreateDiagnostic' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '125576', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'DiagnosticKey', 'in' => 'query', 'schema' => ['description' => 'The keyword in the diagnosis.'."\n" ."\n" .'You can specify the ID of the stack that you want to diagnose.'."\n", 'type' => 'string', 'required' => true, 'example' => '37A5679B-8488-5A5D-8D5C-90E66A577A5D'], ], [ 'name' => 'Product', 'in' => 'query', 'schema' => ['description' => 'The name of the product that is diagonosed.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ros'], ], [ 'name' => 'DiagnosticType', 'in' => 'query', 'schema' => ['description' => 'The type of the item that is diagnosed. Set the value to Stack, which specifies that the stack is diagnosed.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Stack'], ], [ 'name' => 'Lang', 'in' => 'query', 'schema' => [ 'description' => 'The language of the diagnostic report to be generated. Only Chinese and English are supported.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'* zh-cn'."\n" .'* en'."\n", 'type' => 'string', 'required' => false, 'example' => 'zh-cn', 'default' => 'zh-cn', 'enum' => ['zh-cn', 'en'], ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code returned.'."\n", 'type' => 'string', 'example' => 'Forbidden'], 'DiagnosticType' => ['description' => 'The type of the item that is diagnosed.'."\n", 'type' => 'string', 'example' => 'Stack'], 'HttpStatusCode' => ['description' => 'The HTTP status code returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'Message' => ['description' => 'The error message returned.'."\n", 'type' => 'string', 'example' => 'You are not authorized to complete this action.'], 'ReportId' => ['description' => 'The ID of the diagnostic report.'."\n", 'type' => 'string', 'example' => 'dr-e94e39a1274d44b6****'], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '943B24D7-1A67-55A4-B045-818F90693D3A'], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" ."\n" .'* true'."\n" .'* false'."\n", 'type' => 'string', 'example' => 'true'], ], 'description' => '', ], ], ], 'staticInfo' => ['returnType' => 'asynchronous', 'callback' => 'ROS::2019-09-10::GetDiagnostic', 'callbackInterval' => 2000, 'maxCallbackTimes' => 10], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"Forbidden\\",\\n \\"DiagnosticType\\": \\"Stack\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Message\\": \\"You are not authorized to complete this action.\\",\\n \\"ReportId\\": \\"dr-e94e39a1274d44b6****\\",\\n \\"RequestId\\": \\"943B24D7-1A67-55A4-B045-818F90693D3A\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', 'title' => 'CreateDiagnostic', 'summary' => 'Creates a dignosis task.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateDiagnostic', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateStack' => [ 'summary' => 'Creates a stack from a ROS template to deploy a group of resources.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'DisableRollback', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to disable rollback when stack creation fails.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: disables rollback.'."\n" ."\n" .'- false (default): enables rollback.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The template body. Length: **1 to 524,288 bytes**. Use **HTTP POST** with **Body parameters** for large content to avoid URL length limits.'."\n" ."\n" .'> You must specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, or TemplateScratchId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'StackPolicyURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the stack policy file. Supports HTTP, HTTPS, and OSS URLs (for example, oss\\://ros/stack-policy/demo or oss\\://ros/stack-policy/demo?RegionId=cn-hangzhou). Maximum file size: 16,384 bytes. If no OSS region is specified, the RegionId value is used.'."\n" ."\n" .'> You can specify only one of the following parameters: StackPolicyBody or StackPolicyURL.'."\n" ."\n" .'Maximum URL length: 1,350 bytes.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-stack-policy/demo', 'title' => ''], ], [ 'name' => 'TimeoutInMinutes', 'in' => 'query', 'schema' => ['description' => 'The stack creation timeout. Unit: minutes.'."\n" ."\n" .'- Default value: 60.'."\n" ."\n" .'- Valid values: 10 to 1440.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'StackPolicyBody', 'in' => 'query', 'schema' => ['description' => 'The stack policy body. Length: 1 to 16,384 bytes.'."\n" ."\n" .'> You can specify only one of the following parameters: StackPolicyBody or StackPolicyURL.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"Statement": [{"Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*"}]}', 'title' => ''], ], [ 'name' => 'StackName', 'in' => 'query', 'schema' => ['description' => 'The stack name. Maximum length: 255 characters. Must start with a **letter** and can contain **letters**, **digits**, **hyphens (-)**, and **underscores (\\_)**.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStack', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. Call [DescribeRegions](~~131035~~) to query available regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'Ensures request idempotency. Must be client-generated and globally unique. Maximum length: 64 characters. Can contain **letters**, **digits**,** hyphens (-)**, and** underscores (\\_)**.'."\n" ."\n" .'[How to ensure idempotence](~~134212~~)', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the template file. Supports HTTP, HTTPS, and OSS URLs (for example, oss\\://ros/stack-policy/demo or oss\\://ros/stack-policy/demo?RegionId=cn-hangzhou). Maximum template size: 524,288 bytes. If no OSS region is specified, the RegionId value is used.'."\n" ."\n" .'> You must specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, or TemplateScratchId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The RAM role name. ROS assumes this role for all stack API calls, even when the user has direct permissions, ensuring least-privilege access. [Use a stack role](~~2568025~~).'."\n" ."\n" .'If not specified, ROS uses the role associated with the stack, or a temporary credential from your account if no role exists.'."\n" ."\n" .'Maximum length: 64 characters.', 'type' => 'string', 'required' => false, 'example' => 'test-role', 'title' => ''], ], [ 'name' => 'DeletionProtection', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable deletion protection on the stack. Valid values:'."\n" ."\n" .'- Enabled: enables deletion protection.'."\n" ."\n" .'- Disabled (default): allows stack deletion via the ROS console or the DeleteStack API.'."\n" ."\n" .'> The deletion protection of a nested stack is the same as that of its root stack.', 'type' => 'string', 'required' => false, 'example' => 'Enabled', 'title' => ''], ], [ 'name' => 'CreateOption', 'in' => 'query', 'schema' => ['description' => 'The post-creation behavior for the stack. Valid values:'."\n" ."\n" .'- KeepStackOnCreationComplete (default): retains the stack and resources after creation. Counts toward the stack quota.'."\n" ."\n" .'- AbandonStackOnCreationComplete: deletes the stack but retains resources after creation. Does not count toward the stack quota. The stack is retained if creation fails.'."\n" ."\n" .'- AbandonStackOnCreationRollbackComplete: deletes the stack after a creation rollback. Does not count toward the stack quota. The stack is retained in other rollback scenarios.'."\n" ."\n" .'- ManuallyPay: requires manual payment for subscription resources during stack creation. Supported resource types: `ALIYUN::ECS::InstanceGroup`, `ALIYUN::RDS::DBInstance`, `ALIYUN::SLB::LoadBalancer`, `ALIYUN::VPC::EIP`, and `ALIYUN::VPC::VpnGateway`.'."\n" ."\n" .'- RetryOnNoStock: automatically retries resource creation on insufficient inventory. Supported resource type: `ALIYUN::RDS::DBInstance`.'."\n" ."\n" .'> You can specify only one of the following parameters: CreateOption or CreateOptions.', 'type' => 'string', 'required' => false, 'example' => 'KeepStackOnCreationComplete', 'title' => ''], ], [ 'name' => 'CreateOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The creation options for the stack.', 'type' => 'array', 'items' => ['description' => 'Creation option N. Valid values:'."\n" ."\n" .'- KeepStackOnCreationComplete (default): retains the stack and resources after creation. Counts toward the stack quota.'."\n" ."\n" .'- AbandonStackOnCreationComplete: deletes the stack but retains resources after creation. Does not count toward the stack quota. The stack is retained if creation fails.'."\n" ."\n" .'- AbandonStackOnCreationRollbackComplete: deletes the stack after a creation rollback. Does not count toward the stack quota. The stack is retained in other rollback scenarios.'."\n" ."\n" .'- ManuallyPay: requires manual payment for subscription resources during stack creation. Supported resource types: `ALIYUN::ECS::InstanceGroup`, `ALIYUN::RDS::DBInstance`, `ALIYUN::SLB::LoadBalancer`, `ALIYUN::VPC::EIP`, and `ALIYUN::VPC::VpnGateway`.'."\n" ."\n" .'- RetryOnNoStock: automatically retries resource creation on insufficient inventory. Supported resource type: `ALIYUN::RDS::DBInstance`.'."\n" ."\n" .'> * You can specify only one of the following parameters: CreateOption or CreateOptions.'."\n" .'>'."\n" .'> * Creation options cannot be repeated. The KeepStackOnCreationComplete option is mutually exclusive with the AbandonStackOnCreationComplete and AbandonStackOnCreationRollbackComplete options.'."\n" .'>'."\n" .'> * The maximum value of N is 4.', 'type' => 'string', 'required' => false, 'example' => 'KeepStackOnCreationComplete', 'title' => ''], 'required' => false, 'maxItems' => 2, 'title' => '', 'example' => '', ], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. This parameter applies to shared and private templates.'."\n" ."\n" .'> You must specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, or TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. This parameter takes effect only when you specify TemplateId.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters that are defined in the template.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of parameter N defined in the template. If you do not specify the name and value of a parameter, ROS uses the default value in the template.'."\n" ."\n" .'The maximum value of N is 200. The name must be 1 to 128 characters and cannot start with `aliyun` or `acs:`. The name cannot contain `http://` or `https://`.'."\n" ."\n" .'> Parameters is an optional parameter. To specify Parameters, you must specify both Parameters.N.ParameterKey and Parameters.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => 'InstanceId', 'title' => ''], 'ParameterValue' => ['description' => 'The value of parameter N defined in the template.'."\n" ."\n" .'The maximum value of N is 200. The value must be 0 to 128 characters and cannot start with `aliyun` or `acs:`. The value cannot contain `http://` or `https://`.'."\n" ."\n" .'> Parameters is an optional parameter. To specify Parameters, you must specify both Parameters.N.ParameterKey and Parameters.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => 'i-xxxxxx', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'NotificationURLs', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The callback URL for stack events. Valid values:'."\n" ."\n" .'- HTTP POST URL. Maximum length: 1,024 bytes.'."\n" ."\n" .'- EventBridge receives stack status change notifications. View events in the [EventBridge console](https://eventbridge.console.aliyun.com).'."\n" ."\n" .'> Supported regions: China (Hangzhou), China (Shanghai), China (Beijing), China (Hong Kong), and China (Zhangjiakou).'."\n" ."\n" .'Maximum value of N: 5. ROS sends notifications on stack status changes, except for IN\\_PROGRESS events. With rollback enabled, CREATE\\_ROLLBACK and ROLLBACK events replace CREATE\\_FAILED and UPDATE\\_FAILED notifications. Notifications always include Outputs. Example notification:'."\n" ."\n" .'```'."\n" .'{'."\n" .' "Outputs": ['."\n" .' {'."\n" .' "Description": "No description given",'."\n" .' "OutputKey": "InstanceId",'."\n" .' "OutputValue": "i-xxx"'."\n" .' }'."\n" .' ],'."\n" .' "StackId": "80bd6b6c-e888-4573-ae3b-93d29113****",'."\n" .' "StackName": "test-notification-url",'."\n" .' "Status": "CREATE_COMPLETE"'."\n" .'}'."\n" .'```', 'type' => 'array', 'items' => ['description' => 'The callback URL for stack event N. Valid values:'."\n" ."\n" .'- HTTP POST URL. Maximum length: 1,024 bytes.'."\n" ."\n" .'- EventBridge receives stack status change notifications. View events in the [EventBridge console](https://eventbridge.console.aliyun.com).'."\n" ."\n" .'> Supported regions: China (Hangzhou), China (Shanghai), China (Beijing), China (Hong Kong), and China (Zhangjiakou).'."\n" ."\n" .'Maximum value of N: 5. ROS sends notifications on stack status changes, except for IN\\_PROGRESS events. With rollback enabled, CREATE\\_ROLLBACK and ROLLBACK events replace CREATE\\_FAILED and UPDATE\\_FAILED notifications. Notifications always include Outputs. Example notification:'."\n" ."\n" .'```'."\n" .'{'."\n" .' "Outputs": ['."\n" .' {'."\n" .' "Description": "No description given",'."\n" .' "OutputKey": "InstanceId",'."\n" .' "OutputValue": "i-xxx"'."\n" .' }'."\n" .' ],'."\n" .' "StackId": "80bd6b6c-e888-4573-ae3b-93d29113****",'."\n" .' "StackName": "test-notification-url",'."\n" .' "Status": "CREATE_COMPLETE"'."\n" .'}'."\n" .'```', 'type' => 'string', 'required' => false, 'example' => 'http://example.com/ros-event', 'title' => ''], 'required' => false, 'example' => 'http://my-site.com/ros-event', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the stack.'."\n" ."\n" .'Valid values: 1 to 20.'."\n" ."\n" .'> - Tags is an optional parameter. To specify Tags, you must specify Tags.N.Key.'."\n" .'>'."\n" .'> - Stack tags propagate to each resource that supports tagging. [Tag propagation](~~201421~~).', 'type' => 'string', 'required' => true, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the stack.'."\n" ."\n" .'Valid values: 1 to 20.'."\n" ."\n" .'> Stack tags propagate to taggable resources. [Tag propagation](~~201421~~).', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. If not specified, the stack is added to the default resource group.'."\n" ."\n" .'[What is a resource group](~~94475~~)', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], [ 'name' => 'Parallelism', 'in' => 'query', 'schema' => ['description' => 'The maximum number of concurrent operations on resources.'."\n" ."\n" .'Default: empty. Accepts integers greater than or equal to 0.'."\n" ."\n" .'> - If greater than 0, the specified value is used. If 0 or empty, no limit applies to ROS stacks; Terraform stacks use the Terraform default (typically 10).'."\n" .'>'."\n" .'> - The specified value persists with the stack and affects subsequent operations such as updates.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource scenario.'."\n" ."\n" .'Call [ListTemplateScratches](~~363050~~) to query resource scenario IDs.'."\n" ."\n" .'> You must specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, or TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => 'ts-aa9c62feab844a6b****', 'title' => ''], ], [ 'name' => 'TemplateScratchRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource scenario. Default value: the value of RegionId.'."\n" ."\n" .'Call [DescribeRegions](~~131035~~) to query available regions.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'CreateStack', 'description' => 'A stack is the management unit for ROS resources ([Overview](~~172973~~)). Limits:'."\n" ."\n" .'- Each Alibaba Cloud account can create up to 200 stacks.'."\n" ."\n" .'- Each stack can contain up to 200 resources.'."\n" ."\n" .'The following example creates a stack named `MyStack` in the China (Hangzhou) region with `TemplateBody` set to `{"ROSTemplateFormatVersion":"2015-09-01"}`.', 'requestParamsDescription' => 'This operation uses [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400| CircularDependency |Circular Dependency Found: {reason}. | 模板包含循环引用,reason为具体原因。 |'."\n" .'| 400 | InvalidSchema | {reason}. | 模板格式不正确,reason为具体原因。 |'."\n" .'| 400 | InvalidTemplateAttribute |The Referenced Attribute ({resource} {name}) is incorrect. | 模板包含不正确的资源属性(输出)引用,resource为资源名,name为属性名。 |'."\n" .'| 400 | InvalidTemplatePropertyType |The specified value type of ({resource} {section}) is incorrect. | 模板字段中定义的资源属性类型不正确。resource为资源名,section为字段名。 |'."\n" .'| 400 | InvalidTemplateReference |The specified reference "{name}" (in {referencer}) is incorrect. | 模板包含不正确的引用,name为引用名,referencer为引用者。 |'."\n" .'| 400 | InvalidTemplateSection |The template section is invalid: {section}. | 模板包含无效的字段,section为字段名。 |'."\n" .'| 400 | InvalidTemplateVersion |The template version is invalid: {reason}. | 模板版本不正确,reason为具体原因。 |'."\n" .'| 400 | StackValidationFailed | {reason}. | 资源栈校验失败,reason为具体原因。 |'."\n" .'| 400 | UnknownUserParameter |The Parameter ({name}) was not defined in template. | 传递的参数在模板中未定义,name为参数名。 |'."\n" .'| 400 | UserParameterMissing |The Parameter {name} was not provided. | 参数在模板中已定义,但未传递值,name为参数名。 |'."\n" .'| 409 | ActionInProgress |Stack {name} already has an action ({action}) in progress. | 资源栈在变更中,name为资源栈名称或ID,action为变更操作。 |'."\n" .'| 409 | StackExists |The Stack ({name}) already exists. | 同名资源栈已存在,name为资源栈名称。 |'."\n" .'| 404 | TemplateNotFound |The Template ({ ID }) could not be found. | 模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. | 模板或指定版本不存在。ID为模板ID,version为模板版本。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the valid tag policy values of \'TagValue\' are [\'red\',\'green\',\'orange\',\'blue\',\'pink\',\'white\',\'black\',\'grey\'], but the value is \'xxx\'. | 标签键合规,但标签值不合规。导致资源创建失败。请输入标签策略中 TagValue 规定的标签值。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the valid tag policy values of \'TagKey\' are [\'colorful\'], but the value is "colorful". | 标签键大小写不合规。导致资源创建失败。请输入与标签策略中 TagKey 大小写完全一致的标签键。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the tag policy keys [\'color\'] are necessary. | 标签不合规,缺少标签键 color,导致资源创建失败。请输入标签策略中 color 规定的标签。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateStack'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/*'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\"\\n}","type":"json"}]', ], 'CreateStackGroup' => [ 'summary' => 'Creates a stack group from an ROS template to create stacks across multiple Alibaba Cloud accounts and regions.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '12671', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. Call [DescribeRegions](~~131035~~) to query available regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The stack group name. Must be unique within a region. 1 to 255 characters. Can contain letters, digits, hyphens (-), and underscores (\\_). Must start with a letter or digit.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The stack group description. 1 to 256 characters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'StackGroup Description', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The template body. 1 to 524,288 bytes. For large templates, pass the body in the HTTP POST request body to avoid URL length limits.'."\n" ."\n" .'> Specify exactly one of TemplateBody, TemplateURL, and TemplateId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the template file. Supports HTTP, HTTPS, and OSS URLs. 1 to 524,288 bytes. Examples: oss\\://ros/template/demo, oss\\://ros/template/demo?RegionId=cn-hangzhou. If no region ID is specified for the OSS bucket, the RegionId value applies.'."\n" ."\n" .'> Specify exactly one of TemplateBody, TemplateURL, and TemplateId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token for idempotency. Must be unique across requests. Can contain letters, digits, underscores (\\_), and hyphens (-), up to 64 characters. [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'AdministrationRoleName', 'in' => 'query', 'schema' => ['description' => 'The RAM role for the administrator account in a self-managed stack group. ROS assumes this role to perform operations. Default: AliyunROSStackGroupAdministrationRole.'."\n" ."\n" .'1 to 64 characters. Can contain letters, digits, and hyphens (-).'."\n" ."\n" .'> This parameter is required when PermissionModel is set to SELF\\_MANAGED.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'AliyunROSStackGroupAdministrationRole', 'title' => ''], ], [ 'name' => 'ExecutionRoleName', 'in' => 'query', 'schema' => ['description' => 'The RAM role for the execution account in a self-managed stack group. The administrator role assumes this role to perform stack operations. Default: AliyunROSStackGroupExecutionRole.'."\n" ."\n" .'1 to 64 characters. Can contain letters, digits, and hyphens (-).'."\n" ."\n" .'> This parameter is required when PermissionModel is set to SELF\\_MANAGED.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'AliyunROSStackGroupExecutionRole', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. Applies to shared and private templates.'."\n" ."\n" .'> Specify exactly one of TemplateBody, TemplateURL, and TemplateId.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The template version. Defaults to the latest version.'."\n" ."\n" .'> TemplateVersion takes effect only if you specify TemplateId.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters of the stack group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The key of parameter N. If not specified, ROS uses the default name and value defined in the template.'."\n" ."\n" .'Maximum value of N: 200.'."\n" ."\n" .'> Parameters is optional. If you specify Parameters, you must also specify Parameters.N.ParameterKey.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of parameter N.'."\n" ."\n" .'Maximum value of N: 200.'."\n" ."\n" .'> Parameters is optional. If you specify Parameters, you must also specify Parameters.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => '12', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. Defaults to the default resource group. [Resource groups](~~94475~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], [ 'name' => 'PermissionModel', 'in' => 'query', 'schema' => ['description' => 'The permission model of the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- SELF\\_MANAGED (default): Create RAM roles for the administrator and execution accounts and establish a trust relationship between them.'."\n" ."\n" .'- SERVICE\\_MANAGED: ROS automatically creates service-linked roles for the administrator and execution accounts.'."\n" ."\n" .'> To use SERVICE\\_MANAGED, your account must be the management account or a delegated administrator account of a resource directory with trusted access enabled. [Manage a delegated administrator account](~~308253~~) and [Enable trusted access](~~298229~~).', 'type' => 'string', 'required' => false, 'example' => 'SELF_MANAGED', 'title' => ''], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the stack group.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the stack group.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack group.'."\n" ."\n" .'> Tags is optional. If you want to specify Tags, you must also specify Tags.N.Key.', 'type' => 'string', 'required' => true, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack group.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'AutoDeployment', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The automatic deployment settings.'."\n" ."\n" .'> You must specify this parameter if PermissionModel is set to SERVICE\\_MANAGED.', 'type' => 'object', 'properties' => [ 'Enabled' => ['description' => 'Whether automatic deployment is enabled.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: ROS automatically creates stacks for new member accounts added to the folder and deletes stacks for removed accounts.'."\n" ."\n" .'- false: Stacks remain unchanged when member accounts are added to or removed from the folder.', 'type' => 'boolean', 'required' => false, 'docRequired' => true, 'example' => 'true', 'title' => ''], 'RetainStacksOnAccountRemoval' => ['description' => 'Whether to retain stacks when a member account is removed from the folder.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'> You must specify RetainStacksOnAccountRemoval if Enabled is true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], 'required' => false, 'example' => '{"Enabled": true, "RetainStacksOnAccountRemoval": true}', 'title' => '', ], ], [ 'name' => 'Capabilities', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The options for the stack group. Maximum: one option.', 'type' => 'array', 'items' => [ 'description' => 'The stack group option. Valid value: ExpandModules, which expands modules within the current account.'."\n" ."\n" .'> - This parameter takes effect only when modules are used in the template.'."\n" .'>'."\n" .'> - By default, modules are not expanded in the current account, so they must exist in all target execution accounts. To expand modules in the current account instead, ensure the modules exist there.', 'enumValueTitles' => ['ExpandModules' => 'ExpandModules'], 'type' => 'string', 'required' => false, 'example' => 'ExpandModules', 'title' => '', ], 'required' => false, 'maxItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'StackArn', 'in' => 'query', 'schema' => ['description' => 'The stack ARN in the format acs:ros:${RegionId}:${AccountId}:stack/${StackId}. The stack group uses the template and parameters of this stack.'."\n" ."\n" .'> - Only supported in self-managed permission mode.'."\n" .'>'."\n" .'> - If StackArn is specified, Parameters must not be specified.'."\n" .'>'."\n" .'> - You must specify **only one** of TemplateBody, TemplateURL, TemplateId, or StackArn.', 'type' => 'string', 'required' => false, 'example' => 'acs:ros:cn-hangzhou:175458000000****:stack/4a65f506-c3cc-43b6-af06-3f000000****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'StackGroupId' => ['description' => 'The stack group ID.', 'type' => 'string', 'example' => '2c036e78-9e82-428e-afd6-177f5d04****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'CreateStackGroup', 'description' => 'A stack group manages multiple ROS stacks as a unit, enabling you to create stacks across Alibaba Cloud accounts and regions.'."\n" ."\n" .'Stack groups support two permission models:'."\n" ."\n" .'- Self-managed: Both the administrator and execution accounts are Alibaba Cloud accounts.'."\n" ."\n" .'- Service-managed: The administrator account is the management account or delegated administrator account of a resource directory. The execution account is a member account of that directory.'."\n" ."\n" .'[Overview](~~154578~~).'."\n" ."\n" .'This example creates a self-managed stack group named `MyStackGroup` in the `China (Hangzhou)` region using template `5ecd1e10-b0e9-4389-a565-e4c15efc****`.', 'requestParamsDescription' => '[Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| CircularDependency |Circular Dependency Found: {reason}. | 400 |模板包含循环引用,reason为具体原因。 |'."\n" .'| InvalidSchema |{reason}. | 400 |模板格式不正确,reason为具体原因。 |'."\n" .'| InvalidTemplateAttribute |The Referenced Attribute ({resource} {name}) is incorrect. | 400 |模板包含不正确的资源属性(输出)引用,resource为资源名,name为属性名。 |'."\n" .'| InvalidTemplatePropertyType |The specified value type of ({resource} {section}) is incorrect. | 400 |模板资源定义中,字段类型不正确,resource为资源名,section为字段名。 |'."\n" .'| InvalidTemplateReference |The specified reference "{name}" (in {referencer}) is incorrect. | 400 |模板包含不正确的引用,name为引用名,referencer为引用者。 |'."\n" .'| InvalidTemplateSection |The template section is invalid: {section}. | 400 |模板包含无效的字段,section为字段名。 |'."\n" .'| InvalidTemplateVersion |The template version is invalid: {reason}. | 400 |模板版本不正确,reason为具体原因。 |'."\n" .'| UnknownUserParameter |The Parameter ({name}) was not defined in template. | 400 |传递的参数在模板中未定义,name为参数名。 |'."\n" .'| UserParameterMissing |The Parameter {name} was not provided. | 400 |参数在模板中已定义,但未传递值,name为参数名。 |'."\n" .'| StackGroupExists |The StackGroup ({name}) already exists. | 409 |同名资源栈组已存在,name为资源栈组名称。 |'."\n" .'| TemplateNotFound |The Tempalte ({ ID }) could not be found. | 404 |模板不存在。ID为模板ID。 |'."\n" .'| TemplateNotFound |The Template { ID } with version { version } could not be found. | 404 |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateStackGroup'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"StackGroupId\\": \\"2c036e78-9e82-428e-afd6-177f5d04****\\"\\n}","type":"json"}]', ], 'CreateStackInstances' => [ 'summary' => 'Creates stack instances for one or more accounts in the specified regions.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '12672', 'abilityTreeNodes' => ['FEATURErosTBD793'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region.
The name can be up to 255 characters in length. It must start with a letter or a digit and can contain letters, digits, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'AccountIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The IDs of the destination accounts where you want to create stacks using self-managed permissions. You can specify up to 50 account IDs.'."\n" ."\n" .'> You can specify only one of the `AccountIds` and `DeploymentTargets` parameters.', 'type' => 'array', 'items' => ['description' => 'The IDs of the destination accounts where you want to create stacks using self-managed permissions. You can specify up to 50 account IDs.'."\n" ."\n" .'> You can specify only one of the `AccountIds` and `DeploymentTargets` parameters.', 'type' => 'string', 'required' => false, 'example' => '["151266687691****", "141261387191****"]', 'title' => ''], 'required' => false, 'docRequired' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => '', ], ], [ 'name' => 'RegionIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The IDs of the destination regions. You can specify up to 20 region IDs.', 'type' => 'array', 'items' => ['description' => 'The IDs of the destination regions. You can specify up to 20 region IDs.', 'type' => 'string', 'required' => false, 'example' => '["cn-hangzhou","cn-beijing"]', 'title' => ''], 'required' => true, 'docRequired' => true, 'example' => '["cn-hangzhou", "cn-beijing"]', 'title' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. The client generates the token, which must be globally unique.
The token can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).
For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'OperationDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the operation to create the stacks.'."\n" ."\n" .'The description must be 1 to 256 characters in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Create stack instances in hangzhou and beijing', 'title' => ''], ], [ 'name' => 'OperationPreferences', 'in' => 'query', 'style' => 'json', 'schema' => ['description' => 'The preferences for the operation.'."\n" ."\n" .'The following parameters are available:'."\n" ."\n" .'- {"FailureToleranceCount": N}'."\n" ."\n" .' The number of accounts per region in which the operation can fail. If the number of failed operations in a region exceeds this value, Resource Orchestration Service (ROS) stops the operation in that region. If the operation is stopped in a region, the operation is not performed in other regions.'."\n" ."\n" .' The value of N can be an integer from 0 to 20.'."\n" ."\n" .' If you do not specify this parameter, the default value is 0.'."\n" ."\n" .'- {"FailureTolerancePercentage": N}'."\n" ."\n" .' The percentage of accounts per region in which the operation can fail, relative to the total number of accounts. If the percentage of failed operations in a region exceeds this value, ROS stops the operation in that region.'."\n" ."\n" .' The value of N can be an integer from 0 to 100. If the percentage is not an integer, ROS rounds down the value.'."\n" ."\n" .' If you do not specify this parameter, the default value is 0.'."\n" ."\n" .'- {"MaxConcurrentCount": N}'."\n" ."\n" .' The maximum number of accounts in each region where stacks can be deployed at the same time.'."\n" ."\n" .' The value of N can be an integer from 1 to 20.'."\n" ."\n" .' If you do not specify this parameter, the default value is 1.'."\n" ."\n" .'- {"MaxConcurrentPercentage": N}'."\n" ."\n" .' The percentage of accounts in each region where stacks can be deployed at the same time, relative to the total number of accounts.'."\n" ."\n" .' The value of N can be an integer from 1 to 100. If the percentage is not an integer, ROS rounds down the value.'."\n" ."\n" .' If you do not specify this parameter, the default value is 1.'."\n" ."\n" .'- {"RegionConcurrencyType": N}
The concurrency type of deployment regions. Valid values:'."\n" ."\n" .' - SEQUENTIAL (default): Deploys stacks in the specified regions one by one. Stacks are deployed in only one region at a time.'."\n" ."\n" .' - PARALLEL: Deploys stacks in all specified regions at the same time.'."\n" ."\n" .'Separate multiple parameters with commas (,).'."\n" ."\n" .'> - You cannot specify MaxConcurrentCount and MaxConcurrentPercentage at the same time.'."\n" .'>'."\n" .'> - You cannot specify FailureToleranceCount and FailureTolerancePercentage at the same time.', 'type' => 'object', 'required' => false, 'docRequired' => false, 'example' => '{"FailureToleranceCount": 1, "MaxConcurrentCount": 2}', 'title' => ''], ], [ 'name' => 'TimeoutInMinutes', 'in' => 'query', 'schema' => ['description' => 'The timeout period for creating the stacks.'."\n" ."\n" .'- Default value: 60.'."\n" ."\n" .'- Unit: minutes.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'maximum' => '1440', 'minimum' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'DisableRollback', 'in' => 'query', 'schema' => ['description' => 'Indicates whether to disable rollback when a stack fails to be created.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: Disables rollback.'."\n" ."\n" .'- false (default): Enables rollback.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ParameterOverrides', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'A list of parameters that overwrite the template parameters.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter to overwrite. If you do not specify this parameter, ROS uses the parameter name that was specified when the stack group was created.'."\n" ."\n" .'You can specify up to 200 parameters.'."\n" ."\n" .'> - ParameterOverrides is optional.'."\n" .'>'."\n" .'> - If you specify ParameterOverrides, you must specify both ParameterOverrides.N.ParameterKey and ParameterOverrides.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter to overwrite. If you do not specify this parameter, ROS uses the parameter value that was specified when the stack group was created.'."\n" ."\n" .'You can specify up to 200 parameters.'."\n" ."\n" .'> - ParameterOverrides is optional.'."\n" .'>'."\n" .'> - If you specify ParameterOverrides, you must specify both ParameterOverrides.N.ParameterKey and ParameterOverrides.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => '1', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'DeploymentTargets', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The deployment targets for deploying stacks in service-managed permission mode.'."\n" ."\n" .'> You can specify only one of the `AccountIds` and `DeploymentTargets` parameters.', 'type' => 'object', 'properties' => [ 'RdFolderIds' => [ 'description' => 'The IDs of the folders in the resource directory. You can specify up to 20 folder IDs.'."\n" ."\n" .'You can create stacks in all the member accounts in the specified folders. If you select the root folder, stacks are created in all the member accounts in the resource directory.'."\n" ."\n" .'> You can view the folder IDs on the **Overview** page in the **Resource Management** console. For more information, see [View the basic information of a folder](~~111223~~).', 'type' => 'array', 'items' => ['description' => 'The IDs of the folders in the resource directory. You can specify up to 20 folder IDs.'."\n" ."\n" .'You can create stacks in all the member accounts in the specified folders. If you select the root folder, stacks are created in all the member accounts in the resource directory.'."\n" ."\n" .'> You can view the folder IDs on the **Overview** page in the **Resource Management** console. For more information, see [View the basic information of a folder](~~111223~~).', 'type' => 'string', 'required' => false, 'example' => '["fd-4PvlVLOL8v"]', 'title' => ''], 'required' => true, 'docRequired' => true, 'title' => '', 'example' => '', ], 'AccountIds' => [ 'type' => 'array', 'items' => ['description' => 'The IDs of the member accounts in the resource directory. You can specify up to 30 member account IDs.'."\n" ."\n" .'> You can view the member account IDs on the **Overview** page in the **Resource Management** console. For more information, see [View the details of a member](~~111624~~).', 'type' => 'string', 'required' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'description' => 'The IDs of the member accounts in the resource directory. You can specify up to 30 member account IDs.'."\n" ."\n" .'> You can view the member account IDs on the Overview page in the Resource Management console. For more information, see View the details of a member.', 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'example' => '{"RdFolderId": "fd-4PvlVLOL8v"}', 'title' => '', ], ], [ 'name' => 'DeploymentOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['description' => 'Valid value:'."\n" ."\n" .'- IgnoreExisting: Ignores the error that is reported if the stack instance that you want to create already exists.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], 'maxItems' => 1, 'description' => 'The deployment options for deploying stacks in service-managed permission mode. You can specify up to one deployment option.', 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'OperationId' => ['description' => 'The ID of the operation.', 'type' => 'string', 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"OperationId\\": \\"6da106ca-1784-4a6f-a7e1-e723863d****\\"\\n}","type":"json"}]', 'title' => 'CreateStackInstances', 'description' => '### Prerequisites'."\n" ."\n" .'Ensure that a stack group is created. For more information, see [CreateStackGroup](~~151333~~).'."\n" ."\n" .'### Scenarios'."\n" ."\n" .'#### Create stacks across accounts'."\n" ."\n" .'To create identical resources in multiple accounts, an administrator account can create a stack group, add multiple destination accounts, and deploy resources in a single region. This process creates multiple stacks in different accounts within the same region, improving deployment efficiency.'."\n" ."\n" .'#### Create stacks across regions'."\n" ."\n" .'To create identical resources in multiple regions, an administrator account can create a stack group, add a destination account, and deploy resources in multiple regions. This process creates multiple stacks in different regions within the same account, improving deployment efficiency.'."\n" ."\n" .'#### Create stacks across accounts and regions'."\n" ."\n" .'To create identical resources in multiple accounts across multiple regions, an administrator account can create a stack group, add multiple destination accounts, and deploy resources in multiple regions. This process creates multiple stacks in different accounts across different regions, improving deployment efficiency.'."\n" ."\n" .'This topic provides an example of creating stacks in the China (Hangzhou) and China (Beijing) regions in the Alibaba Cloud accounts `151266687691****` and `141261387191****`. The example uses a stack group named `MyStackGroup` that is created in the China (Hangzhou) region and uses self-managed permissions.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| StackInstanceExists |The StackInstance ({instance}) already exists. | 409 |该资源栈组在指定的目标账号和地域存在资源栈。instance为资源栈所属的目标账号和目标地域。 |'."\n" .'| StackGroupOperationInProgress |Another Operation on StackGroup ({name}) is in progress. | 409 |资源栈组存在进行中的操作。name为资源栈组名称。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateStackInstances'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], ], ], 'CreateTemplate' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12673', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on a web server (HTTP or HTTPS) or in an Alibaba Cloud Object Storage Service (OSS) bucket, such as oss\\://ros/stack-policy/demo or oss\\://ros/stack-policy/demo?RegionId=cn-hangzhou. The template body must be 1 to 1,024 bytes in length. If you do not specify the region of the OSS bucket, the value of the RegionId parameter is used.'."\n" ."\n" .'> You must specify only one of the \\`TemplateBody\\` and \\`TemplateURL\\` parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/template/demo', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the template. The description can be up to 256 characters in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'It is a demo.', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure of the template body. The template body must be 1 to 524,288 bytes in length. If the template body is large, specify the parameter in the request body to prevent request failures caused by an excessively long URL.'."\n" ."\n" .'> You can specify only one of the \\`TemplateBody\\`, \\`TemplateURL\\`, and \\`TemplateId\\` parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateName', 'in' => 'query', 'schema' => ['description' => 'The name of the template. The name can be up to 255 characters in length. It must start with a digit, letter, or Chinese character. It can contain digits, letters, Chinese characters, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyTemplate', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group.'."\n" .'For more information about resource groups, see [What is a resource group?](~~94475~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the template.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the template.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the template.'."\n" ."\n" .'> Tags is an optional parameter. If you specify Tags, you must specify \\`Tags.N.Key\\`.', 'type' => 'string', 'required' => true, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the template.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ValidationOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['description' => 'The validation option. Valid value:'."\n" ."\n" .'- BasicValidation: performs only basic validation on the structure of the template.', 'type' => 'string', 'required' => false, 'example' => 'BasicValidation', 'title' => ''], 'required' => false, 'maxItems' => 1, 'description' => 'The validation options.'."\n" ."\n" .'By default, no options are enabled and strict validation is performed.', 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8C5D90E1-66B6-496C-9371-3807F8DA80A8', 'title' => ''], 'TemplateId' => ['description' => 'The template ID.', 'type' => 'string', 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'CreateTemplate', 'summary' => 'Creates a custom template.', 'description' => 'This topic provides an example of how to create a template named `MyTemplate` in the China (Hangzhou) region (`cn-hangzhou`). The `TemplateBody` parameter is set to `{"ROSTemplateFormatVersion": "2015-09-01"}`.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~315526~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | InvalidSchema |{reason}. |模板格式不正确。reason为具体原因。 |'."\n" .'| 400 | InvalidTemplateAttribute |The Referenced Attribute ({resource} {name}) is incorrect. |模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |'."\n" .'| 400 | InvalidTemplatePropertyType |The specified value type of ({resource} {section}) is incorrect. |模板资源定义中的字段类型不正确。resource为资源名,section为字段名。 |'."\n" .'| 400 | InvalidTemplateReference |The specified reference "{name}" (in {referencer}) is incorrect. |模板包含不正确的引用。name为引用名,referencer为引用者。 |'."\n" .'| 400 | InvalidTemplateSection |The template section is invalid: {section}. |模板包含无效的字段。section为字段名。 |'."\n" .'| 400 | InvalidTemplateVersion |The template version is invalid: {reason}. |模板版本不正确。reason为具体原因。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateTemplate'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"8C5D90E1-66B6-496C-9371-3807F8DA80A8\\",\\n \\"TemplateId\\": \\"5ecd1e10-b0e9-4389-a565-e4c15efc****\\"\\n}","type":"json"}]', ], 'CreateTemplateScratch' => [ 'summary' => 'Creates templatescratch: scenario.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '69533', 'abilityTreeNodes' => ['FEATURErosUSKZAD', 'FEATURErosHDIJ7A', 'FEATURErosSKHQLM'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource scenario.'."\n" ."\n" .'You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateScratchType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource scenario. Valid values:'."\n" ."\n" .'- ArchitectureReplication: resource replication'."\n" ."\n" .'- ArchitectureDetection: resource profiling'."\n" ."\n" .'- ResourceImport: resource management'."\n" ."\n" .'- ResourceMigration: resource migration'."\n" ."\n" .'> When you specify different values for the TemplateScratchType parameter, the optional parameters in the supplementary description of request parameters are also different. For more information, refer to **Supplementary description of request parameters** section below.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ArchitectureReplication', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the resource scenario.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Copy VPC resources.', 'title' => ''], ], [ 'name' => 'SourceResources', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The source resources.'."\n" ."\n" .'When you set TemplateScratchType to ArchitectureDetection, you can specify SourceResources to detect the architecture data of all resources associated with the specified source resources. For example, if you specify a CLB instance ID, the system will detect and identify its associated resources such as ECS instances, vSwitches, and VPCs.'."\n" ."\n" .'If TemplateScratchType is set to ArchitectureDetection, you can specify up to **20 source resources**.'."\n" ."\n" .'In other cases, up to **200 source resources** are supported.', 'type' => 'array', 'items' => [ 'description' => 'The source resource.', 'type' => 'object', 'properties' => [ 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => true, 'example' => 'vpc-bp1m6fww66xbntjyc****', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'required' => true, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the resource.'."\n" ."\n" .'You can call [DescribeRegions](~~131035~~) to query the most recent region list.'."\n" ."\n" .'> - This parameter takes effect only when TemplateScratchType is set to ArchitectureDetection.'."\n" .'>'."\n" .'> - The region ID of a global resource is `global`. For example, ALIYUN::CDN::Domain is a global resource, and its region ID is `global`.', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing', 'title' => ''], 'RelatedResourceTypeFilter' => [ 'description' => 'The related resource type filters.', 'type' => 'array', 'items' => ['description' => 'The related resource type filter.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SourceTag', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The source tags.', 'type' => 'object', 'properties' => [ 'ResourceTags' => ['description' => 'The source tags that consist of key-value pairs. If you want to specify only a tag key, set the tag value to an empty string, for example: `{"TagKey": ""}`.'."\n" ."\n" .'You can add up to 10 source tags. If you set TemplateScratchType to ArchitectureDetection, you can add up to 5 source tags.', 'type' => 'object', 'required' => true, 'example' => '{"a": "b"}', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource types filter.', 'type' => 'array', 'items' => ['description' => 'The filter for resource types. If a list of resource types is specified, only resources of the specified types that contain the specified tags will be scanned. If not specified, all resources that contain the specified tags will be scanned.'."\n" ."\n" .'You can specify up to 20 resource types.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SourceResourceGroup', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The source resource group.', 'type' => 'object', 'properties' => [ 'ResourceGroupId' => ['description' => 'The ID of the source resource group.', 'type' => 'string', 'required' => true, 'example' => 'rg-acfmzawhxxc****', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource types for filtering resources.', 'type' => 'array', 'items' => ['description' => 'The filter for resource types. If a list of resource types is specified, only resources of the specified types that contain the specified tags will be scanned. If not specified, all resources that contain the specified tags will be scanned.'."\n" ."\n" .'You can specify up to 20 resource types.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'PreferenceParameters', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'Configuration parameters for resource scenario', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The parameter key.'."\n" ."\n" .'For more information about the valid values, refer to **Supplementary description of request parameters** section in this topic.'."\n" ."\n" .'> - PreferenceParameters is optional. If you specify PreferenceParameters, you must specify ParameterKey and ParameterValue.'."\n" .'>'."\n" .'> - You must set ParameterKey to DeletionPolicy when TemplateScratchType is set to ResourceImport.', 'type' => 'string', 'required' => true, 'example' => 'DeletionPolicy', 'title' => ''], 'ParameterValue' => ['description' => 'Parameter value. The value is an assignment to the ParameterKey.'."\n" ."\n" .'For more information about the valid values, refer to **Supplementary description of request parameters** section in this topic.'."\n" ."\n" .'> PreferenceParameters is optional. If you specify PreferenceParameters, you must specify ParameterKey and ParameterValue.', 'type' => 'string', 'required' => true, 'example' => 'Retain', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'LogicalIdStrategy', 'in' => 'query', 'schema' => ['description' => 'Logical ID generation strategy. Valid values:'."\n" ."\n" .'- LongTypePrefixAndIndexSuffix: long-type prefix + index-type suffix'."\n" ."\n" .'- LongTypePrefixAndHashSuffix: long-type prefix + hash-type suffix'."\n" ."\n" .'- ShortTypePrefixAndHashSuffix: short-type prefix + hash-type suffix'."\n" ."\n" .'> Default value: LongTypePrefixAndIndexSuffix. If TemplateScratchType is set to ArchitectureDetection, the default value is LongTypePrefixAndHashSuffix.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'LongTypePrefixAndIndexSuffix', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'Ensures the idempotency of the request. This value must be generated by the client and must be globally unique.'."\n" ."\n" .'It must be no more than 64 characters in length and can contain letters, digits, hyphens (**-**), and underscores (**\\_**).'."\n" ."\n" .'For more information, refer to [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'ExecutionMode', 'in' => 'query', 'schema' => ['description' => 'The execution mode. Valid values:'."\n" ."\n" .'- Async (default): asynchronous mode'."\n" ."\n" .'- Sync: synchronous mode'."\n" ."\n" .'> If the resource scope is large, the synchronous execution takes a long time. We recommend that you specify ClientToken to avoid timeout issues.', 'type' => 'string', 'required' => false, 'example' => 'Sync', 'title' => ''], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the resource scenario.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N that you want to add to the resource scenario.'."\n" ."\n" .'> Tags is optional. If you specify Tags, you must specify Tags.N.Key.', 'type' => 'string', 'required' => true, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The value of tag N that you want to add to the resource scenario.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which you want to assign the snapshot policy. If you leave this parameter empty, the resource scenario is added to the default resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '84980977-22F0-5421-B30D-B201311D5DCF', 'title' => ''], 'TemplateScratchId' => ['description' => 'The ID of the resource scenario.', 'type' => 'string', 'example' => 'ts-7f7a704cf71c49a6****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'CreateTemplateScratch', 'description' => '### Limits'."\n" ."\n" .'Only specific resource types support the resource scenario feature. For more information, refer to [Resource types that support scenarios](~~353175~~).'."\n" ."\n" .'### Description'."\n" ."\n" .'Resource Orchestration Service (ROS) provides the resource scenario feature. You can select a resource scope in the UI and perform operations such as replication or management of a group of resources, helping simplify resource management. For more information about resource scenarios, refer to [Overview](~~352074~~).'."\n" ."\n" .'#### Resource replication scenario'."\n" ."\n" .'If you want to replicate a collection of resources and dependencies between the resources, you can create a resource replication scenario. This type of scenario lets you replicate all existing resources within the specified scope and generate a collection of resources that have the same architecture as the existing resources. For more information, refer to [Resource replication scenario](~~353133~~).'."\n" ."\n" .'#### Resource profiling scenario'."\n" ."\n" .'If the relationships between resources that you want to create are complicated, you can create a resource profiling scenario to preview the overall resource architecture or the architecture starting from a specific resource. This helps simplify resource management. For more information, refer to [Resource detection scenario](~~2591901~~).'."\n" ."\n" .'#### Resource management scenario'."\n" ."\n" .'If you need to import a collection of existing resources into a new resource stack for unified management, you can create a resource management scenario. For more information, refer to [Resource management scenario](~~353163~~).'."\n" ."\n" .'#### Resource migration scenario'."\n" ."\n" .'If you want to migrate a collection of resources and dependencies between the resources, you can create a resource migration scenario. When you migrate the resources, ROS generates a stack. You can view the migration progress on the Stacks tab of the scenario details page. After you migrate the resources, you can delete source resources. For more information, refer to [Resource migration scenario](~~379902~~).'."\n" ."\n" .'This topic provides an example of how to create a resource replication scenario in the China (Hangzhou) region to replicate a virtual private cloud (VPC) with the ID of `vpc-bp1m6fww66xbntjyc****`.', 'requestParamsDescription' => '### Additional notes on request parameters'."\n" ."\n" .'For more information, refer to [Common parameters](~~131957~~).'."\n" ."\n" .'When you specify different values for the `TemplateScratchType` parameter, the valid values of ParameterKey and ParameterValue also differ.'."\n" ."\n" .'#### Resource replication scenario'."\n" ."\n" .'The following table describes the valid values of ParameterKey and ParameterValue when you set TemplateScratchType to ArchitectureReplication.'."\n" ."\n" .'| **ParameterKey** | **ParameterValue** |'."\n" .'| ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |'."\n" .'| DeletionPolicy | The resource deletion policy. Valid values: Retain: retains resources when you delete the stack to which the resources are replicated. Delete: deletes resources by default when you delete the stack to which the resources are replicated. If you retain specific resources when the Delete Stack dialog box appears, the resources are retained. |'."\n" .'| RegionId | The ID of the destination region to which you want to replicate resources. If you do not specify a destination region, the current region is used by default. Example: cn-shanghai. |'."\n" .'| ZoneId | The ID of the destination zone to which you want to replicate resources. If you replicate resources in the same region and you do not specify a destination zone, the zone of the source resources is used for the replicated resources. If you replicate resources across regions and you do not specify a destination zone, the system filters zones that are supported by all resources. Example: cn-shanghai-b. |'."\n" .'| VpcId | The ID of the destination VPC to which you want to replicate resources. If you replicate resources in the same region and you do not specify a destination VPC, the VPC of the source resources is used for the replicated resources. If you replicate resources across regions and you do not specify a destination VPC, the system automatically creates a VPC in the destination region. Example: vpc-bp1hye0s8b69xokfu****. |'."\n" .'| VSwitchId | The ID of the destination vSwitch to which you want to replicate resources. If you replicate resources in the same region and you do not specify a destination vSwitch, the vSwitch of the source resources is used for the replicated resources. If you replicate resources across regions and you do not specify a destination vSwitch, the system automatically creates a vSwitch in the destination region. Example: vsw-bp11ufkwqwggtm1cj****. |'."\n" .'| NamePrefix | The prefix of the resource name. By default, a resource name does not contain a prefix. The prefix must be 2 to 32 characters in length. |'."\n" .'| DisableNameUnique | Specifies whether to disable automatic enforcement of name uniqueness. By default, it is enabled. For resources that have the feature enabled, such as the Bucket resource, eight-character random codes are automatically appended to the resource names to ensure the name uniqueness of replicated resources. |'."\n" .'| InstanceDataReplication | Specifies whether to replicate ECS instance data. Default value: false. Valid values:* true: replicates ECS instance data. If you replicate the data in the same region, a custom image is created for the source instance and new instances are created based on the custom image. If you replicate the data across regions, a custom image is created for the source instance and replicated to the destination region. New instances are created based on the custom image. |'."\n" ."\n" .'- false: does not replicate ECS instance data. | | InstancePeriod | The subscription duration of the destination subscription ECS instance. By default, the subscription duration of the source instance is used. | | InstancePeriodUnit | The unit of the subscription duration of the destination subscription ECS instance. By default, the subscription duration unit of the source instance is used. Valid values:\\* Week'."\n" ."\n" .'- Month'."\n" ."\n" .'- Year | | InstanceAmount | The number of ECS instances to be replicated. This parameter takes effect only when the source resource is a single ECS instance. | | RamAttachedPolicyReplication | Specifies whether to replicate the RAM policy associated with RAM users, user groups, and roles. Default value: false. Valid values:\\* true'."\n" ."\n" .'- false | | AlbLoadBalancerEdition | The edition of the ALB instance. The features and billing rules vary based on the edition. Valid values:\\* Basic: Basic Edition'."\n" ."\n" .'- Standard: Standard Edition'."\n" ."\n" .'- StandardWithWaf: Web Application Firewall (WAF)-enabled EditionExample: Standard. | | AlbAddressType | The type of the address of the ALB instance. Valid values:\\* Internet: The ALB instance has a public IP address. The Domain Name System (DNS) domain name is resolved to the public IP address. Therefore, the ALB instance can be accessed over the Internet.'."\n" ."\n" .'- Intranet: The ALB instance has only a private IP address. The DNS domain name is resolved to the private IP address. Therefore, the ALB instance can be accessed only within the VPC where the ALB instance is deployed.Example: Internet. | | AlbAddressIpVersion | The IP version. Valid values:\\* IPv4: IPv4'."\n" ."\n" .'- DualStack: dual stackExample: IPv4. | | AlbZoneMappings | The mappings between zones and vSwitches. You can specify at most 10 zones. If the selected region supports two or more zones, select at least two zones to ensure the high availability of your service. The value is a JSON string that has the same structure as the `ZoneMappings` parameter in the ALB [CreateLoadBalancer](~~2254834~~) operation. Example: \\[{"ZoneId": "cn-bejing-g": "VSwitchId": "vsw-gersdf\\*\\*\\*\\*"}, {"ZoneId": "cn-bejing-f": "VSwitchId": "vsw-fersdf\\*\\*\\*\\*"}] | | SlbListenerProtocols | The listener protocol of a CLB instance. Specifies the listener protocols to be included in the replication. You can set one or more protocols, separated by commas. By default, no restriction is applied. Valid values:\\* tcp'."\n" ."\n" .'- udp'."\n" ."\n" .'- http'."\n" ."\n" .'- httpsExample: tcp,udp. |'."\n" ."\n" .'> When you set ParameterKey to InstanceDataReplication and ParameterValue to true, stop the source instance before you replicate resources to ensure data consistency.'."\n" ."\n" .'#### Resource profiling scenario'."\n" ."\n" .'The following table describes the valid values of ParameterKey and ParameterValue when you set TemplateScratchType to ArchitectureDetection.'."\n" ."\n" .'| **ParameterKey** | **ParameterValue** |'."\n" .'| ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| RegionIds | One or more region IDs. Separate multiple region IDs with commas (,). The global region `global` is supported. If you do not specify a region, the region of the scenario is used. |'."\n" ."\n" .'#### Resource management scenario'."\n" ."\n" .'The following table describes the valid values of ParameterKey and ParameterValue when you set TemplateScratchType to ResourceImport.'."\n" ."\n" .'> For a resource management scenario, you must set ParameterKey to DeletionPolicy.'."\n" ."\n" .'| **ParameterKey** | **ParameterValue** |'."\n" .'| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| DeletionPolicy | The resource deletion policy. Valid values: **Retain**: retains resources when you delete the stack that you use to manage the resources. **Delete**: deletes resources by default when you delete the stack that you use to manage the resources. If you retain specific resources when the Delete Stack dialog box appears, the resources are retained. |'."\n" .'| SlbListenerProtocols | The listener protocol of a CLB instance. Specifies the listener protocols to be included in the management. You can set one or more protocols, separated by commas. By default, no restriction is applied. Valid values: Valid values:* tcp |'."\n" ."\n" .'- udp'."\n" ."\n" .'- http'."\n" ."\n" .'- httpsExample: tcp,udp. |'."\n" ."\n" .'#### Resource migration scenario'."\n" ."\n" .'The following table describes the valid values of ParameterKey and ParameterValue when you set TemplateScratchType to ResourceMigration.'."\n" ."\n" .'| **ParameterKey** | **ParameterValue** |'."\n" .'| ----------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| RegionId | The ID of the destination region to which you want to migrate resources. If you do not specify a destination region, the current region is used by default. Example: cn-shanghai. |'."\n" .'| ZoneId | The ID of the destination zone to which you want to migrate resources. If you replicate resources in the same region and you do not specify a destination zone, the zone of the source resources is used for the replicated resources. If you replicate resources across regions and you do not specify a destination zone, the system filters the zones that are supported by all resources. Example: cn-shanghai-b. |'."\n" .'| VpcId | The ID of the destination VPC to which you want to migrate resources. If you replicate resources in the same region and you do not specify a destination VPC, the VPC of the source resources is used for the replicated resources. If you replicate resources across regions and you do not specify a destination VPC, the system automatically creates a VPC in the destination region. Example: vpc-bp1hye0s8b69xokfu****. |'."\n" .'| VSwitchId | The ID of the destination vSwitch to which you want to migrate resources. If you replicate resources in the same region and you do not specify a destination vSwitch, the vSwitch of the source resources is used for the replicated resources. If you replicate resources across regions and you do not specify a destination vSwitch, the system automatically creates a vSwitch in the destination region. Example: vsw-bp11ufkwqwggtm1cj****. |'."\n" .'| InstanceDataReplication | Specifies whether to migrate ECS instance data. Valid values: **true**: migrates ECS instance data. If you migrate the data in the same region, a custom image is created for the source instance and new instances are created based on the custom image. If you migrate the data across regions, a custom image is created for the source instance and replicated to the destination region. New instances are created based on the custom image. **false**: does not migrate ECS instance data. |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateTemplateScratch'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"84980977-22F0-5421-B30D-B201311D5DCF\\",\\n \\"TemplateScratchId\\": \\"ts-7f7a704cf71c49a6****\\"\\n}","type":"json"}]', ], 'DeleteChangeSet' => [ 'summary' => 'Deletes change sets.', 'path' => '/V2/DeleteChangeSet', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosM9I2VQ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the change set. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ChangeSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the change set.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1f6521a4-05af-4975-afe9-bc4b45ad****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'DeleteChangeSet', 'description' => '- Before you call this operation, make sure that the following requirements are met:'."\n" ."\n" .' - The status of the change set is CREATE\\_COMPLETE, CREATE\\_FAILED, or DELETE\\_FAILED.'."\n" ."\n" .' - The execution status is UNAVAILABLE or AVAILABLE.'."\n" ."\n" .'- After a change set is executed, other change sets associated with the same stack as this change set are also deleted.'."\n" ."\n" .'- After a stack is deleted, change sets associated with the stack are deleted.'."\n" ."\n" .'- If a change set of the CREATE type is deleted, you must delete stacks associated with the change set.'."\n" ."\n" .'In this example, a change set whose ID is `1f6521a4-05af-4975-afe9-bc4b45ad****` is deleted. The change set is created in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| ChangeSetNotFound |The ChangeSet ({name}) of Stack ({stack}) could not be found. | 404 |更改集不存在,name为更改集名称或ID,stack为资源栈名称或ID。 |'."\n" .'| ChangeSetNotFound |The ChangeSet {ID} could not be found. | 404 |更改集不存在,ID为更改集ID。 |'."\n" .'| StackNotFound |The Stack ({name}) could not be found. | 404 |资源栈不存在,name为资源栈名称或ID。 |'."\n" .'| ActionInProgress |Stack {name} already has an action ({action}) in progress. | 409 |资源栈在变更中,name为资源栈名称或ID,action为变更操作。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteChangeSet'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'DeleteDiagnostic' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => ['operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'ReportId', 'in' => 'query', 'schema' => ['description' => 'The report ID. You can troubleshoot issues based on the report.'."\n", 'type' => 'string', 'required' => false, 'example' => 'dr-56a0e30bf9854b00****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code returned.'."\n", 'type' => 'string', 'example' => 'Forbidden'], 'HttpStatusCode' => ['description' => 'The HTTP status code returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'Message' => ['description' => 'The error message returned.'."\n", 'type' => 'string', 'example' => 'You are not authorized to complete this action.'], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '91EF0DC1-3BB5-555E-AAA1-4F5C640D15DA'], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" ."\n" .'* true'."\n" .'* false'."\n", 'type' => 'string', 'example' => 'true'], ], 'description' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"Forbidden\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Message\\": \\"You are not authorized to complete this action.\\",\\n \\"RequestId\\": \\"91EF0DC1-3BB5-555E-AAA1-4F5C640D15DA\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', 'title' => 'DeleteDiagnostic', 'summary' => 'Deletes a diagnostic record.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteDiagnostic', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DeleteStack' => [ 'summary' => 'Deletes a stack, optionally retaining resources.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '12675', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RetainAllResources', 'in' => 'query', 'schema' => ['description' => 'Whether to retain all resources in the stack.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false (default)', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. Call [DescribeRegions](~~131035~~) to query available regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The RAM role name. ROS assumes this role to create the stack and call Alibaba Cloud service APIs.
Even if you have stack operation permissions but lack RAM role permissions, ROS still assumes the role. Ensure the role follows the least-privilege principle.
If empty, ROS cannot assume the existing RAM role associated with the stack. To have ROS assume a role, specify this parameter. If no RAM role is available, ROS uses a temporary credential from your account credentials.
Maximum length: 64 bytes.', 'type' => 'string', 'required' => false, 'example' => 'test-role', 'title' => ''], ], [ 'name' => 'RetainResources', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'Resources to retain.', 'type' => 'array', 'items' => ['description' => 'Names of resources to retain.', 'type' => 'string', 'required' => false, 'example' => 'my_disk', 'title' => ''], 'required' => false, 'example' => 'WebServer', 'maxItems' => 200, 'title' => '', ], ], [ 'name' => 'DeleteOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'Stack deletion options.', 'type' => 'array', 'items' => ['description' => 'Stack deletion option. Valid values:'."\n" ."\n" .'- Null (default): Subscription resources are ignored during deletion.'."\n" ."\n" .'- ThrowErrorWithSubscriptionResources: Returns an error if subscription resources exist.', 'type' => 'string', 'required' => false, 'example' => '["ThrowErrorWithSubscriptionResources"]', 'title' => ''], 'required' => false, 'maxItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'Parallelism', 'in' => 'query', 'schema' => ['description' => 'Maximum number of concurrent resource operations.'."\n" ."\n" .'Default: empty. Accepts an integer >= 0.'."\n" ."\n" .'> - A value greater than 0 is used as-is. A value of 0 or empty imposes no limit on ROS stacks. For Terraform stacks, the Terraform default (typically 10) applies.'."\n" .'>'."\n" .'> - This value persists on the stack and affects subsequent operations such as updates.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DeleteStack', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '访问[公共错误码](~~131033~~)查看更多错误码。'."\n" .'| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | InvalidOperation.DeletionProtection | Fail to delete stack {ID}, as deletion protection is enabled. | 资源栈开启了删除保护,无法被删除。ID为资源栈ID。 |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。|'."\n" .'| 409 | ActionInProgress | Stack {name} already has an action ({action}) in progress. |资源栈在变更中。name为资源栈名称或ID,action为具体的变更操作。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteStack'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'DeleteStackGroup' => [ 'summary' => 'Deletes a stack group.', 'path' => '/V2/DeleteStackGroup', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region to which the stack group belongs. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique in a region.'."\n" ."\n" .'The name can be up to 255 characters in length and can contain digits, letters, hyphens (-), and underscores (\\_). The name must start with a digit or a letter.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'DeleteStackGroup', 'description' => 'A stack group can be deleted only when the stack group does not contain stacks. You can call the [DeleteStackInstances](~~151715~~) operation to delete stacks.'."\n" ."\n" .'This topic provides an example on how to delete a stack group. In this example, a stack group named `MyStackGroup` in the China (Hangzhou) region is deleted.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => '| Error code | Error message | HTTP status code | Description |'."\n" .'| ------------------ | ------------------------------------------- | ---------------- | --------------------------------------------------------------------------------------------------------------- |'."\n" .'| StackGroupNotEmpty | The StackGroup ({name}) is not empty. | 400 | The error message returned because the stack group contains stacks. name indicates the name of the stack group. |'."\n" .'| StackGroupNotFound | The StackGroup ({name}) could not be found. | 404 | The error message returned because the stack group does not exist. name indicates the name of the stack group. |', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| StackGroupNotEmpty |The StackGroup ({name}) is not empty. | 400 |资源栈组内存在资源栈。name为资源栈组名称。 |'."\n" .'| StackGroupNotFound |The StackGroup ({name}) could not be found. | 404 |资源栈组不存在。name为资源栈组名称。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteStackGroup'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\"\\n}","type":"json"}]', ], 'DeleteStackInstances' => [ 'summary' => 'Deletes stack instances from specified accounts and regions. You can choose to retain the resources.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATURErosTBD793'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. Call the [DescribeRegions](~~131035~~) operation to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region.
The name can be up to 255 characters long. It must start with a letter or a digit and can contain letters, digits, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'AccountIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The IDs of the accounts from which to delete stack instances. This parameter applies only to stack groups that use self-managed permissions. You can specify up to 50 account IDs.', 'type' => 'array', 'items' => ['description' => 'The IDs of the accounts from which to delete stack instances. This parameter applies only to stack groups that use self-managed permissions. You can specify up to 50 account IDs.', 'type' => 'string', 'required' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'required' => false, 'example' => '["151266687691****"]', 'title' => '', ], ], [ 'name' => 'RegionIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The IDs of the regions where the stack instances are deployed. You can specify up to 20 region IDs.', 'type' => 'array', 'items' => ['description' => 'The IDs of the regions where the stack instances are deployed. You can specify up to 20 region IDs.', 'type' => 'string', 'required' => false, 'example' => '["cn-hangzhou","cn-beijing"]', 'title' => ''], 'required' => true, 'docRequired' => true, 'example' => '["cn-hangzhou", "cn-beijing"]', 'title' => '', ], ], [ 'name' => 'RetainStacks', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to retain the stacks.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: The stacks are retained.'."\n" ."\n" .'- false: The stacks are deleted.', 'type' => 'boolean', 'required' => true, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. You can use your client to generate the token, but you must make sure that the token is unique among different requests.
The token can be up to 64 characters long and can contain letters, digits, hyphens (-), and underscores (\\_).
For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'OperationDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the operation to delete stack instances.'."\n" ."\n" .'The description can be 1 to 256 characters long.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Delete stack instances in hangzhou and beijing', 'title' => ''], ], [ 'name' => 'OperationPreferences', 'in' => 'query', 'style' => 'json', 'schema' => ['description' => 'The preferences for the operation to delete stack instances.'."\n" ."\n" .'This parameter contains the following subparameters:'."\n" ."\n" .'- {"FailureToleranceCount": N}'."\n" ."\n" .' The number of accounts in each region for which the deletion of stack instances can fail. If the number of failures in a region exceeds this value, the operation stops in that region. If the operation stops in one region, it does not continue in other regions.'."\n" ."\n" .' The value of N must be an integer from 0 to 20.'."\n" ."\n" .' If you do not specify FailureToleranceCount, the default value is 0.'."\n" ."\n" .'- {"FailureTolerancePercentage": N}'."\n" ."\n" .' The percentage of accounts in each region for which the deletion of stack instances can fail. If the percentage of failures in a region exceeds this value, the operation stops in that region.'."\n" ."\n" .' The value of N must be an integer from 0 to 100. If the calculated percentage is not an integer, ROS rounds it down to the nearest integer.'."\n" ."\n" .' If you do not specify FailureTolerancePercentage, the default value is 0.'."\n" ."\n" .'- {"MaxConcurrentCount": N}'."\n" ."\n" .' The maximum number of accounts in each region for which stack instances can be deleted at the same time.'."\n" ."\n" .' The value of N must be an integer from 1 to 20.'."\n" ."\n" .' If you do not specify MaxConcurrentCount, the default value is 1.'."\n" ."\n" .'- {"MaxConcurrentPercentage": N}'."\n" ."\n" .' The maximum percentage of accounts in each region for which stack instances can be deleted at the same time.'."\n" ."\n" .' The value of N must be an integer from 1 to 100. If the calculated percentage is not an integer, ROS rounds it down to the nearest integer.'."\n" ."\n" .' If you do not specify MaxConcurrentPercentage, the default value is 1.'."\n" ."\n" .'- {"RegionConcurrencyType": N}'."\n" .' The concurrency model for deleting stack instances in different regions. Valid values:'."\n" ."\n" .' - SEQUENTIAL (default): Deletes stack instances in each specified region sequentially. At any given time, the operation deletes stack instances in only one region.'."\n" ."\n" .' - PARALLEL: Deletes stack instances in all specified regions in parallel.'."\n" ."\n" .'Separate multiple parameters with commas (,).'."\n" ."\n" .'> - You cannot specify both MaxConcurrentCount and MaxConcurrentPercentage.'."\n" .'>'."\n" .'> - You cannot specify both FailureToleranceCount and FailureTolerancePercentage.', 'type' => 'object', 'required' => false, 'docRequired' => false, 'example' => '{"FailureToleranceCount": 1, "MaxConcurrentCount": 2}', 'title' => ''], ], [ 'name' => 'DeploymentTargets', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The deployment targets from which to delete stack instances. This parameter applies only to stack groups that use service-managed permissions.', 'type' => 'object', 'properties' => [ 'RdFolderIds' => [ 'description' => 'The IDs of folders in the resource directory. You can specify up to 20 folder IDs.'."\n" ."\n" .'Stack instances are deleted from all member accounts in the specified folders. If you specify the Root folder, stack instances are deleted from all member accounts in your resource directory.'."\n" ."\n" .'> You can find the folder IDs on the Overview page in the Resource Management console. For more information, see [View the basic information of a folder](~~111223~~).', 'type' => 'array', 'items' => ['description' => 'The IDs of folders in the resource directory. You can specify up to 20 folder IDs.'."\n" ."\n" .'Stack instances are deleted from all member accounts in the specified folders. If you specify the Root folder, stack instances are deleted from all member accounts in your resource directory.'."\n" ."\n" .'> You can find the folder IDs on the Overview page in the Resource Management console. For more information, see [View the basic information of a folder](~~111223~~).', 'type' => 'string', 'required' => false, 'example' => '["fd-4PvlVLOL8v"]', 'title' => ''], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], 'AccountIds' => [ 'description' => 'The IDs of member accounts in the resource directory. You can specify up to 30 member account IDs.'."\n" ."\n" .'> You can find the member account IDs on the Overview page in the Resource Management console. For more information, see [View the details of a member](~~111624~~).', 'type' => 'array', 'items' => ['description' => 'The IDs of member accounts in the resource directory. You can specify up to 30 member account IDs.'."\n" ."\n" .'> You can find the member account IDs on the Overview page in the Resource Management console. For more information, see [View the details of a member](~~111624~~).', 'type' => 'string', 'required' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'OperationId' => ['description' => 'The operation ID.', 'type' => 'string', 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"OperationId\\": \\"6da106ca-1784-4a6f-a7e1-e723863d****\\"\\n}","type":"json"}]', 'title' => 'DeleteStackInstances', 'description' => 'This topic provides an example of how to delete a stack instance from the `MyStackGroup` stack group. The stack group uses self-managed permissions and is in the China (Hangzhou) region. This example deletes the stack instance that is deployed in the China (Beijing) region for the Alibaba Cloud account `151266687691****`.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n" .'| StackGroupNotFound |The StackGroup ({name}) could not be found. | 404 |资源栈组不存在。name为资源栈组名称。 |'."\n" .'| StackGroupOperationInProgress |Another Operation on StackGroup ({name}) is in progress. | 409 |资源栈组存在进行中的操作。name为资源栈组名称。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteStackInstances'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], ], ], 'DeleteTemplate' => [ 'summary' => 'Deletes a template.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12678', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. Applies to private templates only.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '8C5D90E1-66B6-496C-9371-3807F8DA80A8', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DeleteTemplate', 'description' => 'If a template is shared with other Alibaba Cloud accounts, unshare it before deletion.', 'requestParamsDescription' => 'This operation also uses [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | TemplateBeingProcessed |Template { ID } is being processed, retry later.|模板正在处理中,稍后再试。ID为模板ID。|', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteTemplate'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#templateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"8C5D90E1-66B6-496C-9371-3807F8DA80A8\\"\\n}","type":"json"}]', ], 'DeleteTemplateScratch' => [ 'summary' => 'Deletes a scenario.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosSKHQLM', 'FEATURErosHDIJ7A', 'FEATURErosUSKZAD'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the scenario.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the scenario.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ts-4f83704400994409****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '1B9C6333-5904-5A1E-9845-CB17A369AFDC', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DeleteTemplateScratch', 'description' => 'In this topic, a scenario whose ID is `ts-4f83704400994409****` is deleted in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteTemplateScratch'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1B9C6333-5904-5A1E-9845-CB17A369AFDC\\"\\n}","type":"json"}]', ], 'DeregisterResourceType' => [ 'summary' => 'Deletes a resource type or a specific version of a resource type.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosUIOT2M'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The version ID. Specify this parameter to delete a specific version of the resource type.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DeregisterResourceType', 'description' => '- If you delete a resource type, it can no longer be used in ROS.'."\n" ."\n" .'- If you delete a version of a resource type, that version can no longer be used in ROS.'."\n" ."\n" .'- You can delete a resource type only if it has a single version. If a resource type has multiple versions, you must delete the other versions first.'."\n" ."\n" .'- You cannot delete the default version if the resource type has more than one version.'."\n" ."\n" .'- If a resource type has only one version, deleting that version also deletes the resource type.', 'extraInfo' => '| 错误代码 | 错误信息 | HTTPS状态码 | 描述 |'."\n" .'| --- | --- | --- | --- |'."\n" .'| ResourceTypeDeregisterFailure | Fail to deregister {entity_type} ({name}), {reason}. | 400 | 注销资源类型失败。entity_type实体类型,name为类型名称,reason为失败原因。 |'."\n" .'| ResourceTypeDeregisterFailure | Fail to deregister version ({version}) of {entity_type} ({name}), {reason}. | 400 | 注销资源类型版本失败。version为版本ID,entity_type实体类型,name为类型名称,reason为失败原因。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeregisterResourceType'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeregisterResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\"\\n}","type":"json"}]', ], 'DescribeRegions' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12679', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'AcceptLanguage', 'in' => 'query', 'schema' => ['description' => 'The language in which you want to display the results. Valid values:'."\n" ."\n" .'- zh-CN (default): Chinese'."\n" ."\n" .'- en-US: English'."\n" ."\n" .'- ja: Japanese', 'type' => 'string', 'required' => false, 'example' => 'zh-CN', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '59F0F0A0-A637-4292-9B91-251EF5010913', 'title' => ''], 'Regions' => [ 'description' => 'The regions.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LocalName' => ['description' => 'The name of the region.', 'type' => 'string', 'example' => 'China (Hangzhou)', 'title' => ''], 'RegionEndpoint' => ['description' => 'The endpoint of the region.', 'type' => 'string', 'example' => 'ros.aliyuncs.com', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DescribeRegions', 'summary' => 'Queries a list of available regions.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRegions'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"59F0F0A0-A637-4292-9B91-251EF5010913\\",\\n \\"Regions\\": [\\n {\\n \\"LocalName\\": \\"China (Hangzhou)\\",\\n \\"RegionEndpoint\\": \\"ros.aliyuncs.com\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DetectStackDrift' => [ 'summary' => 'Performs drift detection on resources in a stack to check whether the resources have drifted from the expected template configurations.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosGGHNC3'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests.'."\n" ."\n" .'The value can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'LogicalResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The logical ID of resource.', 'type' => 'array', 'items' => ['description' => 'The logical ID of resource N, which is used to filter resources.', 'type' => 'string', 'required' => false, 'example' => 'ScalingRule', 'title' => ''], 'required' => false, 'example' => 'ScalingRule', 'maxItems' => 200, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'DriftDetectionId' => ['description' => 'The ID of the drift detection.', 'type' => 'string', 'example' => 'a7044f0d-6f2e-4128-a307-4524ef88****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DetectStackDrift', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 404 | ResourceNotFound |The Resource ({name}) could not be found in Stack {stack}. |资源栈中不存某资源。name为资源名,stack为资源栈名称或ID。 |'."\n" .'| 409 | ActionInProgress |Stack {name} already has an action ({action}) in progress. |资源栈在变更中。name为资源栈名称或ID,action为具体的变更操作。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetectStackDrift'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DetectStackDrift', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"DriftDetectionId\\": \\"a7044f0d-6f2e-4128-a307-4524ef88****\\"\\n}","type":"json"}]', ], 'DetectStackGroupDrift' => [ 'summary' => 'Performs drift detection on stack groups to check whether the stack groups have drifted from the expected template configurations.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests.'."\n" ."\n" .'The value can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. You can call the [DescribeRegions](~~131035#doc-api-ROS-DescribeRegions~~ "Queries the DescribeRegions list of a region.") operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique in a region.'."\n" ."\n" .'The name can be up to 255 characters in length and can contain digits, letters, hyphens (-), and underscores (\\_). It must start with a digit or letter.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'OperationPreferences', 'in' => 'query', 'style' => 'json', 'schema' => ['description' => 'The operation settings, in JSON format. The following fields are supported:'."\n" ."\n" .'- FailureToleranceCount'."\n" ."\n" .'The maximum number of stack group operation failures that can occur. In a stack group operation, if the total number of failures does not exceed the FailureToleranceCount value, the operation succeeds. Otherwise, the operation fails.'."\n" ."\n" .'If FailureToleranceCount is not specified, the default value 0 is used. You can specify one of FailureToleranceCount or FailureTolerancePercentage parameters, but you cannot specify both of them.'."\n" ."\n" .'Valid values: 0 to 20.'."\n" ."\n" .'- FailureTolerancePercentage'."\n" ."\n" .'The percentage of stack group operation failures that can occur. In a stack group operation, if the percentage of failures does not exceed the FailureTolerancePercentage value, the operation succeeds. Otherwise, the operation fails.'."\n" ."\n" .'You can specify one of FailureToleranceCount or FailureTolerancePercentage parameters, but you cannot specify both of them.'."\n" ."\n" .'Valid values: 0 to 100.'."\n" ."\n" .'- MaxConcurrentCount'."\n" ."\n" .'The maximum number of target accounts in which a drift detection operation can be performed at a time.'."\n" ."\n" .'You can specify one of MaxConcurrentCount or MaxConcurrentPercentage parameters, but you cannot specify both of them.'."\n" ."\n" .'Valid values: 1 to 20.'."\n" ."\n" .'- MaxConcurrentPercentage'."\n" ."\n" .'The maximum percentage of target accounts in which a drift detection operation can be performed at a time.'."\n" ."\n" .'You can specify one of MaxConcurrentCount or MaxConcurrentPercentage parameters, but you cannot specify both of them.'."\n" ."\n" .'Valid values: 1 to 100.', 'type' => 'object', 'required' => false, 'docRequired' => false, 'example' => '{"FailureToleranceCount": 1, "MaxConcurrentCount": 2}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'OperationId' => ['description' => 'The ID of the operation.', 'type' => 'string', 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DetectStackGroupDrift', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackGroupNotFound |The StackGroup ({name}) could not be found. |资源栈组不存在。name为资源栈组名称。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetectStackGroupDrift'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DetectStackGroupDrift', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack_group/{#StackGroupName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"OperationId\\": \\"6da106ca-1784-4a6f-a7e1-e723863d****\\"\\n}","type":"json"}]', ], 'DetectStackResourceDrift' => [ 'summary' => 'Performs drift detection on resources in a stack to determine whether the resources have drifted from the expected configurations.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosGGHNC3'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests.'."\n" ."\n" .'The value can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'LogicalResourceId', 'in' => 'query', 'schema' => ['description' => 'The name of the resource.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ScalingRuleName', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'LogicalResourceId' => ['description' => 'The logical ID of the resource that is defined in the template.', 'type' => 'string', 'example' => 'ScalingRule', 'title' => ''], 'ResourceDriftStatus' => ['description' => 'The drift status of the resource. Valid values:'."\n" ."\n" .'- DELETED: The actual configuration of the resource differs from its expected template configuration because the resource is deleted.'."\n" ."\n" .'- MODIFIED: The actual configuration of the resource differs from its expected template configuration.'."\n" ."\n" .'- NOT\\_CHECKED: Resource Orchestration Service (ROS) has not checked whether the actual configuration of the resource differs from its expected template configuration.'."\n" ."\n" .'- IN\\_SYNC: The actual configuration of the resource matches its expected template configuration.', 'type' => 'string', 'example' => 'MODIFIED', 'title' => ''], 'PropertyDifferences' => [ 'description' => 'The property drifts of the resource.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ActualValue' => ['description' => 'The actual value of the resource property.', 'type' => 'string', 'example' => 'test1', 'title' => ''], 'DifferenceType' => ['description' => 'The drift type of the resource property. Valid values:'."\n" ."\n" .'- ADD: The property value has been added to a resource property whose data type was Array or List.'."\n" ."\n" .'- REMOVE: The property has been deleted from the current resource configuration.'."\n" ."\n" .'- NOT\\_EQUAL: The current property value differs from the expected value defined in the stack template.', 'type' => 'string', 'example' => 'NOT_EQUAL', 'title' => ''], 'PropertyPath' => ['description' => 'The path of the resource property.', 'type' => 'string', 'example' => '/ScalingRuleName', 'title' => ''], 'ExpectedValue' => ['description' => 'The expected value of the resource property that is defined in the template.', 'type' => 'string', 'example' => 'test2', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'PhysicalResourceId' => ['description' => 'The physical ID of the resource.', 'type' => 'string', 'example' => 'asr-2ze4zzc3kf9yz1kd****', 'title' => ''], 'ExpectedProperties' => ['description' => 'The JSON-formatted resource properties that are defined in the template.', 'type' => 'string', 'example' => '{"ScalingRuleName": "test2"}', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the resource drift detection was initiated.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'ResourceType' => ['description' => 'The type of the resource.', 'type' => 'string', 'example' => 'ALIYUN::ESS::ScalingRule', 'title' => ''], 'ActualProperties' => ['description' => 'The actual JSON-formatted resource properties.', 'type' => 'string', 'example' => '{"ScalingRuleName": "test1"}', 'title' => ''], 'StackId' => ['description' => 'The ID of the stack.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DetectStackResourceDrift', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | ResourceDriftDetectionProcessing |Drift detection of resource {name} is processing. |已经在对资源进行偏差检测。name为资源名。|'."\n" .'| 400 | ResourceDriftDetectionFailure |Fail to detect resource {name} drift: {reason} |资源偏差检测失败。name为资源名,reason为原因。 |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 404 | ResourceNotFound |The Resource ({name}) could not be found in Stack {stack}. |资源栈中不存某资源。name为资源名,stack为资源栈名称或ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetectStackResourceDrift'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DetectStackResourceDrift', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LogicalResourceId\\": \\"ScalingRule\\",\\n \\"ResourceDriftStatus\\": \\"MODIFIED\\",\\n \\"PropertyDifferences\\": [\\n {\\n \\"ActualValue\\": \\"test1\\",\\n \\"DifferenceType\\": \\"NOT_EQUAL\\",\\n \\"PropertyPath\\": \\"/ScalingRuleName\\",\\n \\"ExpectedValue\\": \\"test2\\"\\n }\\n ],\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"PhysicalResourceId\\": \\"asr-2ze4zzc3kf9yz1kd****\\",\\n \\"ExpectedProperties\\": \\"{\\\\\\"ScalingRuleName\\\\\\": \\\\\\"test2\\\\\\"}\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"ResourceType\\": \\"ALIYUN::ESS::ScalingRule\\",\\n \\"ActualProperties\\": \\"{\\\\\\"ScalingRuleName\\\\\\": \\\\\\"test1\\\\\\"}\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\"\\n}","type":"json"}]', ], 'EnableServiceAccess' => [ 'summary' => 'Enables trusted service access.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREros4U80G2'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '23045A5D-720E-5D11-A752-E1568F725C93', 'title' => ''], 'ServiceAccessInfo' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The trusted service access status.', 'type' => 'string', 'example' => 'ENABLED', 'title' => ''], ], 'description' => 'The trusted service access information.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'EnableServiceAccess', 'description' => '### Description'."\n" ."\n" .'Enables trusted service access.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'ros:EnableServiceAccess', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"23045A5D-720E-5D11-A752-E1568F725C93\\",\\n \\"ServiceAccessInfo\\": {\\n \\"Status\\": \\"ENABLED\\"\\n }\\n}","type":"json"}]', ], 'EnableServices' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ServiceNames', 'in' => 'query', 'style' => 'json', 'schema' => [ 'type' => 'array', 'items' => ['description' => 'The service to enable.', 'type' => 'string', 'required' => false, 'example' => '[\\"OSS\\"]', 'title' => ''], 'description' => 'A list of services to enable.', 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region where the service is enabled.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'E1BD3327-6BEE-53AD-8788-D892EB575962', 'title' => ''], 'FailedServices' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ServiceName' => ['description' => 'The name of the Alibaba Cloud service.', 'type' => 'string', 'example' => 'ACVS', 'title' => ''], 'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => '400', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'Failed', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'A list of services that failed to be enabled.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'EnableServices', 'summary' => 'Enables services in a batch.', 'description' => '### Description'."\n" ."\n" .'This operation enables multiple Alibaba Cloud services in a batch.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'ros:EnableServices', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E1BD3327-6BEE-53AD-8788-D892EB575962\\",\\n \\"FailedServices\\": [\\n {\\n \\"ServiceName\\": \\"ACVS\\",\\n \\"Code\\": \\"400\\",\\n \\"Message\\": \\"Failed\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ExecuteChangeSet' => [ 'summary' => 'Executes change sets.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATURErosM9I2VQ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the change set. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ChangeSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the change set.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '1f6521a4-05af-4975-afe9-bc4b45ad****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that it is unique among different requests.'."\n" ."\n" .'The token can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ExecuteChangeSet', 'description' => 'In this example, the change set whose ID is `1f6521a4-05af-4975-afe9-bc4b45ad****` is executed. The change set is created in the `China (Hangzhou)` region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => "\n" .'| 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| ChangeSetNotFound |The ChangeSet ({name}) of Stack ({stack}) could not be found. | 404 |更改集不存在,name为更改集名称或ID,stack为资源栈名称或ID。 |'."\n" .'| ChangeSetNotFound |The ChangeSet {ID} could not be found. | 404 |更改集不存在,ID为更改集ID。 |'."\n" .'| StackNotFound |The Stack ({name}) could not be found. | 404 |资源栈不存在,name为资源栈名称或ID。 |'."\n" .'| ActionInProgress |Stack {name} already has an action ({action}) in progress. | 409 |资源栈在变更中,name为资源栈名称或ID,action为变更操作。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecuteChangeSet'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:ExecuteChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'GenerateTemplateByScratch' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosUSKZAD', 'FEATURErosHDIJ7A', 'FEATURErosSKHQLM'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource scenario.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource scenario.'."\n" ."\n" .'For more information about how to query the IDs of resource scenarios, see [ListTemplateScratches](~~363050~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ts-aa9c62feab844a6b****', 'title' => ''], ], [ 'name' => 'ProvisionRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the new node.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateType', 'in' => 'query', 'schema' => ['description' => 'The type of the template that Resource Orchestration Service (ROS) generates. ROS can generate templates of the ROS and Terraform types. Default value: ROS.', 'type' => 'string', 'required' => false, 'example' => 'ROS', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'D22C1D13-D74E-558C-AF68-1B4C05FA6F1A', 'title' => ''], 'TemplateBody' => ['description' => 'The template content of the resource scenario.', 'type' => 'string', 'example' => '{\\"ROSTemplateFormatVersion\\": \\"2015-09-01\\", \\"Resources\\": {\\"ECSVPC_001\\": {\\"DeletionPolicy\\": \\"Retain\\", \\"Type\\": \\"ALIYUN::ECS::VPC\\", \\"Properties\\": {\\"CidrBlock\\": \\"172.16.0.0/12\\", \\"VpcName\\": \\"MyTestVpc\\", \\"EnableIpv6\\": false}}}}', 'title' => ''], 'ResourcesToImport' => [ 'description' => 'The resources that you want to import into a stack in the resource management scenario.'."\n" ."\n" .'> This parameter is returned only for a resource management scenario.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The type of the resource.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'LogicalResourceId' => ['description' => 'The logical ID of the resource.', 'type' => 'string', 'example' => 'ECSVPC_001', 'title' => ''], 'ResourceIdentifier' => ['description' => 'The key-value mapping between strings. The value is a JSON string that identifies the resource that you want to import into a stack.
'."\n" .'A key is an identifier for a resource, and a value is an assignment of data to the key. For example, VpcId is a key that indicates the ID of a virtual private cloud (VPC), and `vpc-bp1m6fww66xbntjyc****"` is a value that is assigned to VpcId.', 'type' => 'object', 'example' => '{"VpcId": "vpc-bp1m6fww66xbntjyc****" }', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GenerateTemplateByScratch', 'summary' => 'Generates a template for a resource scenario.', 'description' => 'In this example, a template is generated for a resource management scenario that resides in the China (Hangzhou) region. The ID of the resource scenario is `ts-aa9c62feab844a6b****`.'."\n" ."\n" .'> You cannot generate a template for a resource detection scenario.', 'requestParamsDescription' => 'For more information about common request parameters, see [API Reference](~~131957~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GenerateTemplateByScratch'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GenerateTemplateByScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D22C1D13-D74E-558C-AF68-1B4C05FA6F1A\\",\\n \\"TemplateBody\\": \\"{\\\\\\\\\\\\\\"ROSTemplateFormatVersion\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"2015-09-01\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Resources\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"ECSVPC_001\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"DeletionPolicy\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"Retain\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Type\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"ALIYUN::ECS::VPC\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Properties\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"CidrBlock\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"172.16.0.0/12\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"VpcName\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"MyTestVpc\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"EnableIpv6\\\\\\\\\\\\\\": false}}}}\\",\\n \\"ResourcesToImport\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::ECS::VPC\\",\\n \\"LogicalResourceId\\": \\"ECSVPC_001\\",\\n \\"ResourceIdentifier\\": {\\n \\"VpcId\\": \\"vpc-bp1m6fww66xbntjyc****\\"\\n }\\n }\\n ]\\n}","type":"json"}]', ], 'GenerateTemplatePolicy' => [ 'summary' => 'Generates the policy information required by a specified template.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12684', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on a web server (HTTP or HTTPS) or in an OSS bucket, such as oss://ros/template/demo or oss://ros/template/demo?RegionId=ap-southeast-1. The maximum size of the template is 524,288 bytes.'."\n" ."\n" .'> If the OSS region is not specified, the region specified by the RegionId parameter is used by default.'."\n" ."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, and TemplateId.'."\n" .'Maximum length: 1,024 bytes.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/template/demo', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'query', 'schema' => ['description' => 'The structure of the template body. The length is 1 to 524,288 bytes.'."\n" .'If the length is large, we recommend that you use the HTTP POST method and include the parameter in the request body to avoid request failures caused by an excessively long URL. '."\n" ."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, and TemplateId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. Shared templates and private templates are supported. '."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, and TemplateId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The template version. This parameter takes effect only when TemplateId is specified.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'OperationTypes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The operation types for which policy information is generated.', 'type' => 'array', 'items' => ['description' => 'The operation type for which policy information is generated.'."\n" .'Valid values:'."\n" .'- CreateStack: calls the CreateStack operation to create a stack.'."\n" ."\n" .'- UpdateStack: calls the UpdateStack operation to update a stack.'."\n" ."\n" .'- DeleteStack: calls the DeleteStack operation to delete a stack.'."\n" ."\n" .'- DetectStackDrift: calls the DetectStackDrift operation to perform drift detection on a stack.'."\n" ."\n" .'- ListStackOperationRisks: calls the ListStackOperationRisks operation with the OperationType parameter set to DeleteStack to list the risks of deleting a stack.'."\n" ."\n" .'- GetTemplateEstimateCost: calls the GetTemplateEstimateCost operation to query the estimated prices of resources to be created based on the template.'."\n" ."\n" .'- GetTemplateParameterConstraints: calls the GetTemplateParameterConstraints operation to query the values of template parameters.'."\n" ."\n" .'- ImportResourcesToStack: calls the CreateChangeSet operation with the ChangeSetType parameter set resource import resource import resources into a stack.'."\n" ."\n" .'- SignalResource: sends a signal to a stack.'."\n" ."\n" .'> Default value: all valid values.', 'type' => 'string', 'required' => false, 'example' => '["CreateStack"]', 'title' => ''], 'required' => false, 'maxItems' => 9, 'title' => '', 'example' => '', ], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The input parameters. The input parameters define the parameters that must be specified when you create a stack by using this template. These parameters specify the details of each stack creation, such as the username, password, and environment-specific ECS instance types.', 'type' => 'array', 'items' => [ 'description' => 'The input parameters. The input parameters define the parameters that must be specified when you create a stack by using this template. These parameters specify the details of each stack creation, such as the username, password, and environment-specific ECS instance types.', 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter. If you do not specify the name and value of a parameter defined in the template, Resource Orchestration Service (ROS) uses the default value specified in the template. '."\n" .'Maximum value of N: 200.'."\n" .'Example values:'."\n" ."\n" .'- Parameters.1.ParameterKey: `Name`.'."\n" ."\n" .'- Parameters.2.ParameterKey: `Netmode`.'."\n" ."\n\n" .'> Parameters is optional. If you specify Parameters, you must specify both Parameters.N.ParameterKey and Parameters.N.ParameterValue.', 'type' => 'string', 'required' => false, 'example' => 'Domain', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter defined in the template. Maximum value of N: 200. '."\n" ."\n" .'> Parameters is optional. If you specify Parameters, Parameters.N.ParameterValue is required.', 'type' => 'string', 'required' => false, 'example' => 'PostPaid', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'GenerateOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The options that control how the template access policy is generated. This parameter is of the LIST type. You can specify whether to resolve template parameters and the permission scope of the generated policy: '."\n" .'**ResolveParameters** indicates that the policy is generated after conditions and resources are resolved based on the specified Parameters or parameter default values.'."\n" ."\n" .'**IgnoreParameters** indicates that the policy is generated without resolving parameters, using the legacy logic.'."\n" ."\n" .'**MandatoryPolicy** indicates that only the minimum permissions required for template execution are generated.'."\n" ."\n" .'**FullPolicy** indicates that a full access policy is generated.'."\n" ."\n" .'ResolveParameters and IgnoreParameters are mutually exclusive. MandatoryPolicy and FullPolicy are mutually exclusive. MandatoryPolicy must be used together with ResolveParameters.'."\n" ."\n" .'If this parameter is not specified, ResolveParameters + FullPolicy is used by default when Parameters is specified. Otherwise, IgnoreParameters + FullPolicy is used by default.', 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'MandatoryPolicy', 'title' => ''], 'required' => false, 'maxItems' => 2, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The root node.', 'type' => 'object', 'properties' => [ 'Policy' => [ 'description' => 'The access policy information.', 'type' => 'object', 'properties' => [ 'Version' => ['description' => 'The version number.', 'type' => 'string', 'example' => '1', 'title' => ''], 'Statement' => [ 'description' => 'The access policy statement details.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The first policy statement.', 'type' => 'object', 'properties' => [ 'Effect' => ['description' => 'The authorization effect. Valid values: '."\n" ."\n" .'- Allow: Allowed. '."\n" ."\n" .'- Deny: Denied.', 'type' => 'string', 'example' => 'Allow', 'title' => ''], 'Resource' => ['description' => 'The specific resource that is authorized. An asterisk (*) indicates all resources.', 'type' => 'string', 'example' => '*', 'title' => ''], 'Action' => [ 'description' => 'The operation on the specific resource.', 'type' => 'array', 'items' => ['description' => 'The operation on the specific resource.', 'type' => 'string', 'example' => '['."\n" .' "ram:PassRole"'."\n" .']', 'title' => ''], 'title' => '', 'example' => '', ], 'Condition' => ['description' => 'The condition for the authorization to take effect.', 'type' => 'object', 'example' => '{'."\n" .' "StringEquals": {'."\n" .' "acs:Service": "fc.aliyuncs.com"'."\n" .' }'."\n" .'}', 'title' => ''], ], 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'PolicyFunctions' => [ 'title' => '', 'description' => 'The policy function configurations.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The first element in the policy function list.', 'type' => 'object', 'properties' => [ 'Action' => ['title' => '', 'description' => 'The action in the policy function.', 'type' => 'string', 'example' => 'accept'], 'RequirementLevel' => ['title' => '', 'description' => 'The requirement level of the policy function.', 'type' => 'string', 'example' => ''], 'ActionPolicyFunctions' => [ 'title' => '', 'description' => 'The policy function list.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The first sub-policy function of the root policy function.', 'type' => 'object', 'properties' => [ 'ResourceType' => ['title' => '', 'description' => 'The resource type associated with the policy function.', 'type' => 'string', 'example' => 'stack'], 'LogicalResourceId' => ['title' => '', 'description' => 'The logical resource ID of the policy function.', 'type' => 'string', 'example' => 'SLBLoadBalancer_00001'], 'Functions' => [ 'title' => '', 'description' => 'The policy function list.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'The first function in the policy function list.', 'type' => 'object', 'properties' => [ 'Function' => ['title' => '', 'description' => 'The function in the policy function.', 'type' => 'string', 'example' => 'notContains'], 'RequirementLevel' => ['title' => '', 'description' => 'The requirement level of the function.', 'type' => 'string', 'example' => ''], 'OperationType' => ['title' => '', 'description' => 'The operation type.', 'type' => 'string', 'example' => 'CreateStack'], 'RelatedProperties' => [ 'title' => '', 'description' => 'The list of related properties.', 'type' => 'array', 'items' => ['title' => '', 'description' => 'The first element in the related properties list.', 'type' => 'string', 'example' => ''], 'example' => '', ], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Policy\\": {\\n \\"Version\\": \\"1\\",\\n \\"Statement\\": [\\n {\\n \\"Effect\\": \\"Allow\\",\\n \\"Resource\\": \\"*\\",\\n \\"Action\\": [\\n \\"[\\\\n \\\\\\"ram:PassRole\\\\\\"\\\\n]\\"\\n ],\\n \\"Condition\\": {\\n \\"StringEquals\\": {\\n \\"acs:Service\\": \\"fc.aliyuncs.com\\"\\n }\\n }\\n }\\n ]\\n },\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"PolicyFunctions\\": [\\n {\\n \\"Action\\": \\"accept\\",\\n \\"RequirementLevel\\": \\"\\",\\n \\"ActionPolicyFunctions\\": [\\n {\\n \\"ResourceType\\": \\"stack\\",\\n \\"LogicalResourceId\\": \\"SLBLoadBalancer_00001\\",\\n \\"Functions\\": [\\n {\\n \\"Function\\": \\"notContains\\",\\n \\"RequirementLevel\\": \\"\\",\\n \\"OperationType\\": \\"CreateStack\\",\\n \\"RelatedProperties\\": [\\n \\"\\"\\n ]\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Generate policy information required by a template', 'description' => 'If the policies required by the template include Enterprise Distributed Application Service (EDAS), log on to your Alibaba Cloud account and upgrade the RAM permissions for the Resource Access Management (RAM) users that require authorization.'."\n" ."\n" .'This topic provides an example of how to generate access policies for a template whose ID is `5ecd1e10-b0e9-4389-a565-e4c15efc****`.', 'requestParamsDescription' => ' For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HTTP status code | Error code | Error message | Description |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | StackValidationFailed | {reason}. | Stack validation failed. reason indicates the specific cause. |'."\n" .'| 404 | TemplateNotFound | The Tempalte ({ ID }) could not be found. | The template does not exist. ID indicates the template ID. |'."\n" .'| 404 | TemplateNotFound | The Template { ID } with version { version } could not be found. | The template or the specified version does not exist. ID indicates the template ID, and version indicates the template version. |.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GenerateTemplatePolicy'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GenerateTemplatePolicy', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], ], 'GetAITask' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '227776', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the AI task.'."\n", 'type' => 'string', 'required' => false, 'example' => 't-asasas*****'], ], [ 'name' => 'OutputOption', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return the TaskOutput parameter. The TaskOutput parameter specifies the outputs of the AI task. Valid values:'."\n" ."\n" .'* Enabled'."\n" .'* Disabled (default)'."\n" ."\n" .'> The value of TaskOutput may be excessively long. If you do not require the outputs of the task, we recommend that you set OutputOption to Disabled to improve the response speed of the API operation.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Disabled'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'TaskId' => ['description' => 'The ID of the AI task.'."\n", 'type' => 'string', 'example' => 't-asasas*****'."\n"], 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A'], 'TaskType' => [ 'title' => '', 'description' => 'The type of the AI task.'."\n" ."\n" .'* GenerateTemplate: The AI task is used to generate a template.'."\n" .'* FixTemplate: The AI task is used to fix a template.'."\n", 'type' => 'string', 'required' => true, 'enumValueTitles' => ['GenerateTemplate' => 'GenerateTemplate', 'FixTemplate' => 'FixTemplate'], 'example' => 'GenerateTemplate', ], 'Status' => [ 'description' => 'The state of the AI task.'."\n" ."\n" .'* PENDING'."\n" .'* WAITING'."\n" .'* RUNNING'."\n" .'* SUCCESS'."\n" .'* FAILURE'."\n", 'type' => 'string', 'enumValueTitles' => ['SUCCESS' => 'SUCCESS', 'RUNNING' => 'RUNNING', 'WAITING' => 'WAITING', 'PENDING' => 'PENDING', 'FAILURE' => 'FAILURE'], 'example' => 'FAILURE', ], 'StatusReason' => ['description' => 'The reason why the AI task is in the state.'."\n", 'type' => 'string', 'example' => 'Handler execution unexpected failure'], 'TaskOutput' => ['description' => 'The outputs of the AI task. The outputs include the template.'."\n" ."\n" .'*'."\n", 'type' => 'object', 'example' => ' "Result": {'."\n" .' "ROSTemplateFormatVersion": "2015-09-01",'."\n" .'}'], 'Code' => ['description' => 'The error code.'."\n", 'type' => 'string', 'example' => 'Forbidden'], 'HttpStatusCode' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'Message' => ['description' => 'The error message.'."\n", 'type' => 'string', 'example' => 'You are not authorized to complete this action.'], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" ."\n" .'* true'."\n" .'* false'."\n", 'type' => 'string', 'example' => 'true'], ], ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TaskId\\": \\"t-asasas*****\\\\n\\",\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"TaskType\\": \\"GenerateTemplate\\",\\n \\"Status\\": \\"FAILURE\\",\\n \\"StatusReason\\": \\"Handler execution unexpected failure\\",\\n \\"TaskOutput\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"Code\\": \\"Forbidden\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Message\\": \\"You are not authorized to complete this action.\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', 'title' => 'GetAITask', 'summary' => 'Queries the information about an AI task by task ID.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetAITask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetChangeSet' => [ 'summary' => 'Returns details for a specified change set, optionally including the details of its associated template.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosM9I2VQ'], ], 'parameters' => [ [ 'name' => 'ShowTemplate', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return the template. Valid values:'."\n" ."\n" .'- true: The template is returned.'."\n" ."\n" .'- false (default): The template is not returned.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region to which the change set belongs. You can call the [DescribeRegions](~~131035~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ChangeSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the change set.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4c11658d-bd47-4dd0-ba64-727edc62****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the change set.', 'type' => 'string', 'example' => 'CREATE_COMPLETE', 'title' => ''], 'Changes' => [ 'description' => 'The changes in the change set.', 'type' => 'array', 'items' => ['description' => 'A change in the change set.'."\n" ."\n" .'For more information, see [change set data structure](~~155988~~).', 'type' => 'object', 'example' => 'See examples.', 'title' => ''], 'title' => '', 'example' => 'See examples.', ], 'Description' => ['description' => 'The description of the change set.', 'type' => 'string', 'example' => 'It is a demo.', 'title' => ''], 'Parameters' => [ 'description' => 'The parameters of the stack.', 'type' => 'array', 'items' => [ 'description' => 'A parameter for the stack.', 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter.', 'type' => 'string', 'example' => 'ALIYUN::Region', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3766EE04-76DD-50F9-9C23-3AF136CD5708', 'title' => ''], 'StatusReason' => ['description' => 'The reason for the change set\'s abnormal status.', 'type' => 'string', 'example' => 'too many changes.', 'title' => ''], 'CreateTime' => ['description' => 'The time when the change set was created. The time is in UTC and uses the `YYYY-MM-DDThh:mm:ss` format.', 'type' => 'string', 'example' => '2021-12-01T02:20:56', 'title' => ''], 'TemplateBody' => ['description' => 'The template body of the change set.'."\n" ."\n" .'> This parameter is returned only when `ShowTemplate` is set to `true`.', 'type' => 'string', 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], 'ChangeSetName' => ['description' => 'The name of the change set.', 'type' => 'string', 'example' => 'ChangeSet_template', 'title' => ''], 'ChangeSetId' => ['description' => 'The ID of the change set.', 'type' => 'string', 'example' => '4c11658d-bd47-4dd0-ba64-727edc62****', 'title' => ''], 'ExecutionStatus' => ['description' => 'The execution status of the change set.', 'type' => 'string', 'example' => 'AVAILABLE', 'title' => ''], 'ChangeSetType' => ['description' => 'The type of the change set.', 'type' => 'string', 'example' => 'UPDATE', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'DisableRollback' => ['description' => 'Indicates whether to disable rollback when a stack creation or update fails.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'StackName' => ['description' => 'The name of the stack to which the change set belongs.', 'type' => 'string', 'example' => 'stack_2021-10-13', 'title' => ''], 'TimeoutInMinutes' => ['description' => 'The timeout period for creating or updating the stack.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'StackId' => ['description' => 'The ID of the stack to which the change set belongs.', 'type' => 'string', 'example' => 'a486fc19-ebb7-4ce9-a70b-554a7c3d****', 'title' => ''], 'Log' => [ 'description' => 'Logs for the change set.', 'type' => 'object', 'properties' => [ 'TerraformLogs' => [ 'description' => 'The Terraform output logs. This parameter is returned only for change sets of Terraform-based stacks.'."\n" ."\n" .'> This parameter is unavailable while a change set is being created because the logs are generated only after the creation is complete.', 'type' => 'array', 'items' => [ 'description' => 'A Terraform log entry.', 'type' => 'object', 'properties' => [ 'Command' => ['description' => 'The name of the Terraform command that was executed. Valid values:'."\n" ."\n" .'- apply'."\n" ."\n" .'- plan'."\n" ."\n" .'- destroy'."\n" ."\n" .'- version'."\n" ."\n" .'For more information about the commands, see [Command](https://www.terraform.io/cli/commands).', 'type' => 'string', 'example' => 'apply', 'title' => ''], 'Stream' => ['description' => 'The output stream. Valid values:'."\n" ."\n" .'- `stdout`: standard output'."\n" ."\n" .'- `stderr`: standard error', 'type' => 'string', 'example' => 'stdout', 'title' => ''], 'Content' => ['description' => 'The content that the command wrote to the specified stream.', 'type' => 'string', 'example' => 'Apply complete! Resources: 42 added, 0 changed, 0 destroyed.', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the tag.', 'type' => 'string', 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The value of the tag.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'description' => 'A tag applied to the change set.', 'title' => '', 'example' => '', ], 'description' => 'The tags of the change set.', 'title' => '', 'example' => '', ], 'ResourceGroupId' => ['description' => 'The ID of the resource group.
For more information about resource groups, see [What is a resource group?](~~94475~~).
', 'type' => 'string', 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"CREATE_COMPLETE\\",\\n \\"Changes\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ],\\n \\"Description\\": \\"It is a demo.\\",\\n \\"Parameters\\": [\\n {\\n \\"ParameterKey\\": \\"ALIYUN::Region\\",\\n \\"ParameterValue\\": \\"cn-hangzhou\\"\\n }\\n ],\\n \\"RequestId\\": \\"3766EE04-76DD-50F9-9C23-3AF136CD5708\\",\\n \\"StatusReason\\": \\"too many changes.\\",\\n \\"CreateTime\\": \\"2021-12-01T02:20:56\\",\\n \\"TemplateBody\\": \\"{\\\\\\"ROSTemplateFormatVersion\\\\\\": \\\\\\"2015-09-01\\\\\\"}\\",\\n \\"ChangeSetName\\": \\"ChangeSet_template\\",\\n \\"ChangeSetId\\": \\"4c11658d-bd47-4dd0-ba64-727edc62****\\",\\n \\"ExecutionStatus\\": \\"AVAILABLE\\",\\n \\"ChangeSetType\\": \\"UPDATE\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"DisableRollback\\": false,\\n \\"StackName\\": \\"stack_2021-10-13\\",\\n \\"TimeoutInMinutes\\": 60,\\n \\"StackId\\": \\"a486fc19-ebb7-4ce9-a70b-554a7c3d****\\",\\n \\"Log\\": {\\n \\"TerraformLogs\\": [\\n {\\n \\"Command\\": \\"apply\\",\\n \\"Stream\\": \\"stdout\\",\\n \\"Content\\": \\"Apply complete! Resources: 42 added, 0 changed, 0 destroyed.\\"\\n }\\n ]\\n },\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"usage\\",\\n \\"Value\\": \\"test\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-acfmxazb4ph6aiy****\\"\\n}","type":"json"}]', 'title' => 'GetChangeSet', 'description' => 'This topic demonstrates how to query a change set with the ID `4c11658d-bd47-4dd0-ba64-727edc62****` in the China (Hangzhou) region.', 'requestParamsDescription' => 'For details about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| ChangeSetNotFound |The ChangeSet ({name}) of Stack ({stack}) could not be found. | 404 |更改集不存在,name为更改集名称或ID,stack为资源栈名称或ID。 |'."\n" .'| ChangeSetNotFound |The ChangeSet {ID} could not be found. | 404 |更改集不存在,ID为更改集ID。 |'."\n" .'| StackNotFound |The Stack ({name}) could not be found. | 404 |资源栈不存在,name为资源栈名称或ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetChangeSet'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], ], 'GetDiagnostic' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => ['operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'ReportId', 'in' => 'query', 'schema' => ['description' => 'The ID of the diagnostic report.'."\n", 'type' => 'string', 'required' => false, 'example' => 'dr-d540def087714890****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code returned.'."\n", 'type' => 'string', 'example' => 'Forbidden'], 'DiagnosticProduct' => ['description' => 'The name of the diagnostic item.'."\n", 'type' => 'string', 'example' => 'ros'], 'HttpStatusCode' => ['description' => 'The HTTP status code returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'Message' => ['description' => 'The error message returned.'."\n", 'type' => 'string', 'example' => 'The specified parameter ReportId is invalid, Can not find diagnostic report dr-5f6135782f104b0f****.'], 'Recommends' => ['description' => 'The suggestion for the diagnosis.'."\n", 'type' => 'object', 'example' => '{\'RosActionMessages\': {\'Reason\': \'Fail to delete stack (fc966920-450a-456b-983c-deeaec8e****), as deletion protection is enabled.\', \'Recommend\': \'\'}}'], 'ReportId' => ['description' => 'The ID of the diagnostic report.'."\n", 'type' => 'string', 'example' => 'dr-cc80afc48c8741e9****'], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '96A24844-9603-5E79-BDF4-EFD412FC5D4C'], 'Status' => ['description' => 'The diagnosis status. Valid values:'."\n" ."\n" .'* Running: The diagnosis is in progress.'."\n" .'* Complete: The diagnosis is complete.'."\n" .'* Failed: The diagnosis failed.'."\n", 'type' => 'string', 'example' => 'Running'], 'StatusReason' => ['description' => 'The reason for the diagnosis status.'."\n", 'type' => 'string', 'example' => 'Complete'], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" ."\n" .'* true'."\n" .'* false'."\n", 'type' => 'string', 'example' => 'true'], 'DiagnosticKey' => ['description' => 'The keyword in the diagnosis.'."\n", 'type' => 'string', 'example' => '0938F60C-A2CA-5A2E-9983-03EB1E6D7AE2'], 'DiagnosticTime' => ['description' => 'The time when the diagnosis was performed.'."\n", 'type' => 'string', 'example' => '2023-03-27T03:32:03Z'], 'HttpCode' => ['description' => 'The HTTP status code'."\n", 'type' => 'string', 'example' => '200'], 'DiagnosticResult' => [ 'description' => 'The diagnosis result.'."\n", 'type' => 'object', 'properties' => [ 'StackMessages' => ['description' => 'The stack information.'."\n", 'type' => 'object'], 'RosActionMessages' => ['description' => 'The information about Resource Orchestration Service (ROS) calling.'."\n", 'type' => 'object'], 'FailedResources' => ['description' => 'The resources that failed to be diagnosed.'."\n", 'type' => 'object'], ], ], ], 'description' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"Forbidden\\",\\n \\"DiagnosticProduct\\": \\"ros\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Message\\": \\"The specified parameter ReportId is invalid, Can not find diagnostic report dr-5f6135782f104b0f****.\\",\\n \\"Recommends\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"ReportId\\": \\"dr-cc80afc48c8741e9****\\",\\n \\"RequestId\\": \\"96A24844-9603-5E79-BDF4-EFD412FC5D4C\\",\\n \\"Status\\": \\"Running\\",\\n \\"StatusReason\\": \\"Complete\\",\\n \\"Success\\": \\"true\\",\\n \\"DiagnosticKey\\": \\"0938F60C-A2CA-5A2E-9983-03EB1E6D7AE2\\",\\n \\"DiagnosticTime\\": \\"2023-03-27T03:32:03Z\\",\\n \\"HttpCode\\": \\"200\\",\\n \\"DiagnosticResult\\": {\\n \\"StackMessages\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RosActionMessages\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"FailedResources\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n }\\n}","type":"json"}]', 'title' => 'GetDiagnostic', 'summary' => 'Obtains the diagnosis details based on a specified diagnostic report ID.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GetDiagnostic', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetFeatureDetails' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '104761', 'abilityTreeNodes' => ['FEATUREros68YWKF'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Feature', 'in' => 'query', 'schema' => ['description' => 'The one or more features that you want to query. Valid values:'."\n" ."\n" .'- Terraform: the Terraform hosting feature.'."\n" ."\n" .'- ResourceCleaner: the resource cleaner feature. You can use ALIYUN::ROS::ResourceCleaner to create a resource cleaner.'."\n" ."\n" .'- TemplateScratch: the scenario feature.'."\n" ."\n" .'- All: all features that are supported by ROS.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'Terraform', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'EBF833DA-D0E2-52BE-92E2-59CA56BE834E', 'title' => ''], 'Terraform' => [ 'description' => 'Details of the Terraform hosting feature.', 'type' => 'object', 'properties' => [ 'SupportedVersions' => [ 'description' => 'The Terraform versions.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ProviderVersions' => [ 'description' => 'The names and versions of the providers that correspond to the Terraform versions.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ProviderName' => ['description' => 'The name of the provider.', 'type' => 'string', 'example' => 'alicloud', 'title' => ''], 'SupportedVersions' => [ 'description' => 'The provider versions.', 'type' => 'array', 'items' => ['description' => 'The provider version.', 'type' => 'string', 'example' => '1.121.2', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TerraformVersion' => ['description' => 'The Terraform version.', 'type' => 'string', 'example' => '1.0.11', 'title' => ''], 'Transform' => ['description' => 'The Terraform version that is supported by ROS. The parameter value is the same as the value of the Transform parameter in a Terraform template.', 'type' => 'string', 'example' => 'Aliyun::Terraform-v1.0', 'title' => ''], 'UpdateAllowedTransforms' => [ 'description' => 'The Terraform versions that can be updated in ROS.', 'type' => 'array', 'items' => ['description' => 'The Terraform version that can be updated in ROS.', 'type' => 'string', 'example' => 'Aliyun::Terraform-v1.1', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'SupportedResourceTypes' => [ 'description' => 'The resource types that support the scenario feature.', 'type' => 'object', 'properties' => [ 'SystemTag' => [ 'description' => 'The resource types that support the system tag `acs:ros:stackId`.', 'type' => 'array', 'items' => ['description' => 'The resource types that support the system tag `acs:ros:stackId`.', 'type' => 'string', 'example' => 'alicloud_instance', 'title' => ''], 'title' => '', 'example' => '', ], 'CustomTag' => [ 'description' => 'The resource types that support the custom tag feature.', 'type' => 'array', 'items' => ['description' => 'The resource types that support the custom tag feature.', 'type' => 'string', 'example' => 'alicloud_instance', 'title' => ''], 'title' => '', 'example' => '', ], 'EstimateCost' => [ 'description' => 'The resource types that support the price inquiry feature.', 'type' => 'array', 'items' => ['description' => 'The resource types that support the price inquiry feature.', 'type' => 'string', 'example' => 'alicloud_instance', 'title' => ''], 'title' => '', 'example' => '', ], 'ResourceGroup' => [ 'description' => 'The resource types that support the resource group feature.', 'type' => 'array', 'items' => ['description' => 'The resource types that support the resource group feature.', 'type' => 'string', 'example' => 'alicloud_instance', 'title' => ''], 'title' => '', 'example' => '', ], 'StackOperationRisk' => [ 'description' => 'The resource type that support the risk check feature.', 'type' => 'object', 'properties' => [ 'DeleteStack' => [ 'description' => 'The resource types that support the risk check performed to detect risks caused by a stack deletion operation.', 'type' => 'array', 'items' => ['description' => 'The resource types that support the risk check performed to detect risks caused by a stack deletion operation.', 'type' => 'string', 'example' => 'alicloud_instance', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'TemplateScratch' => [ 'description' => 'Details of the scenario feature.', 'type' => 'object', 'properties' => [ 'SupportedResourceTypes' => [ 'description' => 'The resource types that are supported by the scenario feature.', 'type' => 'array', 'items' => [ 'description' => 'The resource types that support the scenario feature.', 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::Disk', 'title' => ''], 'SourceResourcesSupported' => ['description' => 'Indicates whether the resource scope can be specified by source resource. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SourceTagSupported' => ['description' => 'Indicates whether the resource scope can be specified by source tag. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SourceResourceGroupSupported' => ['description' => 'Indicates whether the resource scope can be specified by source resource group. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SourceSupported' => ['description' => 'Indicates whether the resource scope can be specified by source tag, resource group, or resource. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SupportedTemplateScratchTypes' => [ 'description' => 'The scenario types that are supported.', 'type' => 'array', 'items' => ['description' => 'The scenario type that is supported. Valid values:'."\n" ."\n" .'- ArchitectureReplication: resource replication'."\n" ."\n" .'- ArchitectureDetection: resource detection'."\n" ."\n" .'- ResourceImport: resource management'."\n" ."\n" .'- ResourceMigration: resource migration', 'type' => 'string', 'example' => 'ArchitectureReplication', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'ResourceCleaner' => [ 'description' => 'Details of the resource cleaner feature.', 'type' => 'object', 'properties' => [ 'SupportedResourceTypes' => [ 'description' => 'The resource types that can be cleaned up.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type that supports the resource cleaner feature.', 'type' => 'string', 'example' => 'ECS:Instance', 'title' => ''], 'SupportedFilters' => [ 'description' => 'The names of the filters that are supported by the resource type.', 'type' => 'array', 'items' => ['description' => 'The name of the filter that is supported by the resource type. Valid values:'."\n" ."\n" .'- RegionId'."\n" ."\n" .'- ResourceId'."\n" ."\n" .'- ResourceName'."\n" ."\n" .'- Tags'."\n" ."\n" .'- ResourceGroupId'."\n" ."\n" .'- DeletionProtection', 'type' => 'string', 'example' => 'ResourceName', 'title' => ''], 'title' => '', 'example' => '', ], 'SideEffects' => [ 'description' => 'The names of the side effects that may be caused by the cleanup operation performed on the resources of the specified type.', 'type' => 'array', 'items' => ['description' => 'The name of the side effect that may be caused by the cleanup operation performed on the resources of the specified type. Only StopInstance may be returned, which indicates that instances related to the specified resource type are stopped.', 'type' => 'string', 'example' => 'StopInstance', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => 'The resource types that can be cleaned up.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'TemplateParameterConstraints' => [ 'description' => 'Details of the template parameter constraint feature.', 'type' => 'object', 'properties' => [ 'SupportedResourceTypes' => [ 'description' => 'The resource types that support the template parameter constraint feature.', 'type' => 'array', 'items' => [ 'description' => 'The resource types that support the template parameter constraint feature.', 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::Disk', 'title' => ''], 'Properties' => [ 'description' => 'The names of properties that are supported by the resource type.', 'type' => 'array', 'items' => ['description' => 'The name of the property that is supported by the resource type.', 'type' => 'string', 'example' => '["DiskCategory", "ZoneId"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'DriftDetection' => [ 'description' => 'Details of the drift detection feature.', 'type' => 'object', 'properties' => [ 'SupportedResourceTypes' => [ 'description' => 'The resource types that are supported by the drift detection feature.', 'type' => 'array', 'items' => ['description' => 'The resource types that are supported by the drift detection feature.', 'type' => 'string', 'example' => 'ALIYUN::ECS::Disk', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'ResourceImport' => [ 'description' => 'Details of the resource import feature.', 'type' => 'object', 'properties' => [ 'SupportedResourceTypes' => [ 'description' => 'The resource types that are supported by the resource import feature.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::Disk', 'title' => ''], 'ResourceIdentifiers' => [ 'description' => 'The resource identifiers.', 'type' => 'array', 'items' => ['description' => 'The resource identifier.', 'type' => 'string', 'example' => 'DiskId', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetFeatureDetails', 'summary' => 'Queries the details of features that are supported by Resource Orchestration Service (ROS).', 'description' => 'You can call this operation to query the Terraform hosting, resource cleaner, and scenario features.'."\n" ."\n" .'This topic provides an example on how to query the details of features supported by ROS in the China (Hangzhou) region. The details include Terraform versions, provider versions, and supported resource types.'."\n" ."\n" .'> In the Examples section, only part of the sample code is provided.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetFeatureDetails'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EBF833DA-D0E2-52BE-92E2-59CA56BE834E\\",\\n \\"Terraform\\": {\\n \\"SupportedVersions\\": [\\n {\\n \\"ProviderVersions\\": [\\n {\\n \\"ProviderName\\": \\"alicloud\\",\\n \\"SupportedVersions\\": [\\n \\"1.121.2\\"\\n ]\\n }\\n ],\\n \\"TerraformVersion\\": \\"1.0.11\\",\\n \\"Transform\\": \\"Aliyun::Terraform-v1.0\\",\\n \\"UpdateAllowedTransforms\\": [\\n \\"Aliyun::Terraform-v1.1\\"\\n ]\\n }\\n ],\\n \\"SupportedResourceTypes\\": {\\n \\"SystemTag\\": [\\n \\"alicloud_instance\\"\\n ],\\n \\"CustomTag\\": [\\n \\"alicloud_instance\\"\\n ],\\n \\"EstimateCost\\": [\\n \\"alicloud_instance\\"\\n ],\\n \\"ResourceGroup\\": [\\n \\"alicloud_instance\\"\\n ],\\n \\"StackOperationRisk\\": {\\n \\"DeleteStack\\": [\\n \\"alicloud_instance\\"\\n ]\\n }\\n }\\n },\\n \\"TemplateScratch\\": {\\n \\"SupportedResourceTypes\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::ECS::Disk\\",\\n \\"SourceResourcesSupported\\": true,\\n \\"SourceTagSupported\\": true,\\n \\"SourceResourceGroupSupported\\": true,\\n \\"SourceSupported\\": true,\\n \\"SupportedTemplateScratchTypes\\": [\\n \\"ArchitectureReplication\\"\\n ]\\n }\\n ]\\n },\\n \\"ResourceCleaner\\": {\\n \\"SupportedResourceTypes\\": [\\n {\\n \\"ResourceType\\": \\"ECS:Instance\\",\\n \\"SupportedFilters\\": [\\n \\"ResourceName\\"\\n ],\\n \\"SideEffects\\": [\\n \\"StopInstance\\"\\n ]\\n }\\n ]\\n },\\n \\"TemplateParameterConstraints\\": {\\n \\"SupportedResourceTypes\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::ECS::Disk\\",\\n \\"Properties\\": [\\n \\"[\\\\\\"DiskCategory\\\\\\", \\\\\\"ZoneId\\\\\\"]\\"\\n ]\\n }\\n ]\\n },\\n \\"DriftDetection\\": {\\n \\"SupportedResourceTypes\\": [\\n \\"ALIYUN::ECS::Disk\\"\\n ]\\n },\\n \\"ResourceImport\\": {\\n \\"SupportedResourceTypes\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::ECS::Disk\\",\\n \\"ResourceIdentifiers\\": [\\n \\"DiskId\\"\\n ]\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'GetResourceType' => [ 'summary' => 'Queries the details of a resource type.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. '."\n" .'For more information about the resource types supported by ROS, see [Resource type index](~~127039~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ALIYUN::ROS::WaitConditionHandle', 'title' => ''], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The version ID. To query a specific version of the resource type, specify this parameter. Otherwise, the resource type is queried.'."\n" ."\n" .'> Only modules support versions.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A28FBA2E-B6B3-5822-AA45-AB875EF23641', 'title' => ''], 'Attributes' => ['description' => 'The return values of the resource.', 'type' => 'object', 'example' => '参见示例', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ROS::WaitConditionHandle', 'title' => ''], 'Properties' => ['description' => 'The properties of the resource.', 'type' => 'object', 'example' => '参见示例', 'title' => ''], 'SupportDriftDetection' => ['description' => 'Indicates whether the resource supports drift detection. Valid values:'."\n" ."\n" .'- true: Supported.'."\n" ."\n" .'- false: Not supported.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'SupportScratchDetection' => ['description' => 'Indicates whether the resource supports resource scenarios. Valid values:'."\n" ."\n" .'- true: Supported.'."\n" ."\n" .'- false: Not supported.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EntityType' => [ 'description' => 'The entity type. Valid values:'."\n" ."\n\n" .'- Resource: a regular resource type. For more information, see [Resources](~~28863~~).'."\n" ."\n" .'- DataSource: a data source resource type. For more information, see [Data source resources](~~404753~~).'."\n" ."\n" .'- Module: a module.', 'enumValueTitles' => ['Resource' => 'Resource', 'Module' => 'Module', 'DataSource' => 'DataSource'], 'type' => 'string', 'example' => 'Resource', 'title' => '', ], 'Provider' => [ 'description' => 'The resource type provider. Valid values:'."\n" .'- ROS: Resource Orchestration Service.'."\n" .'- Self: the user.', 'enumValueTitles' => ['ROS' => 'ROS', 'Self' => 'Self'], 'type' => 'string', 'example' => 'ROS', 'title' => '', ], 'Description' => ['description' => 'The description of the resource type.', 'type' => 'string', 'example' => 'It is a demo.', 'title' => ''], 'DefaultVersionId' => ['description' => 'The default version ID.'."\n" ."\n" .'> This parameter is returned only when the resource type is queried.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'LatestVersionId' => ['description' => 'The latest version ID.'."\n" .'> This parameter is returned only when the resource type is queried.', 'type' => 'string', 'example' => 'v10', 'title' => ''], 'CreateTime' => ['description' => 'The time when the resource type was created. The time is displayed in UTC+0 and follows the ISO 8601 standard without the trailing Z. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2023-02-24T08:25:21'."\n", 'title' => ''], 'UpdateTime' => ['description' => 'The time when the resource type was updated. The time is displayed in UTC+0 and follows the ISO 8601 standard without the trailing Z. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2023-02-24T08:25:21'."\n", 'title' => ''], 'TotalVersionCount' => ['description' => 'The total number of versions.'."\n" .'> This parameter is returned only when the resource type is queried.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'IsDefaultVersion' => [ 'description' => 'Indicates whether the version is the default version. Valid values:'."\n" .'- true: The version is the default version.'."\n" .'- false: The version is not the default version.'."\n" .'> This parameter is returned only when a specific version of the resource type is queried.', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'example' => 'true', 'title' => '', ], 'TemplateBody' => ['description' => 'The template content of the module.'."\n" .'> This parameter is returned only when a specific version of the resource type is queried.', 'type' => 'string', 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A28FBA2E-B6B3-5822-AA45-AB875EF23641\\",\\n \\"Attributes\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"ResourceType\\": \\"ALIYUN::ROS::WaitConditionHandle\\",\\n \\"Properties\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"SupportDriftDetection\\": false,\\n \\"SupportScratchDetection\\": false,\\n \\"EntityType\\": \\"Resource\\",\\n \\"Provider\\": \\"ROS\\",\\n \\"Description\\": \\"It is a demo.\\",\\n \\"DefaultVersionId\\": \\"v1\\",\\n \\"LatestVersionId\\": \\"v10\\",\\n \\"CreateTime\\": \\"2023-02-24T08:25:21\\\\n\\",\\n \\"UpdateTime\\": \\"2023-02-24T08:25:21\\\\n\\",\\n \\"TotalVersionCount\\": 10,\\n \\"IsDefaultVersion\\": true,\\n \\"TemplateBody\\": \\"{\\\\\\"ROSTemplateFormatVersion\\\\\\":\\\\\\"2015-09-01\\\\\\"}\\"\\n}","type":"json"}]', 'title' => 'Query details of a resource type', 'description' => 'This topic provides an example of how to query the details of the `ALIYUN::ROS::WaitConditionHandle` resource type.', 'requestParamsDescription' => ' For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | Error code | Error message | Description |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'|404 |ResourceTypeNotFound |The Resource Type ({name}) could not be found. |The resource type does not exist. name indicates the resource type name. |.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetResourceType'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'GetResourceTypeTemplate' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Call the [ListResourceTypes](~~133957~~) operation to query supported resource types.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The version ID. Specify this parameter to query a specific version of the resource type. If you do not specify this parameter, the default version of the resource type is queried.'."\n" ."\n" .'> This parameter is supported only for modules.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '87F54B2B-AEF0-4C33-A72A-3F8856A575E9', 'title' => ''], 'TemplateBody' => ['description' => 'The structure of the template body. The template body must be 1 to 51,200 bytes in length. For more information, see [Template syntax](~~28857~~).'."\n" ."\n" .'> This parameter is not recommended. Use TemplateContent instead.', 'type' => 'object', 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], 'TemplateContent' => ['description' => 'The structure of the template body in JSON format. For more information, see [Template syntax](~~28857~~).', 'type' => 'string', 'example' => '{'."\n" .' "ROSTemplateFormatVersion": "2015-09-01"'."\n" .'}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetResourceTypeTemplate', 'summary' => 'Generates a sample template based on a resource type.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | ResourceTypeNotFound | The Resource Type ({name}) could not be found. |资源类型不存在。name为资源类型名。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetResourceTypeTemplate'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetResourceTypeTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"87F54B2B-AEF0-4C33-A72A-3F8856A575E9\\",\\n \\"TemplateBody\\": {\\n \\"ROSTemplateFormatVersion\\": \\"2015-09-01\\"\\n },\\n \\"TemplateContent\\": \\"{\\\\n \\\\\\"ROSTemplateFormatVersion\\\\\\": \\\\\\"2015-09-01\\\\\\"\\\\n}\\"\\n}","type":"json"}]', ], 'GetServiceAccess' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREros4U80G2'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0DEFE672-690F-54C1-B42A-8E78E640BE07', 'title' => ''], 'ServiceAccessInfo' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'Trusted service status.', 'type' => 'string', 'example' => 'ENABLED', 'title' => ''], ], 'description' => 'The trusted service details.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetServiceAccess', 'summary' => 'Queries the access status of a trusted service.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetServiceAccess', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0DEFE672-690F-54C1-B42A-8E78E640BE07\\",\\n \\"ServiceAccessInfo\\": {\\n \\"Status\\": \\"ENABLED\\"\\n }\\n}","type":"json"}]', ], 'GetServiceProvisions' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure of the template body. The template body must be 1 to 524,288 bytes in length. If the length of the template body exceeds the upper limit, we recommend to use the HTTP POST + Body Param method to pass the parameter in the request body to avoid request failures caused by an excessively long URL.'."\n" ."\n" .'> You can specify only one of the TemplateBody, TemplateURL, TemplateId, and Services parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'ROSTemplateFormatVersion: \'2015-09-01\'\\r\\nResources:\\r\\n Vpc:\\r\\n Type: ALIYUN::ECS::VPC\\r\\n Properties:\\r\\n CidrBlock: 192.168.0.0/24\\r\\n VpcName: TestVpc', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an Object Storage Service (OSS) bucket. The template body must be 1 to 524,288 bytes in length. Examples of OSS URLs: oss\\://ros/template/demo and oss\\://ros/template/demo?RegionId=cn-hangzhou. If you do not specify the region ID of the OSS bucket, the value of the RegionId parameter is used.'."\n" ."\n" .'You can specify only one of the TemplateBody, TemplateURL, TemplateId, and Services parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. This parameter applies to shared and private templates.'."\n" ."\n" .'You can specify only one of the TemplateBody, TemplateURL, TemplateId, and Services parameters.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. If you do not specify this parameter, the latest version is used.'."\n" ."\n" .'This parameter takes effect only when you specify TemplateId.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter. If you do not specify the name and value of a parameter, Resource Orchestration Service (ROS) uses the default name and value that are specified in the template.'."\n" ."\n" .'> Parameters is optional. If you specify Parameters, you must specify ParameterKey.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter.'."\n" ."\n" .'> Parameters is optional. If you specify Parameters, you must specify ParameterValue.', 'type' => 'string', 'required' => true, 'example' => '12', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'Services', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of Alibaba Cloud services.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ServiceName' => ['description' => 'The name of the Alibaba Cloud service. Valid values:'."\n" ."\n" .'- AHAS: Application High Availability Service.'."\n" ."\n" .'- ARMS: Application Real-Time Monitoring Service.'."\n" ."\n" .'- ApiGateway: API Gateway.'."\n" ."\n" .'- BatchCompute: Batch Compute.'."\n" ."\n" .'- BrainIndustrial: Industrial Intelligence.'."\n" ."\n" .'- CloudStorageGateway: Cloud Storage Gateway.'."\n" ."\n" .'- CMS: Cloud Monitor.'."\n" ."\n" .'- CR: Container Registry.'."\n" ."\n" .'- CS: Container Service.'."\n" ."\n" .'- DCDN: DCDN.'."\n" ."\n" .'- DataHub: DataHub.'."\n" ."\n" .'- DataWorks: DataWorks.'."\n" ."\n" .'- EDAS: Enterprise Distributed Application Service.'."\n" ."\n" .'- EHPC: Elastic High Performance Computing.'."\n" ."\n" .'- EMAS: Enterprise Mobile Application Studio.'."\n" ."\n" .'- FC: Function Compute.'."\n" ."\n" .'- FNF: CloudFlow.'."\n" ."\n" .'- MaxCompute: MaxCompute.'."\n" ."\n" .'- SMQ: Simple Message Queue (formerly MNS).'."\n" ."\n" .'- HBR: Cloud Backup.'."\n" ."\n" .'- IMM: Intelligent Media Management.'."\n" ."\n" .'- IOT: IoT Platform.'."\n" ."\n" .'- KMS: Key Management Service.'."\n" ."\n" .'- NAS: File Storage NAS.'."\n" ."\n" .'- NLP: Natural Language Processing.'."\n" ."\n" .'- OSS: Object Storage Service.'."\n" ."\n" .'- OTS: Tablestore.'."\n" ."\n" .'- PrivateLink: PrivateLink.'."\n" ."\n" .'- PrivateZone: PrivateZone.'."\n" ."\n" .'- RocketMQ: Message Queue for Apache RocketMQ.'."\n" ."\n" .'- SAE: Serverless App Engine.'."\n" ."\n" .'- SLS: Simple Log Service.'."\n" ."\n" .'- TrafficMirror: Traffic Mirroring.'."\n" ."\n" .'- VS: Video Surveillance.'."\n" ."\n" .'- Xtrace: Tracing Analysis.', 'type' => 'string', 'required' => true, 'example' => 'EHPC', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 50, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A9938C04-26AD-5EFA-B394-EA7866842DFF', 'title' => ''], 'ServiceProvisions' => [ 'description' => 'The details of the Alibaba Cloud services.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ServiceName' => ['description' => 'The name of the Alibaba Cloud service.', 'type' => 'string', 'example' => 'EHPC', 'title' => ''], 'Status' => ['description' => 'The activation status of the Alibaba Cloud service. Valid values:'."\n" ."\n" .'- Enabled: The service is activated.'."\n" ."\n" .'- Disabled: The service is not activated.'."\n" ."\n" .'- Unknown: The activation status is unknown.', 'type' => 'string', 'example' => 'Enabled', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the Alibaba Cloud service is not activated or the activation status is unknown.'."\n" ."\n" .'> This parameter is returned only when the value of Status is Disabled or Unknown.', 'type' => 'string', 'example' => 'No permission.', 'title' => ''], 'AutoEnableService' => ['description' => 'Indicates whether the service is automatically activated when the template is used to create a stack. Valid values:'."\n" ."\n" .'- true: The service is automatically activated.'."\n" ."\n" .'- false: The service is not automatically activated.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnableURL' => ['description' => 'The URL that you can use to activate the Alibaba Cloud service.'."\n" ."\n" .'> This parameter is returned only when the value of Status is Disabled.', 'type' => 'string', 'example' => 'https://common-buy.aliyun.com/?commodityCode=nas', 'title' => ''], 'RoleProvision' => [ 'description' => 'The information about the service-linked roles of the Alibaba Cloud service. If this parameter is empty, no service-linked role is associated with the service.', 'type' => 'object', 'properties' => [ 'AuthorizationURL' => ['description' => 'The URL that you can use to grant permissions to the service-linked role.'."\n" ."\n" .'> This parameter is returned only when the value of Created is false.', 'type' => 'string', 'example' => 'https://ehpc.console.aliyun.com/', 'title' => ''], 'Roles' => [ 'description' => 'The service-linked roles.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RoleName' => ['description' => 'The name of the service-linked role.', 'type' => 'string', 'example' => 'AliyunServiceRoleForEHPC', 'title' => ''], 'Created' => ['description' => 'Indicates whether the service-linked role is created. Valid values:'."\n" ."\n" .'- true: The service-linked role is created.'."\n" ."\n" .'- false: The service-linked role is not created.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Function' => ['description' => 'The purpose of the role. Default value: Default. This value indicates that the role is the default role of the service.', 'type' => 'string', 'example' => 'Default', 'title' => ''], 'ApiForCreation' => [ 'description' => 'The information about the API operation that is used to create the role.', 'type' => 'object', 'properties' => [ 'ApiProductId' => ['description' => 'The ID of the Alibaba Cloud service to which the API operation belongs.', 'type' => 'string', 'example' => 'rds', 'title' => ''], 'ApiName' => ['description' => 'The name of the API operation.', 'type' => 'string', 'example' => 'CreateServiceLinkedRole', 'title' => ''], 'ApiType' => ['description' => 'The type of the API operation. Valid values:'."\n" ."\n" .'- Open: an Alibaba Cloud API operation.'."\n" ."\n" .'- Inner: an internal API operation.', 'type' => 'string', 'example' => 'Open', 'title' => ''], 'Parameters' => ['description' => 'The parameters of the API operation. The value of a parameter is a dynamic value. The following dynamic value is supported: ${RegionId}, which indicates the region ID.', 'type' => 'object', 'example' => '{ "ServiceLinkedRole": "AliyunServiceRoleForRdsPgsqlOnEcs", "RegionId": "${RegionId}" }', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'DependentServiceNames' => [ 'description' => 'The services on which the service that you want to query depends.', 'type' => 'array', 'items' => ['description' => 'The name of the service on which the service that you want to query depends.', 'type' => 'string', 'example' => 'NAS', 'title' => ''], 'title' => '', 'example' => '', ], 'CommodityProvisions' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CommodityCode' => ['description' => 'The commodity code.', 'type' => 'string', 'example' => 'acs_postpaid_public_cn', 'title' => ''], 'Status' => ['description' => 'The activation status of the Alibaba Cloud service. Valid values:'."\n" ."\n" .'- Enabled: The service is activated.'."\n" ."\n" .'- Disabled: The service is not activated.', 'type' => 'string', 'example' => 'Disabled', 'title' => ''], 'EnableURL' => ['description' => 'The URL for activating the commodity.', 'type' => 'string', 'example' => 'https://common-buy.aliyun.com/?commodityCode=acs_postpaid_public_cn', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The details of the commodity. Some services, such as Container Compute Service (ACS), require you to activate multiple commodities.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetServiceProvisions', 'summary' => 'Queries the activation status of an Alibaba Cloud service and information about its service-linked roles.', 'description' => '### Usage notes'."\n" ."\n" .'This topic provides an example of how to query the activation status of Elastic High Performance Computing (EHPC) and information about the service-linked roles for EHPC in the China (Hangzhou) region.'."\n" ."\n" .'> Make sure that you have the permissions to call the [GetRole](~~28711~~) operation.', 'requestParamsDescription' => 'For information about common request parameters, refer to [Common parameters](~~131957~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetServiceProvisions'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GetServiceProvisions', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A9938C04-26AD-5EFA-B394-EA7866842DFF\\",\\n \\"ServiceProvisions\\": [\\n {\\n \\"ServiceName\\": \\"EHPC\\",\\n \\"Status\\": \\"Enabled\\",\\n \\"StatusReason\\": \\"No permission.\\",\\n \\"AutoEnableService\\": false,\\n \\"EnableURL\\": \\"https://common-buy.aliyun.com/?commodityCode=nas\\",\\n \\"RoleProvision\\": {\\n \\"AuthorizationURL\\": \\"https://ehpc.console.aliyun.com/\\",\\n \\"Roles\\": [\\n {\\n \\"RoleName\\": \\"AliyunServiceRoleForEHPC\\",\\n \\"Created\\": true,\\n \\"Function\\": \\"Default\\",\\n \\"ApiForCreation\\": {\\n \\"ApiProductId\\": \\"rds\\",\\n \\"ApiName\\": \\"CreateServiceLinkedRole\\",\\n \\"ApiType\\": \\"Open\\",\\n \\"Parameters\\": {\\n \\"ServiceLinkedRole\\": \\"AliyunServiceRoleForRdsPgsqlOnEcs\\",\\n \\"RegionId\\": \\"${RegionId}\\"\\n }\\n }\\n }\\n ]\\n },\\n \\"DependentServiceNames\\": [\\n \\"NAS\\"\\n ],\\n \\"CommodityProvisions\\": [\\n {\\n \\"CommodityCode\\": \\"acs_postpaid_public_cn\\",\\n \\"Status\\": \\"Disabled\\",\\n \\"EnableURL\\": \\"https://common-buy.aliyun.com/?commodityCode=acs_postpaid_public_cn\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', ], 'GetStack' => [ 'summary' => 'Queries stack information.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'c754d2a4-28f1-46df-b557-9586173a****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. The token is generated by the client and must be globally unique. '."\n" .'The token can be up to 64 characters in length. '."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'OutputOption', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return the Outputs parameter (the list of stack outputs). Valid values: '."\n" ."\n" .'- Enabled (default): Returns the Outputs parameter. '."\n" ."\n" .'- Disabled: Does not return the Outputs parameter. '."\n" .'> Computing Outputs is time-consuming. If you do not need the Outputs information, set OutputOption to Disabled to improve the response speed of the API.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Disabled', 'title' => ''], ], [ 'name' => 'ShowResourceProgress', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return the ResourceProgress parameter (resource processing progress). Valid values: '."\n" ."\n" .'- Disabled (default): Does not return the ResourceProgress parameter.'."\n" ."\n" .'- PercentageOnly: Returns the StackOperationProgress and StackActionProgress parameters in ResourceProgress.'."\n" ."\n" .'> Both ROS stacks and Terraform stacks are supported. Stack creation (including continued creation), update, deletion, resource import, and corresponding rollback operations are supported.'."\n" ."\n" .'- EnabledIfCreateStack (not recommended): Returns the *Count and InProgressResourceDetails parameters in ResourceProgress only during stack creation. '."\n" .'> During stack creation, the stack status is CREATE_IN_PROGRESS, CREATE_COMPLETE, CREATE_FAILED, CREATE_ROLLBACK_IN_PROGRESS, CREATE_ROLLBACK_COMPLETE, or CREATE_ROLLBACK_FAILED.', 'type' => 'string', 'required' => false, 'example' => 'Disabled', 'title' => ''], ], [ 'name' => 'LogOption', 'in' => 'query', 'schema' => ['description' => 'The log option. Valid values:'."\n" .'- None: Does not return logs.'."\n" .'- Stack (default): Returns stack-related logs.'."\n" .'- Resource: Returns resource-related logs.'."\n" .'- All: Returns all logs.', 'type' => 'string', 'required' => false, 'example' => 'Stack', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The stack status. Valid values: '."\n" .'- CREATE\\_IN_PROGRESS: The stack is being created.'."\n" .'- CREATE_FAILED: The stack failed to be created.'."\n" .'- CREATE_COMPLETE: The stack is created.'."\n" .'- UPDATE\\_IN_PROGRESS: The stack is being updated.'."\n" .'- UPDATE_FAILED: The stack failed to be updated.'."\n" .'- UPDATE_COMPLETE: The stack is updated.'."\n" .'- DELETE\\_IN_PROGRESS: The stack is being deleted.'."\n" .'- DELETE_FAILED: The stack failed to be deleted.'."\n" .'- DELETE_COMPLETE: The stack is deleted.'."\n" .'- CREATE\\_ROLLBACK\\_IN_PROGRESS: The stack creation is being rolled back.'."\n" .'- CREATE\\_ROLLBACK_FAILED: The stack creation failed to be rolled back.'."\n" .'- CREATE\\_ROLLBACK_COMPLETE: The stack creation is rolled back.'."\n" .'- ROLLBACK\\_IN_PROGRESS: The stack is being rolled back.'."\n" .'- ROLLBACK_FAILED: The stack failed to be rolled back.'."\n" .'- ROLLBACK_COMPLETE: The stack is rolled back.'."\n" .'- CHECK\\_IN_PROGRESS: The stack is being validated.'."\n" .'- CHECK_FAILED: The stack failed to be validated.'."\n" .'- CHECK_COMPLETE: The stack is validated.'."\n" .'- REVIEW\\_IN_PROGRESS: The stack is being reviewed.'."\n" .'- IMPORT\\_CREATE\\_IN_PROGRESS: The stack is being created through resource import.'."\n" .'- IMPORT\\_CREATE_FAILED: The stack failed to be created through resource import.'."\n" .'- IMPORT\\_CREATE_COMPLETE: The stack is created through resource import.'."\n" .'- IMPORT\\_CREATE\\_ROLLBACK\\_IN_PROGRESS: The stack creation through resource import is being rolled back.'."\n" .'- IMPORT\\_CREATE\\_ROLLBACK_FAILED: The stack creation through resource import failed to be rolled back.'."\n" .'- IMPORT\\_CREATE\\_ROLLBACK_COMPLETE: The stack creation through resource import is rolled back.'."\n" .'- IMPORT\\_UPDATE\\_IN_PROGRESS: The stack is being updated through resource import.'."\n" .'- IMPORT\\_UPDATE_FAILED: The stack failed to be updated through resource import.'."\n" .'- IMPORT\\_UPDATE_COMPLETE: The stack is updated through resource import.'."\n" .'- IMPORT\\_UPDATE\\_ROLLBACK\\_IN_PROGRESS: The stack update through resource import is being rolled back.'."\n" .'- IMPORT\\_UPDATE\\_ROLLBACK_FAILED: The stack update through resource import failed to be rolled back.'."\n" .'- IMPORT\\_UPDATE\\_ROLLBACK_COMPLETE: The stack update through resource import is rolled back.', 'type' => 'string', 'example' => 'CREATE_COMPLETE', 'title' => ''], 'Description' => ['description' => 'The description of the stack.', 'type' => 'string', 'example' => 'Create a VPC.', 'title' => ''], 'Parameters' => [ 'description' => 'The stack parameters.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The parameter name.', 'type' => 'string', 'example' => 'ALIYUN::Region', 'title' => ''], 'ParameterValue' => ['description' => 'The parameter value.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the stack is in its current state.', 'type' => 'string', 'example' => 'Stack CREATE completed successfully', 'title' => ''], 'ParentStackId' => ['description' => 'The parent stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf692****', 'title' => ''], 'CreateTime' => ['description' => 'The time when the stack was created. The time is displayed in UTC+0 and follows the ISO 8601 standard without the trailing Z. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2020-09-16T08:21:40', 'title' => ''], 'DeletionProtection' => ['description' => 'Indicates whether deletion protection is enabled for the stack. Valid values:'."\n" .'- Enabled: Deletion protection is enabled.'."\n" .'- Disabled: Deletion protection is disabled. In this case, you can release the stack by using the console or by calling the DeleteStack operation.'."\n" ."\n" .'> The deletion protection mechanism of a nested stack is the same as that of the root stack.', 'type' => 'string', 'example' => 'Disabled', 'title' => ''], 'RootStackId' => ['description' => 'The root stack ID. This parameter is returned only when the stack is a nested stack.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf692****', 'title' => ''], 'TemplateDescription' => ['description' => 'The template description.', 'type' => 'string', 'example' => 'Create a VPC.', 'title' => ''], 'StackType' => ['description' => 'The stack type. Valid values:'."\n" .'- ROS: The stack uses an ROS template.'."\n" .'- Terraform: The stack uses a Terraform template.', 'type' => 'string', 'example' => 'ROS', 'title' => ''], 'RamRoleName' => ['description' => 'The RAM role name. Resource Orchestration Service (ROS) assumes this role to create the stack and calls API operations on behalf of the user by using the credentials of the role. '."\n" .'ROS always uses this role for all operations that are performed on the stack. As long as the user has the permission to perform operations on the stack, ROS uses this role even if the user does not have the permission to use the role. This ensures that the role grants the least privilege. '."\n" .'If no value is specified, ROS uses the role that was previously associated with the stack. If no role is available, ROS uses a temporary credential generated from the user credentials. '."\n" .'The RAM role name can be up to 64 bytes in length.', 'type' => 'string', 'example' => 'test-role', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the stack was last updated. The time is displayed in UTC+0 and follows the ISO 8601 standard without the trailing Z. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2020-09-17T08:21:40', 'title' => ''], 'Outputs' => [ 'description' => 'The list of stack outputs.', 'type' => 'array', 'items' => ['description' => 'The list of stack outputs. '."\n" ."\n" .'> This parameter is returned only when OutputOption is set to Enabled.', 'type' => 'object', 'example' => '[{"Description": "VPC ID","OutputKey": "VpcId","OutputValue": "vpc-bp1m6fww66xbntjyc****"}]', 'title' => ''], 'title' => '', 'example' => '', ], 'DriftDetectionTime' => ['description' => 'The time when the most recent successful drift detection was performed on the stack.', 'type' => 'string', 'example' => '2020-09-16T09:21:40', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the stack. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'StackDriftStatus' => ['description' => 'The drift status of the stack in the most recent successful drift detection. Valid values:'."\n" .'- DRIFTED: The stack has drifted.'."\n" .'- NOT_CHECKED: No successful drift detection has been performed on the stack.'."\n" .'- IN_SYNC: The stack is in sync.', 'type' => 'string', 'example' => 'IN_SYNC', 'title' => ''], 'NotificationURLs' => [ 'description' => 'The callback URLs for receiving stack events.', 'type' => 'array', 'items' => ['description' => 'The callback URLs for receiving stack events.', 'type' => 'string', 'example' => '["http://127.XX.XX.1:8080/x", "http://127.0.XX.XX:8080/y"]', 'title' => ''], 'title' => '', 'example' => '', ], 'DisableRollback' => ['description' => 'Indicates whether rollback is disabled when the stack fails to be created. Valid values:'."\n" ."\n" .'- true: Rollback is disabled. No rollback is performed when the stack fails to be created.'."\n" .'- false (default): Rollback is enabled. Rollback is performed when the stack fails to be created.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'StackName' => ['description' => 'The stack name. '."\n" .'The name can be up to 255 characters in length and must start with a digit or letter. It can contain digits, letters, hyphens (-), and underscores (_).', 'type' => 'string', 'example' => 'MyStack', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack.', 'type' => 'string', 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TimeoutInMinutes' => ['description' => 'The timeout period for creating the stack. Unit: minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => 'c754d2a4-28f1-46df-b557-9586173a****', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], 'ResourceProgress' => [ 'description' => 'The resource processing progress.', 'type' => 'object', 'properties' => [ 'TotalResourceCount' => ['description' => 'The total number of resources.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to EnabledIfCreateStack.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'SuccessResourceCount' => ['description' => 'The number of resources that are successfully processed.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to EnabledIfCreateStack.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'FailedResourceCount' => ['description' => 'The number of resources that failed to be processed.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to EnabledIfCreateStack.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InProgressResourceCount' => ['description' => 'The number of resources that are being processed.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to EnabledIfCreateStack.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PendingResourceCount' => ['description' => 'The number of resources that are pending processing.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to EnabledIfCreateStack.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InProgressResourceDetails' => [ 'description' => 'The list of progress details for resources that are being processed.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to EnabledIfCreateStack.', 'type' => 'array', 'items' => [ 'description' => 'The progress details of a resource that is being processed.', 'type' => 'object', 'properties' => [ 'ResourceName' => ['description' => 'The resource name.', 'type' => 'string', 'example' => 'WaitCondition', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ROS::WaitCondition', 'title' => ''], 'ProgressValue' => ['description' => 'The current progress value of the resource.', 'type' => 'number', 'format' => 'float', 'example' => '5', 'title' => ''], 'ProgressTargetValue' => ['description' => 'The target progress value of the resource.', 'type' => 'number', 'format' => 'float', 'example' => '10', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'StackOperationProgress' => ['description' => 'The stack operation progress percentage. Value range: 0 to 100.'."\n" ."\n" .'Example: During stack creation, the value starts from 0 and increases. If the creation succeeds, the value reaches 100. If the creation fails and rollback begins, the value decreases. When the rollback succeeds, the value reaches 0. This parameter indicates the overall progress of the creation operation, regardless of whether the stack status is creating or rolling back.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to PercentageOnly.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], 'StackActionProgress' => ['description' => 'The stack action progress percentage. Value range: 0 to 100.'."\n" ."\n" .'Example: During stack creation, the value starts from 0 and increases. If the creation succeeds, the value reaches 100. If the creation fails and rollback begins, the value starts from another value (100 minus the progress value when the resource creation failed) and increases. When the rollback succeeds, the value reaches 100. During stack creation, this parameter indicates the progress of the creation action. During stack rollback, this parameter indicates the progress of the rollback action.'."\n" ."\n" .'> This parameter is returned only when ShowResourceProgress is set to PercentageOnly.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Log' => [ 'description' => 'The stack-related output logs.', 'type' => 'object', 'properties' => [ 'TerraformLogs' => [ 'description' => 'The Terraform output logs. This parameter is returned only for Terraform stacks.'."\n" .'This parameter is returned when LogOption is not specified, or when LogOption is set to Stack or All.'."\n" ."\n" .'> This parameter is not returned for stacks that are running. This parameter indicates the logs of the most recent operation (creation, continued creation, update, or deletion) on the stack.', 'type' => 'array', 'items' => [ 'description' => 'test', 'type' => 'object', 'properties' => [ 'Command' => ['description' => 'The name of the Terraform command that is run. Valid values:'."\n" ."\n" .'- apply'."\n" ."\n" .'- plan'."\n" ."\n" .'- destroy'."\n" ."\n" .'- version'."\n" ."\n" .'For more information about the commands, see [Command](https://www.terraform.io/cli/commands).', 'type' => 'string', 'example' => 'apply', 'title' => ''], 'Stream' => ['description' => 'The output stream. Valid values:'."\n" ."\n" .'- stdout: standard output.'."\n" ."\n" .'- stderr: standard error.', 'type' => 'string', 'example' => 'stdout', 'title' => ''], 'Content' => ['description' => 'The content that is output by the current command in the current output stream.', 'type' => 'string', 'example' => 'Apply complete! Resources: 42 added, 0 changed, 0 destroyed.', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ResourceLogs' => [ 'description' => 'The resource output logs. This parameter is returned when LogOption is set to Resource or All.'."\n" ."\n" .'> Only certain resource types return resource logs, such as `ALIYUN::ROS::ResourceCleaner`.', 'type' => 'array', 'items' => [ 'description' => 'test', 'type' => 'object', 'properties' => [ 'ResourceName' => ['description' => 'The resource name defined in the template.', 'type' => 'string', 'example' => 'MyResourceCleaner', 'title' => ''], 'Logs' => [ 'description' => 'All logs associated with the resource.', 'type' => 'array', 'items' => [ 'description' => 'test', 'type' => 'object', 'properties' => [ 'Keys' => [ 'description' => 'The list of keywords for a log entry associated with the resource.', 'type' => 'array', 'items' => ['description' => 'The keyword.', 'type' => 'string', 'example' => 'ResourceDetails', 'title' => ''], 'title' => '', 'example' => '', ], 'Content' => ['description' => 'The content of a log entry associated with the resource.', 'type' => 'string', 'example' => '[]', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'TemplateId' => ['description' => 'The template ID. This parameter is returned only when the template used by the stack is a private template or a shared template.'."\n" ."\n" .'If the template is a shared template, the returned value is the same as the TemplateARN of the template.', 'type' => 'string', 'example' => 'a52f81be-496f-4e1c-a286-8852ab54****', 'title' => ''], 'TemplateVersion' => ['description' => 'The template version. This parameter is returned only when the template used by the stack is a private template or a shared template.'."\n" ."\n" .'If the template is a shared template, this parameter is returned only when VersionOption is set to AllVersions during sharing.'."\n" ."\n" .'Valid values: v1 to v100.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'TemplateScratchId' => ['description' => 'The resource scenario ID. This parameter is returned only when the template used by the stack is generated from a resource scenario.', 'type' => 'string', 'example' => 'ts-7f7a704cf71c49a6****', 'title' => ''], 'TemplateURL' => ['description' => 'The URL of the file that contains the template body. This parameter is returned only when the template used by the stack is from a URL, including a web server (HTTP or HTTPS) or an Alibaba Cloud OSS bucket.', 'type' => 'string', 'example' => 'oss://ros/template/demo', 'title' => ''], 'Interface' => ['description' => 'The interface description.', 'type' => 'string', 'example' => '{}', 'title' => ''], 'ServiceManaged' => ['description' => 'Indicates whether the stack is a managed stack. Valid values: '."\n" ."\n" .'- true: The stack is a managed stack. '."\n" ."\n" .'- false: The stack is not a managed stack.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ServiceName' => ['description' => 'The service name to which the managed stack belongs.', 'type' => 'string', 'example' => 'ACVS', 'title' => ''], 'OperationInfo' => [ 'description' => 'The supplementary information that is returned when an error occurs during a stack operation.'."\n" ."\n" .'> This property is returned only in specific cases and contains at least one sub-property. For example, an error occurs when another cloud service API is called.', 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'DependencyViolation', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'There is still instance(s) in the specified security group.', 'title' => ''], 'RequestId' => ['description' => 'The request ID of the API call to another cloud service.', 'type' => 'string', 'example' => '071D6166-3F6B-5C7B-A1F0-0113FBB643A8', 'title' => ''], 'Action' => ['description' => 'The name of the API operation called on another cloud service.', 'type' => 'string', 'example' => 'DeleteSecurityGroup', 'title' => ''], 'ResourceType' => ['description' => 'The resource type on which the operation error occurred.', 'type' => 'string', 'example' => 'ALIYUN::ECS::SecurityGroup', 'title' => ''], 'LogicalResourceId' => ['description' => 'The logical ID of the resource on which the operation error occurred.', 'type' => 'string', 'example' => 'EcsSecurityGroup', 'title' => ''], ], 'title' => '', 'example' => '', ], 'OrderIds' => [ 'description' => 'The list of order IDs. This parameter is returned only when manual payment for subscription orders is configured during stack creation.', 'type' => 'array', 'items' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '2161413696****', 'title' => ''], 'title' => '', 'example' => '', ], 'CheckedStackResourceCount' => ['description' => 'The number of resources on which drift detection has been performed.'."\n" .'> This parameter is returned only when the most recent drift detection on the stack was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'NotCheckedStackResourceCount' => ['description' => 'The number of resources on which drift detection has not been performed.'."\n" .'> This parameter is returned only when the most recent drift detection on the stack was successful.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RollbackFailedRootReason' => ['description' => 'When the stack status is rollback failed, this field displays the root cause of the failure in the previous phase that triggered the rollback.', 'type' => 'string', 'example' => 'Resource UPDATE failed: Exception: resources.FailToCreate: FailToCreate: reason', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"CREATE_COMPLETE\\",\\n \\"Description\\": \\"Create a VPC.\\",\\n \\"Parameters\\": [\\n {\\n \\"ParameterKey\\": \\"ALIYUN::Region\\",\\n \\"ParameterValue\\": \\"cn-hangzhou\\"\\n }\\n ],\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"StatusReason\\": \\"Stack CREATE completed successfully\\",\\n \\"ParentStackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf692****\\",\\n \\"CreateTime\\": \\"2020-09-16T08:21:40\\",\\n \\"DeletionProtection\\": \\"Disabled\\",\\n \\"RootStackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf692****\\",\\n \\"TemplateDescription\\": \\"Create a VPC.\\",\\n \\"StackType\\": \\"ROS\\",\\n \\"RamRoleName\\": \\"test-role\\",\\n \\"UpdateTime\\": \\"2020-09-17T08:21:40\\",\\n \\"Outputs\\": [\\n [\\n {\\n \\"Description\\": \\"VPC ID\\",\\n \\"OutputKey\\": \\"VpcId\\",\\n \\"OutputValue\\": \\"vpc-bp1m6fww66xbntjyc****\\"\\n }\\n ]\\n ],\\n \\"DriftDetectionTime\\": \\"2020-09-16T09:21:40\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"StackDriftStatus\\": \\"IN_SYNC\\",\\n \\"NotificationURLs\\": [\\n \\"[\\\\\\"http://127.XX.XX.1:8080/x\\\\\\", \\\\\\"http://127.0.XX.XX:8080/y\\\\\\"]\\"\\n ],\\n \\"DisableRollback\\": false,\\n \\"StackName\\": \\"MyStack\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"usage\\",\\n \\"Value\\": \\"test\\"\\n }\\n ],\\n \\"TimeoutInMinutes\\": 10,\\n \\"StackId\\": \\"c754d2a4-28f1-46df-b557-9586173a****\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxazb4ph6aiy****\\",\\n \\"ResourceProgress\\": {\\n \\"TotalResourceCount\\": 2,\\n \\"SuccessResourceCount\\": 1,\\n \\"FailedResourceCount\\": 0,\\n \\"InProgressResourceCount\\": 1,\\n \\"PendingResourceCount\\": 0,\\n \\"InProgressResourceDetails\\": [\\n {\\n \\"ResourceName\\": \\"WaitCondition\\",\\n \\"ResourceType\\": \\"ALIYUN::ROS::WaitCondition\\",\\n \\"ProgressValue\\": 5,\\n \\"ProgressTargetValue\\": 10\\n }\\n ],\\n \\"StackOperationProgress\\": 100,\\n \\"StackActionProgress\\": 100\\n },\\n \\"Log\\": {\\n \\"TerraformLogs\\": [\\n {\\n \\"Command\\": \\"apply\\",\\n \\"Stream\\": \\"stdout\\",\\n \\"Content\\": \\"Apply complete! Resources: 42 added, 0 changed, 0 destroyed.\\"\\n }\\n ],\\n \\"ResourceLogs\\": [\\n {\\n \\"ResourceName\\": \\"MyResourceCleaner\\",\\n \\"Logs\\": [\\n {\\n \\"Keys\\": [\\n \\"ResourceDetails\\"\\n ],\\n \\"Content\\": \\"[]\\"\\n }\\n ]\\n }\\n ]\\n },\\n \\"TemplateId\\": \\"a52f81be-496f-4e1c-a286-8852ab54****\\",\\n \\"TemplateVersion\\": \\"v1\\",\\n \\"TemplateScratchId\\": \\"ts-7f7a704cf71c49a6****\\",\\n \\"TemplateURL\\": \\"oss://ros/template/demo\\",\\n \\"Interface\\": \\"{}\\",\\n \\"ServiceManaged\\": false,\\n \\"ServiceName\\": \\"ACVS\\",\\n \\"OperationInfo\\": {\\n \\"Code\\": \\"DependencyViolation\\",\\n \\"Message\\": \\"There is still instance(s) in the specified security group.\\",\\n \\"RequestId\\": \\"071D6166-3F6B-5C7B-A1F0-0113FBB643A8\\",\\n \\"Action\\": \\"DeleteSecurityGroup\\",\\n \\"ResourceType\\": \\"ALIYUN::ECS::SecurityGroup\\",\\n \\"LogicalResourceId\\": \\"EcsSecurityGroup\\"\\n },\\n \\"OrderIds\\": [\\n \\"2161413696****\\"\\n ],\\n \\"CheckedStackResourceCount\\": 1,\\n \\"NotCheckedStackResourceCount\\": 1,\\n \\"RollbackFailedRootReason\\": \\"Resource UPDATE failed: Exception: resources.FailToCreate: FailToCreate: reason\\"\\n}","type":"json"}]', 'title' => 'Query stack information', 'description' => 'This topic provides an example of how to query the information of a stack whose ID is `c754d2a4-28f1-46df-b557-9586173a****` in the China (Hangzhou) region.', 'requestParamsDescription' => ' For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | Error code | Error message | Description |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |The stack does not exist. name indicates the stack name or ID. |.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStack'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], ], 'GetStackDriftDetectionStatus' => [ 'path' => '/V2/GetStackDriftDetectionStatus', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosGGHNC3'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack to be detected for drift.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DriftDetectionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the drift detection operation.'."\n" ."\n" .'You can call the [ListStackResourceDrifts](~~155098~~) operation to obtain the ID of the drift detection operation.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'a7044f0d-6f2e-4128-a307-4524ef88****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the stack drift detection operation was initiated.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'DriftDetectionStatusReason' => ['description' => 'The reason why the stack drift detection operation has its current status.', 'type' => 'string', 'example' => 'Detect stack drift successfully', 'title' => ''], 'DriftedStackResourceCount' => ['description' => 'The total number of stack resources that have drifted.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'StackDriftStatus' => ['description' => 'The drift status of the stack. Valid values:'."\n" ."\n" .'- DRIFTED: The actual configuration of the stack differs, or has drifted, from its expected template configuration. A stack is considered to have drifted if one or more of its resources have drifted.'."\n" ."\n" .'- NOT\\_CHECKED: Resource Orchestration Service (ROS) has not checked whether the actual configuration of the resource differs from its expected template configuration.'."\n" ."\n" .'- IN\\_SYNC: The current configuration of each supported resource matches its expected template configuration. A stack with no resources that support drift detection also has a status of IN\\_SYNC.', 'type' => 'string', 'example' => 'DRIFTED', 'title' => ''], 'DriftDetectionStatus' => ['description' => 'The drift detection status. Valid values:'."\n" ."\n" .'- DETECTION\\_COMPLETE: The drift detection operation has been completed for all resources that support drift detection in the stack.'."\n" ."\n" .'- DETECTION\\_FAILED: The stack drift detection operation has failed for at least one resource in the stack.'."\n" ."\n" .'- DETECTION\\_IN\\_PROGRESS: The stack drift detection operation is in progress.', 'type' => 'string', 'example' => 'DETECTION_COMPLETE', 'title' => ''], 'StackId' => ['description' => 'The ID of the stack.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'DriftDetectionId' => ['description' => 'The ID of the drift detection operation.', 'type' => 'string', 'example' => 'a7044f0d-6f2e-4128-a307-4524ef88****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'GetStackDriftDetectionStatus', 'summary' => 'Queries the drift detection status of a stack.', 'description' => 'In this topic, the status of a drift detection operation whose ID is `a7044f0d-6f2e-4128-a307-4524ef88****` is queried. The operation is performed in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => '| HTTP status code | Error code | Error message | Description |'."\n" .'| ---------------- | --------------------------- | ---------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| 404 | StackDriftDetectionNotFound | The stack drift detection ({ID}) could not be found. | The error message returned because the drift detection does not exist. ID indicates the ID of the drift detection operation. |', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackDriftDetectionNotFound |The stack drift detection ({ID}) could not be found. |偏差检测不存在。ID为偏差检测ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackDriftDetectionStatus'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackDriftDetectionStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"DriftDetectionStatusReason\\": \\"Detect stack drift successfully\\",\\n \\"DriftedStackResourceCount\\": 1,\\n \\"StackDriftStatus\\": \\"DRIFTED\\",\\n \\"DriftDetectionStatus\\": \\"DETECTION_COMPLETE\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\",\\n \\"DriftDetectionId\\": \\"a7044f0d-6f2e-4128-a307-4524ef88****\\"\\n}","type":"json"}]', ], 'GetStackGroup' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12690', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region. The name can be up to 255 characters in length, and must start with a digit or a letter. It can contain digits, letters, hyphens (-), and underscores (\\_).'."\n" ."\n" .'> You must specify only one of the StackGroupName and StackGroupId parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'StackGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack group.'."\n" ."\n" .'> You must specify only one of the StackGroupName and StackGroupId parameters.', 'type' => 'string', 'required' => false, 'example' => 'fd0ddef9-9540-4b42-a464-94f77835****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'StackGroup' => [ 'description' => 'The details of the stack group.', 'type' => 'object', 'properties' => [ 'StackGroupId' => ['description' => 'The ID of the stack group.', 'type' => 'string', 'example' => 'fd0ddef9-9540-4b42-a464-94f77835****', 'title' => ''], 'Status' => ['description' => 'The status of the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- ACTIVE: The stack group is active.'."\n" ."\n" .'- DELETED: The stack group is deleted.', 'type' => 'string', 'example' => 'ACTIVE', 'title' => ''], 'AdministrationRoleName' => ['description' => 'The name of the RAM administrator role that is assumed by ROS. This parameter is specified when you create a stack group in self-managed permission mode. If you do not specify this parameter, the default value AliyunROSStackGroupAdministrationRole is returned.', 'type' => 'string', 'example' => 'AliyunROSStackGroupAdministrationRole', 'title' => ''], 'Parameters' => [ 'description' => 'The list of the parameters of the stack group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter.', 'type' => 'string', 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter.', 'type' => 'string', 'example' => '12', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Description' => ['description' => 'The description of the stack group.', 'type' => 'string', 'example' => 'StackGroup Description', 'title' => ''], 'StackGroupName' => ['description' => 'The name of the stack group.', 'type' => 'string', 'example' => 'MyStackGroup', 'title' => ''], 'ExecutionRoleName' => ['description' => 'The name of the RAM execution role that is assumed by the administrator role AliyunROSStackGroupAdministrationRole. This parameter is specified when you create a stack group in self-managed permission mode. If you do not specify this parameter, the default value AliyunROSStackGroupExecutionRole is returned.', 'type' => 'string', 'example' => 'AliyunROSStackGroupExecutionRole', 'title' => ''], 'TemplateBody' => ['description' => 'The structure of the template body.'."\n" ."\n" .'> We recommend that you do not use this parameter. Use TemplateContent instead.', 'type' => 'string', 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], 'StackGroupDriftDetectionDetail' => [ 'description' => 'The details of the last successful drift detection operation on the stack group.', 'type' => 'object', 'properties' => [ 'DriftDetectionTime' => ['description' => 'The time when the drift detection operation was performed on the stack group.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'TotalStackInstancesCount' => ['description' => 'The number of stack instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'FailedStackInstancesCount' => ['description' => 'The number of stack instances for which the drift detection operation failed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'DriftDetectionStatus' => ['description' => 'The drift detection status of the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- COMPLETED: The drift detection operation is completed for the stack group. All stack instances have been successfully drift-detected.'."\n" ."\n" .'- FAILED: The drift detection operation is completed for the stack group. The number of stack instances that failed the drift detection exceeds the specified threshold.'."\n" ."\n" .'- PARTIAL\\_SUCCESS: The drift detection operation is completed for the stack group. The drift detection operation failed for some stack instances, but the number of failures did not exceed the threshold.'."\n" ."\n" .'- IN\\_PROGRESS: The drift detection operation is in progress for the stack group.'."\n" ."\n" .'- STOPPED: The drift detection operation on the stack group was canceled.', 'type' => 'string', 'example' => 'COMPLETED', 'title' => ''], 'StackGroupDriftStatus' => ['description' => 'The drift status of the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- DRIFTED: At least one stack instance has drifted.'."\n" ."\n" .'- NOT\\_CHECKED: No successful drift detection has been performed on the stack group.'."\n" ."\n" .'- IN\\_SYNC: All stack instances are in the IN\\_SYNC state.', 'type' => 'string', 'example' => 'DRIFTED', 'title' => ''], 'InProgressStackInstancesCount' => ['description' => 'The number of stack instances on which a drift detection operation is in progress.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InSyncStackInstancesCount' => ['description' => 'The number of stack instances that are in the IN\\_SYNC state.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'CancelledStackInstancesCount' => ['description' => 'The number of stack instances for which the drift detection operation was canceled.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'DriftedStackInstancesCount' => ['description' => 'The number of stack instances that are in the DRIFTED state.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ResourceGroupId' => ['description' => 'The ID of the resource group. This value is determined by the resource group ID that you specify when you create the stack group.', 'type' => 'string', 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], 'PermissionModel' => ['description' => 'The permission model.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- SELF\\_MANAGED: self-managed permissions.'."\n" ."\n" .'- SERVICE\\_MANAGED: service-managed permissions.'."\n" ."\n" .'> For more information about the permission models of stack groups, refer to [Overview](~~154578~~).', 'type' => 'string', 'example' => 'SELF_MANAGED', 'title' => ''], 'AutoDeployment' => [ 'description' => 'The information about automatic deployment settings.'."\n" ."\n" .'> This parameter is returned only if PermissionModel is set to SERVICE\\_MANAGED.', 'type' => 'object', 'properties' => [ 'Enabled' => ['description' => 'Indicates whether automatic deployment is enabled or disabled.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: Automatic deployment is enabled. If you add a new member account to the folder, the stack group automatically deploys stack instances in the specified region of the new account. If you remove a member account from the folder, the stack group automatically deletes stack instances from the specified region of the account.'."\n" ."\n" .'- false: Automatic deployment is disabled. After automatic deployment is disabled, the stack instances remain unchanged when the member accounts in the folder change.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'RetainStacksOnAccountRemoval' => ['description' => 'Indicates whether to retain the stacks in the member account when the member account is removed from the folder.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: retains the stacks.'."\n" ."\n" .'- false: deletes the stacks.'."\n" ."\n" .'> This parameter is returned only if Enabled is set to true.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'RdFolderIds' => [ 'description' => 'The IDs of the folders in the resource directory. Stack instances are deployed in all the accounts in the folders.'."\n" ."\n" .'> This parameter is returned only if PermissionModel is set to SERVICE\\_MANAGED.', 'type' => 'array', 'items' => ['description' => 'The IDs of the folders in the resource directory. Stack instances are deployed in all the accounts in the folders.'."\n" ."\n" .'> This parameter is returned only if PermissionModel is set to SERVICE\\_MANAGED.', 'type' => 'string', 'example' => '["fd-4PvlVLOL8v"]', 'title' => ''], 'title' => '', 'example' => '', ], 'TemplateContent' => ['description' => 'The structure of the template body. The structure is in the JSON format. For more information, refer to [Template syntax](~~28857~~).', 'type' => 'string', 'example' => '{'."\n" .' "ROSTemplateFormatVersion": "2015-09-01"'."\n" .'}', 'title' => ''], 'CreateTime' => ['description' => 'The time when the stack group was created.', 'type' => 'string', 'example' => '2024-06-14T02:13:50', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the stack group was updated.', 'type' => 'string', 'example' => '2024-06-15T02:01:00', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetStackGroup', 'summary' => 'Queries the details of a stack group by its name in an Alibaba Cloud region.', 'description' => 'This topic provides an example of how to query a stack group named `MyStackGroup`. The stack group is in the China (Hangzhou) region and uses the self-managed permission mode.', 'requestParamsDescription' => 'For more information about common request parameters, refer to [Common parameters](~~131957~~).', 'responseParamsDescription' => 'The action to perform. Set the value to GetStackGroup.', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| StackGroupNotFound |The StackGroup ({name}) could not be found. | 404 |资源栈组不存在。name为资源栈组名称。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackGroup'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"StackGroup\\": {\\n \\"StackGroupId\\": \\"fd0ddef9-9540-4b42-a464-94f77835****\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"AdministrationRoleName\\": \\"AliyunROSStackGroupAdministrationRole\\",\\n \\"Parameters\\": [\\n {\\n \\"ParameterKey\\": \\"Amount\\",\\n \\"ParameterValue\\": \\"12\\"\\n }\\n ],\\n \\"Description\\": \\"StackGroup Description\\",\\n \\"StackGroupName\\": \\"MyStackGroup\\",\\n \\"ExecutionRoleName\\": \\"AliyunROSStackGroupExecutionRole\\",\\n \\"TemplateBody\\": \\"{\\\\\\"ROSTemplateFormatVersion\\\\\\": \\\\\\"2015-09-01\\\\\\"}\\",\\n \\"StackGroupDriftDetectionDetail\\": {\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"TotalStackInstancesCount\\": 2,\\n \\"FailedStackInstancesCount\\": 0,\\n \\"DriftDetectionStatus\\": \\"COMPLETED\\",\\n \\"StackGroupDriftStatus\\": \\"DRIFTED\\",\\n \\"InProgressStackInstancesCount\\": 0,\\n \\"InSyncStackInstancesCount\\": 1,\\n \\"CancelledStackInstancesCount\\": 0,\\n \\"DriftedStackInstancesCount\\": 1\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmxazb4ph6aiy****\\",\\n \\"PermissionModel\\": \\"SELF_MANAGED\\",\\n \\"AutoDeployment\\": {\\n \\"Enabled\\": true,\\n \\"RetainStacksOnAccountRemoval\\": true\\n },\\n \\"RdFolderIds\\": [\\n \\"[\\\\\\"fd-4PvlVLOL8v\\\\\\"]\\"\\n ],\\n \\"TemplateContent\\": \\"{\\\\n \\\\\\"ROSTemplateFormatVersion\\\\\\": \\\\\\"2015-09-01\\\\\\"\\\\n}\\",\\n \\"CreateTime\\": \\"2024-06-14T02:13:50\\",\\n \\"UpdateTime\\": \\"2024-06-15T02:01:00\\"\\n }\\n}","type":"json"}]', ], 'GetStackGroupOperation' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'OperationId', 'in' => 'query', 'schema' => ['description' => 'The operation ID. You can call the [ListStackGroupOperations](~~151342~~) operation to query the operation ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'StackGroupOperation' => [ 'description' => 'The information about the stack group operation.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The state of the operation.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- RUNNING'."\n" ."\n" .'- SUCCEEDED'."\n" ."\n" .'- FAILED'."\n" ."\n" .'- STOPPING'."\n" ."\n" .'- STOPPED', 'type' => 'string', 'example' => 'SUCCEEDED', 'title' => ''], 'StackGroupId' => ['description' => 'The ID of the stack group.', 'type' => 'string', 'example' => 'fd0ddef9-9540-4b42-a464-94f77835****', 'title' => ''], 'Action' => ['description' => 'The operation type.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- CREATE'."\n" ."\n" .'- UPDATE'."\n" ."\n" .'- DELETE'."\n" ."\n" .'- DETECT\\_DRIFT', 'type' => 'string', 'example' => 'DELETE', 'title' => ''], 'CreateTime' => ['description' => 'The time when the operation was initiated.', 'type' => 'string', 'example' => '2020-01-20T09:22:3', 'title' => ''], 'RetainStacks' => ['description' => 'Indicates whether stacks are retained when the associated stack instances are deleted. When you delete a stack instance, you can choose to delete or retain the stack with which the stack instance is associated.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: Stacks are retained when the associated stack instances are deleted.'."\n" ."\n" .'- false: Stacks are deleted when the associated stack instances are deleted. Proceed with caution.'."\n" ."\n" .'> This parameter is returned only if you delete stack instances.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'StackGroupName' => ['description' => 'The name of the stack group.', 'type' => 'string', 'example' => 'MyStackGroup', 'title' => ''], 'OperationId' => ['description' => 'The operation ID.', 'type' => 'string', 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], 'OperationDescription' => ['description' => 'The description of the operation.'."\n" ."\n" .'> This parameter is returned only if OperationDescription is specified when the [CreateStackInstances](~~151338~~) operation is called to create stack instances.', 'type' => 'string', 'example' => 'Create stack instance in hangzhou', 'title' => ''], 'StackGroupDriftDetectionDetail' => [ 'description' => 'The information about drift detection.'."\n" ."\n" .'> This parameter is returned only if drift detection is performed.', 'type' => 'object', 'properties' => [ 'DriftDetectionTime' => ['description' => 'The time when drift detection was performed.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'TotalStackInstancesCount' => ['description' => 'The number of stack instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'FailedStackInstancesCount' => ['description' => 'The number of stack instances that failed drift detection.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'DriftDetectionStatus' => ['description' => 'The drift detection state.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- COMPLETED: Drift detection is performed on the stack group and all stack instances passed the drift detection.'."\n" ."\n" .'- FAILED: Drift detection is performed on the stack group. The number of stack instances that failed the drift detection exceeds the specified threshold.'."\n" ."\n" .'- PARTIAL\\_SUCCESS: Drift detection is performed on the stack group. The number of stack instances that failed the drift detection does not exceed the specified threshold.'."\n" ."\n" .'- IN\\_PROGRESS: Drift detection is being performed on the stack group.'."\n" ."\n" .'- STOPPED: Drift detection is canceled for the stack group.', 'type' => 'string', 'example' => 'COMPLETED', 'title' => ''], 'StackGroupDriftStatus' => ['description' => 'The drift state of the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- DRIFTED: At least one stack instance in the stack group has drifted.'."\n" ."\n" .'- NOT\\_CHECKED: No successful drift detection is performed in the stack group.'."\n" ."\n" .'- IN\\_SYNC: All the stack instances in the stack group are being synchronized.', 'type' => 'string', 'example' => 'DRIFTED', 'title' => ''], 'InProgressStackInstancesCount' => ['description' => 'The number of stack instances on which drift detection was being performed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InSyncStackInstancesCount' => ['description' => 'The number of stack instances that were being synchronized.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'CancelledStackInstancesCount' => ['description' => 'The number of stack instances for which drift detection was canceled.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'DriftedStackInstancesCount' => ['description' => 'The number of stack instances that have drifted.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'OperationPreferences' => [ 'description' => 'The operation settings.', 'type' => 'object', 'properties' => [ 'MaxConcurrentCount' => ['description' => 'The maximum number of accounts within which stacks are deployed at the same time in each region.'."\n" ."\n" .'Valid values: 1 to 20.'."\n" ."\n" .'> Only one of MaxConcurrentCount and MaxConcurrentPercentage can be returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'FailureToleranceCount' => ['description' => 'The number of accounts within which stack operation failures are allowed to occur in each region. If the value of this parameter is exceeded in a region, Resource Orchestration Service (ROS) stops the operation in the region. If the operation is stopped in one region, the operation is no longer performed in other regions.'."\n" ."\n" .'Valid values: 0 to 20.'."\n" ."\n" .'> Only one of FailureToleranceCount and FailureTolerancePercentage can be returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaxConcurrentPercentage' => ['description' => 'The percentage of the maximum number of accounts within which stacks are deployed at the same time to the total number of accounts in each region.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'> Only one of MaxConcurrentCount and MaxConcurrentPercentage can be returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RegionIdsOrder' => [ 'description' => 'The regions in the order of operation execution.', 'type' => 'array', 'items' => ['description' => 'The region in the order of operation execution.', 'type' => 'string', 'example' => '["cn-hangzhou","cn-beijing"]', 'title' => ''], 'title' => '', 'example' => '', ], 'FailureTolerancePercentage' => ['description' => 'The percentage of the number of accounts within which stack operation failures are allowed to occur to the total number of accounts in each region. If the value of this parameter is exceeded in a region, ROS stops the operation in the region.'."\n" ."\n" .'Valid values: 0 to 100.'."\n" ."\n" .'> Only one of FailureToleranceCount and FailureTolerancePercentage can be returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'title' => '', 'example' => '', ], 'EndTime' => ['description' => 'The time when the operation ended.', 'type' => 'string', 'example' => '2020-01-20T09:22:4', 'title' => ''], 'ExecutionRoleName' => ['description' => 'The name of the RAM role that you specify for the execution account when you create the self-managed stack group. The administrator role AliyunROSStackGroupAdministrationRole assumes the execution role to perform operations. If this parameter is not specified, the default value AliyunROSStackGroupExecutionRole is returned.', 'type' => 'string', 'example' => 'AliyunROSStackGroupExecutionRole', 'title' => ''], 'AdministrationRoleName' => ['description' => 'The name of the RAM role that you specify for the administrator account when you create the self-managed stack group. ROS assumes the administrator role to perform operations. If this parameter is not specified, the default value AliyunROSStackGroupAdministrationRole is returned.', 'type' => 'string', 'example' => 'AliyunROSStackGroupAdministrationRole', 'title' => ''], 'DeploymentTargets' => [ 'description' => 'The destinations to deploy stack instances when the stack is granted service-managed permissions.', 'type' => 'object', 'properties' => [ 'RdFolderIds' => [ 'description' => 'The IDs of the folders in the resource directory.', 'type' => 'array', 'items' => ['description' => 'The ID of the folder in the resource directory.', 'type' => 'string', 'example' => '["fd-4PvlVLOL8v"]', 'title' => ''], 'title' => '', 'example' => '', ], 'AccountIds' => [ 'description' => 'The IDs of the members in the resource directory.'."\n" ."\n" .'> This parameter is returned only if AccountIds is specified when the [UpdateStackInstances](~~151716~~) operation is called to update stack instances.', 'type' => 'array', 'items' => ['description' => 'The ID of the member in the resource directory.'."\n" ."\n" .'> This parameter is returned only if AccountIds is specified when the [UpdateStackInstances](~~151716~~) opeation is called to update stack instances.', 'type' => 'string', 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetStackGroupOperation', 'summary' => 'Queries the information about a stack group operation in an Alibaba Cloud region.', 'description' => 'In this example, the information about the stack group operation whose ID is `6da106ca-1784-4a6f-a7e1-e723863d****` is queried. The stack group named `MyStackGroup` is granted self-managed permissions and deployed in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter | The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n" .'| StackGroupOperationNotFound | The StackGroupOperation ({OperationId}) could not be found. | 404 |资源栈组操作不存在。OperationId为操作ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackGroupOperation'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackGroupOperation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"StackGroupOperation\\": {\\n \\"Status\\": \\"SUCCEEDED\\",\\n \\"StackGroupId\\": \\"fd0ddef9-9540-4b42-a464-94f77835****\\",\\n \\"Action\\": \\"DELETE\\",\\n \\"CreateTime\\": \\"2020-01-20T09:22:3\\",\\n \\"RetainStacks\\": true,\\n \\"StackGroupName\\": \\"MyStackGroup\\",\\n \\"OperationId\\": \\"6da106ca-1784-4a6f-a7e1-e723863d****\\",\\n \\"OperationDescription\\": \\"Create stack instance in hangzhou\\",\\n \\"StackGroupDriftDetectionDetail\\": {\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"TotalStackInstancesCount\\": 2,\\n \\"FailedStackInstancesCount\\": 0,\\n \\"DriftDetectionStatus\\": \\"COMPLETED\\",\\n \\"StackGroupDriftStatus\\": \\"DRIFTED\\",\\n \\"InProgressStackInstancesCount\\": 0,\\n \\"InSyncStackInstancesCount\\": 1,\\n \\"CancelledStackInstancesCount\\": 0,\\n \\"DriftedStackInstancesCount\\": 1\\n },\\n \\"OperationPreferences\\": {\\n \\"MaxConcurrentCount\\": 1,\\n \\"FailureToleranceCount\\": 1,\\n \\"MaxConcurrentPercentage\\": 10,\\n \\"RegionIdsOrder\\": [\\n \\"[\\\\\\"cn-hangzhou\\\\\\",\\\\\\"cn-beijing\\\\\\"]\\"\\n ],\\n \\"FailureTolerancePercentage\\": 10\\n },\\n \\"EndTime\\": \\"2020-01-20T09:22:4\\",\\n \\"ExecutionRoleName\\": \\"AliyunROSStackGroupExecutionRole\\",\\n \\"AdministrationRoleName\\": \\"AliyunROSStackGroupAdministrationRole\\",\\n \\"DeploymentTargets\\": {\\n \\"RdFolderIds\\": [\\n \\"[\\\\\\"fd-4PvlVLOL8v\\\\\\"]\\"\\n ],\\n \\"AccountIds\\": [\\n \\"[\\\\\\"151266687691****\\\\\\",\\\\\\"141261387191****\\\\\\"]\\"\\n ]\\n }\\n }\\n}","type":"json"}]', ], 'GetStackInstance' => [ 'summary' => 'Queries the information about a stack instance that is associated with a stack group.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosTBD793'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region.
'."\n" .'The name can be up to 255 characters in length, and can contain digits, letters, hyphens (-), and underscores (\\_). It must start with a digit or letter.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'StackInstanceAccountId', 'in' => 'query', 'schema' => ['description' => 'The ID of the destination account to which the stack belongs.'."\n" ."\n" .'- If the stack group is granted self-managed permissions, the stack belongs to an Alibaba Cloud account.'."\n" ."\n" .'- If the stack group is granted service-managed permissions, the stack belongs to a member in a resource directory.'."\n" ."\n" .'> For more information about the destination account, see [Overview](~~154578~~).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '151266687691****', 'title' => ''], ], [ 'name' => 'StackInstanceRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'OutputOption', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return the Outputs parameter. The Outputs parameter specifies the outputs of the stack. Valid values:'."\n" ."\n" .'- Enabled: returns the Outputs parameter.'."\n" ."\n" .'- Disabled (default): does not return the Outputs parameter.'."\n" ."\n" .'> The Outputs parameter requires a long period of time to calculate. If you do not require the outputs of the stack, we recommend that you set OutputOption to Disabled to improve the response speed of the API operation.', 'type' => 'string', 'required' => false, 'example' => 'Disabled', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B8A6B693-82C8-419D-8796-DE99EC33CFF9', 'title' => ''], 'StackInstance' => [ 'description' => 'The information about the stack.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The state of the stack.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- CURRENT: The stack is up-to-date with the stack group.'."\n" ."\n" .'- OUTDATED: The stack is not up-to-date with the stack group. Stacks are in the OUTDATED state due to the following possible reasons:'."\n" ."\n" .' - When the CreateStackInstances operation is called to create stacks, the stacks fail to be created.'."\n" ."\n" .' - When the UpdateStackInstances or UpdateStackGroup operation is called to update stacks, the stacks fail to be updated, or only specific stacks are updated.'."\n" ."\n" .' - The creation or update operation is not complete.', 'type' => 'string', 'example' => 'CURRENT', 'title' => ''], 'StackGroupId' => ['description' => 'The ID of the stack group.', 'type' => 'string', 'example' => 'fd0ddef9-9540-4b42-a464-94f77835****', 'title' => ''], 'StackId' => ['description' => 'The stack ID.'."\n" ."\n" .'> This parameter is returned only if the stack is in the CURRENT state.', 'type' => 'string', 'example' => '35ad60e3-6a92-42d8-8812-f0700d45****', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the most recent successful drift detection was performed on the stack group.'."\n" ."\n" .'> This parameter is returned only if drift detection is performed on the stack group.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'StackDriftStatus' => ['description' => 'The state of the stack when the most recent successful drift detection was performed on the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- DRIFTED: The stack has drifted.'."\n" ."\n" .'- NOT\\_CHECKED: No successful drift detection is performed on the stack.'."\n" ."\n" .'- IN\\_SYNC: The stack is being synchronized.'."\n" ."\n" .'> This parameter is returned only if drift detection is performed on the stack group.', 'type' => 'string', 'example' => 'IN_SYNC', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the stack instance is in the OUTDATED state.'."\n" ."\n" .'> This parameter is returned only if the stack instance is in the OUTDATED state.', 'type' => 'string', 'example' => 'User initiated stop', 'title' => ''], 'ParameterOverrides' => [ 'description' => 'The parameters that are used to override specific parameters.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter that is used to override a specific parameter.', 'type' => 'string', 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter that is used to override a specific parameter.', 'type' => 'string', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'StackGroupName' => ['description' => 'The name of the stack group.', 'type' => 'string', 'example' => 'MyStackGroup', 'title' => ''], 'AccountId' => ['description' => 'The ID of the destination account to which the stack belongs.', 'type' => 'string', 'example' => '151266687691****', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the stack.', 'type' => 'string', 'example' => 'cn-beijing', 'title' => ''], 'RdFolderId' => ['description' => 'The ID of the folder in the resource directory.'."\n" ."\n" .'> This parameter is returned only if the stack group is granted service-managed permissions.', 'type' => 'string', 'example' => 'fd-4PvlVLOL8v', 'title' => ''], 'Outputs' => [ 'description' => 'The outputs of the stack.'."\n" ."\n" .'> This parameter is returned if OutputOption is set to Enabled.', 'type' => 'array', 'items' => ['description' => 'The output of the stack.'."\n" ."\n" .'> This parameter is returned if OutputOption is set to Enabled.', 'type' => 'object', 'example' => '[{\'OutputKey\': \'rds_connection_string\', \'OutputValue\': \'rm-gw868n4lzy0i7kzx3.mysql.germany.rds.aliyuncs.com\'}]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetStackInstance', 'description' => 'In this example, the information about a stack instance associated with a stack group named `MyStackGroup` is queried. The stack instance is deployed in the China (Beijing) region within the `151266687691****` Alibaba Cloud account. The stack group is granted self-managed permissions and deployed in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n" .'| StackGroupNotFound |The StackGroup ({name}) could not be found. | 404 |资源栈组不存在。name为资源栈组名称。 |'."\n" .'| StackInstanceNotFound |The StackInstance could not be found. | 404 |资源栈不存在。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackInstance'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackInstance', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B8A6B693-82C8-419D-8796-DE99EC33CFF9\\",\\n \\"StackInstance\\": {\\n \\"Status\\": \\"CURRENT\\",\\n \\"StackGroupId\\": \\"fd0ddef9-9540-4b42-a464-94f77835****\\",\\n \\"StackId\\": \\"35ad60e3-6a92-42d8-8812-f0700d45****\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"StackDriftStatus\\": \\"IN_SYNC\\",\\n \\"StatusReason\\": \\"User initiated stop\\",\\n \\"ParameterOverrides\\": [\\n {\\n \\"ParameterKey\\": \\"Amount\\",\\n \\"ParameterValue\\": \\"1\\"\\n }\\n ],\\n \\"StackGroupName\\": \\"MyStackGroup\\",\\n \\"AccountId\\": \\"151266687691****\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"RdFolderId\\": \\"fd-4PvlVLOL8v\\",\\n \\"Outputs\\": [\\n {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'GetStackPolicy' => [ 'path' => '/V2/GetStackPolicy', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. Call [DescribeRegions](~~131035~~) to query available regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'StackPolicyBody' => ['description' => 'The stack policy body. Length: 1 to 16,384 bytes.', 'type' => 'object', 'example' => '{"Statement": [{"Action": "Update:*", "Effect": "Allow","Principal": "*","Resource": "*"}]}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'GetStackPolicy', 'summary' => 'Queries the stack policy of a specified stack.', 'description' => 'This example queries the stack policy of stack `4a6c9851-3b0f-4f5f-b4ca-a14bf691****` in the China (Hangzhou) region.', 'requestParamsDescription' => 'This operation also uses [Common parameters](~~131957~~).', 'responseParamsDescription' => '| Error code | Error message | HTTP status code | Description |'."\n" .'| ------------- | -------------------------------------- | ---------------- | --------------------------------------------------------------- |'."\n" .'| StackNotFound | The Stack ({name}) could not be found. | 404 | The specified stack does not exist. name: the stack name or ID. |', 'extraInfo' => '| 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| StackNotFound |The Stack ({name}) could not be found. | 404 |资源栈不存在,name为资源栈名称或ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackPolicy'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"StackPolicyBody\\": {\\n \\"Statement\\": [\\n {\\n \\"Action\\": \\"Update:*\\",\\n \\"Effect\\": \\"Allow\\",\\n \\"Principal\\": \\"*\\",\\n \\"Resource\\": \\"*\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'GetStackResource' => [ 'summary' => 'Query a resource in a specific stack.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. The value is generated by the client and must be globally unique.'."\n" .'The value can be up to 64 characters in length, and can contain letters, digits, hyphens (-), and underscores (_).'."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ShowResourceAttributes', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query resource attributes. Valid values:'."\n" ."\n" .'- true: queries resource attributes.'."\n" ."\n" .'- false: does not query resource attributes.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'LogicalResourceId', 'in' => 'query', 'schema' => ['description' => 'The logical ID of the resource, which is the resource name defined in the template.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'WebServer', 'title' => ''], ], [ 'name' => 'ResourceAttributes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of resource output attributes to query.'."\n" ."\n" .'> The maximum value of N is 20.', 'type' => 'array', 'items' => ['description' => 'The name of the resource output attribute to query.'."\n" ."\n" .'> The maximum value of N is 20.', 'type' => 'string', 'required' => false, 'example' => 'InstanceId', 'title' => ''], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The resource status. Valid values:'."\n" .'- CREATE_COMPLETE'."\n" .'- CREATE_FAILED'."\n" .'- CREATE_IN_PROGRESS'."\n" .'- UPDATE_IN_PROGRESS'."\n" .'- UPDATE_FAILED'."\n" .'- UPDATE_COMPLETE'."\n" .'- DELETE_IN_PROGRESS'."\n" .'- DELETE_FAILED'."\n" .'- CHECK_IN_PROGRESS'."\n" .'- CHECK_FAILED'."\n" .'- CHECK_COMPLETE'."\n" .'- IMPORT_IN_PROGRESS'."\n" .'- IMPORT_FAILED'."\n" .'- IMPORT_COMPLETE', 'type' => 'string', 'example' => 'CREATE_COMPLETE', 'title' => ''], 'Description' => ['description' => 'The resource description.', 'type' => 'string', 'example' => 'no description', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the resource is in the current state.', 'type' => 'string', 'example' => 'state changed', 'title' => ''], 'PhysicalResourceId' => ['description' => 'The physical ID of the resource, which is the actual resource ID.', 'type' => 'string', 'example' => 'd04af923-e6b7-4272-aeaa-47ec9777****', 'title' => ''], 'CreateTime' => ['description' => 'The time when the resource was created. The time is displayed in UTC+0 and in the ISO 8601 standard format without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2019-08-01T06:01:23', 'title' => ''], 'Metadata' => ['description' => 'The metadata.', 'type' => 'object', 'example' => '{"key": "value"}', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ROS::WaitConditionHandle', 'title' => ''], 'ResourceAttributes' => [ 'description' => 'The resource attribute list.', 'type' => 'array', 'items' => ['description' => 'The resource attribute list.', 'type' => 'object', 'example' => '[{"ResourceAttributeKey": "CurlCli","ResourceAttributeValue": "curl -i -X POST -H \'Content-Type: application/json\' -H \'Accept: application/json\' -H \'x-acs-region-id: cn-beijing\' http://192.168.XX.XX/waitcondition?stackname=test-describe-resource\\\\&stackid=efdf5c10-96a5-4fd7-ab89-68e7baa2****\\\\&resource=WaitConditionHandle\\\\&expire=156468****\\\\&signature=991d910a901a89db6580d74233119960c004****"}]', 'title' => ''], 'title' => '', 'example' => '', ], 'LogicalResourceId' => ['description' => 'The logical ID of the resource, which is the resource name defined in the template.', 'type' => 'string', 'example' => 'WebServer', 'title' => ''], 'ResourceDriftStatus' => ['description' => 'The drift status of the resource in the most recent successful drift detection of the stack. Valid values:'."\n" .'- DELETED: The resource differs from its expected template configuration because the resource has been deleted.'."\n" .'- MODIFIED: The resource differs from its expected template configuration.'."\n" .'- NOT_CHECKED: ROS has not checked whether the resource differs from its expected template configuration.'."\n" .'- IN_SYNC: The current configuration of the resource matches its expected template configuration.', 'type' => 'string', 'example' => 'IN_SYNC', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the resource was last updated. The time is displayed in UTC+0 and in the ISO 8601 standard format without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2019-08-01T06:01:29', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the resource was last successfully checked for drift detection of the stack.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'StackName' => ['description' => 'The stack name.'."\n" .'The name can be up to 255 characters in length, and must start with a digit or letter. It can contain digits, letters, hyphens (-), and underscores (_).', 'type' => 'string', 'example' => 'test-describe-resource', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => 'efdf5c10-96a5-4fd7-ab89-68e7baa2****', 'title' => ''], 'ModuleInfo' => [ 'description' => 'The information about the module from which the resource was created. This parameter is returned only when the resource is created from a module.', 'type' => 'object', 'properties' => [ 'LogicalIdHierarchy' => ['description' => 'A concatenated list of the logical IDs of one or more modules that contain the resource. The modules are listed starting from the outermost module, separated by `/`.'."\n" ."\n" .'In the following example, the resource was created from moduleB, which is nested in the parent module moduleA.'."\n" ."\n" .'`moduleA/moduleB`', 'type' => 'string', 'example' => 'moduleA/moduleB'."\n", 'title' => ''], 'TypeHierarchy' => ['description' => 'A concatenated list of the types of one or more modules that contain the resource. The module types are listed starting from the outermost module, separated by `/`.'."\n" ."\n" .'In the following example, the resource was created from a module of the `MODULE::ROS::Child::Example` type, which is nested in a parent module of the `MODULE::ROS::Parent::Example` type.'."\n" ."\n" .'`MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example`', 'type' => 'string', 'example' => 'MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"CREATE_COMPLETE\\",\\n \\"Description\\": \\"no description\\",\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"StatusReason\\": \\"state changed\\",\\n \\"PhysicalResourceId\\": \\"d04af923-e6b7-4272-aeaa-47ec9777****\\",\\n \\"CreateTime\\": \\"2019-08-01T06:01:23\\",\\n \\"Metadata\\": {\\n \\"key\\": \\"value\\"\\n },\\n \\"ResourceType\\": \\"ALIYUN::ROS::WaitConditionHandle\\",\\n \\"ResourceAttributes\\": [\\n [\\n {\\n \\"ResourceAttributeKey\\": \\"CurlCli\\",\\n \\"ResourceAttributeValue\\": \\"curl -i -X POST -H \'Content-Type: application/json\' -H \'Accept: application/json\' -H \'x-acs-region-id: cn-beijing\' http://192.168.XX.XX/waitcondition?stackname=test-describe-resource\\\\\\\\&stackid=efdf5c10-96a5-4fd7-ab89-68e7baa2****\\\\\\\\&resource=WaitConditionHandle\\\\\\\\&expire=156468****\\\\\\\\&signature=991d910a901a89db6580d74233119960c004****\\"\\n }\\n ]\\n ],\\n \\"LogicalResourceId\\": \\"WebServer\\",\\n \\"ResourceDriftStatus\\": \\"IN_SYNC\\",\\n \\"UpdateTime\\": \\"2019-08-01T06:01:29\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"StackName\\": \\"test-describe-resource\\",\\n \\"StackId\\": \\"efdf5c10-96a5-4fd7-ab89-68e7baa2****\\",\\n \\"ModuleInfo\\": {\\n \\"LogicalIdHierarchy\\": \\"moduleA/moduleB\\\\n\\",\\n \\"TypeHierarchy\\": \\"MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example\\"\\n }\\n}","type":"json"}]', 'title' => 'Query a resource in a stack', 'description' => 'This topic provides an example on how to query the details of a resource named `WebServer` in a stack whose ID is `4a6c9851-3b0f-4f5f-b4ca-a14bf691****` in the China (Hangzhou) region.', 'requestParamsDescription' => ' For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | Error code | Error message | Description |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | ResourceNotFound | The Resource ({name}) could not be found in Stack {stack}. | The specified resource does not exist in the stack. name indicates the resource name, and stack indicates the stack name or ID. |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. | The specified stack does not exist. name indicates the stack name or ID. |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackResource'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackResource', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], ], 'GetTemplate' => [ 'summary' => 'Queries the details of a template based on stacks, stack groups, change sets, or any custom template information.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12695', 'abilityTreeNodes' => ['FEATUREros85NBPH'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.'."\n" ."\n" .'> You must specify one of the following parameters: StackId, ChangeSetId, StackGroupName, and TemplateId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack or stack group that uses the template. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ChangeSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the change set.'."\n" ."\n" .'> You must specify one of the following parameters: StackId, ChangeSetId, StackGroupName, and TemplateId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '1f6521a4-05af-4975-afe9-bc4b45ad****', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the template.'."\n" ."\n" .'This parameter applies to shared and private templates. If the template is a shared template, the value of TemplateId is the same as the value of TemplateARN. You can use the template ID to query a shared template.'."\n" ."\n" .'> You must specify one of the following parameters: StackId, ChangeSetId, StackGroupName, and TemplateId.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. This parameter takes effect only if you specify TemplateId.
'."\n" .'If the template is a shared template, you can specify this parameter only if VersionOption is set to AllVersions. For more information, see [SetTemplatePermission](~~194768~~).'."\n" ."\n" .'Valid values: v1 to v100.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'TemplateStage', 'in' => 'query', 'schema' => ['description' => 'The stage of the template. This parameter takes effect only if you specify StackId, ChangeSetId, or StackGroupName.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Processed (default): returns the processed template.'."\n" ."\n" .'- Original: returns the original template.', 'type' => 'string', 'required' => false, 'example' => 'Processed', 'title' => ''], ], [ 'name' => 'IncludePermission', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query the shared information about the template. Valid values:'."\n" ."\n" .'- Enabled'."\n" ."\n" .'- Disabled (default)'."\n" ."\n" .'> Only the template owner can query the shared information of a template.', 'type' => 'string', 'required' => false, 'example' => 'Enabled', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group.'."\n" ."\n" .'> You must specify one of the following parameters: StackId, ChangeSetId, StackGroupName, and TemplateId.', 'type' => 'string', 'required' => false, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'IncludeTags', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query the information about tags. Valid values:'."\n" ."\n" .'- Enabled'."\n" ."\n" .'- Disabled (default)'."\n" ."\n" .'> This parameter takes effect only if you specify TemplateId.', 'type' => 'string', 'required' => false, 'example' => 'Enabled', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TemplateARN' => ['description' => 'The Alibaba Cloud Resource Name (ARN) of the template. This parameter is returned only if you specify TemplateId.', 'type' => 'string', 'example' => 'acs:ros:*:151266687691****:template/a52f81be-496f-4e1c-a286-8852ab54****', 'title' => ''], 'Description' => ['description' => 'The description of the template. This parameter is returned only if you specify TemplateId.', 'type' => 'string', 'example' => 'ROS template for create ECS instance.', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84****', 'title' => ''], 'CreateTime' => ['description' => 'The time when the template was created. This parameter is returned only if you specify TemplateId.'."\n" ."\n" .'> - If you specify TemplateVersion, the creation time of the template whose version is specified by TemplateVersion is returned.'."\n" .'>'."\n" .'> - If you do not specify TemplateVersion, the creation time of the template whose version is the default version is returned.', 'type' => 'string', 'example' => '2020-11-18T08:49:26', 'title' => ''], 'StackGroupName' => ['description' => 'The name of the stack group. This parameter is returned only if you specify StackGroupName.', 'type' => 'string', 'example' => 'MyStackGroup', 'title' => ''], 'TemplateVersion' => ['description' => 'The version of the template. This parameter is returned only if you specify TemplateId.
'."\n" .'If TemplateVersion is not specified or does not take effect, the default version is used.'."\n" ."\n" .'If the template is a shared template, this parameter is returned only if you set VersionOption to AllVersions.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'TemplateBody' => ['description' => 'The content of the template.', 'type' => 'string', 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], 'ChangeSetId' => ['description' => 'The ID of the change set. This parameter is returned only if you specify ChangeSetId.', 'type' => 'string', 'example' => 'e85abe0c-6528-43fb-ae93-fdf8de22****', 'title' => ''], 'OwnerId' => ['description' => 'The ID of the Alibaba Cloud account to which the template belongs. This parameter is returned only if you specify TemplateId.', 'type' => 'string', 'example' => '151266687691****', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the template was last updated. This parameter is returned only if you specify TemplateId.'."\n" ."\n" .'> - If you specify TemplateVersion, the last update time of the template whose version is specified by TemplateVersion is returned.'."\n" .'>'."\n" .'> - If you do not specify TemplateVersion, the last update time of the template whose version is the default version is returned.', 'type' => 'string', 'example' => '2020-12-07T06:11:48', 'title' => ''], 'Permissions' => [ 'description' => 'Details of the sharing status of the template. This parameter is returned only if you specify TemplateId and set IncludePermission to Enabled.'."\n" ."\n" .'> - If TemplateVersion is not specified or does not take effect, the details of the sharing status of the template whose version is the default version is returned.'."\n" .'>'."\n" .'> - If TemplateVersion is specified and takes effect, the details of the sharing status of the template whose version is specified by TemplateVersion is returned.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'VersionOption' => ['description' => 'The version option for the shared template. This parameter is returned only if you set ShareOption to ShareToAccounts.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- AllVersions: All template versions are shared.'."\n" ."\n" .'- Latest: Only the latest template version is shared. When the version of the template is updated, Resource Orchestration Service (ROS) updates the shared version to the latest version.'."\n" ."\n" .'- Current: Only the latest template version is shared. When the version of the template is updated, ROS does not update the shared version.'."\n" ."\n" .'- Specified: Only the specified template version is shared.', 'type' => 'string', 'example' => 'AllVersions', 'title' => ''], 'AccountId' => ['description' => 'The ID of the Alibaba Cloud account with which the template is shared.', 'type' => 'string', 'example' => '142437958638****', 'title' => ''], 'ShareOption' => ['description' => 'The sharing option.'."\n" ."\n" .'The value ShareToAccounts indicates that the template is shared with one or more Alibaba Cloud accounts.', 'type' => 'string', 'example' => 'ShareToAccounts', 'title' => ''], 'TemplateVersion' => ['description' => 'The version of the shared template. This parameter is returned only if you set ShareOption to ShareToAccounts and set VersionOption to Specified or Current.'."\n" ."\n" .'Valid values: v1 to v100.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'ShareSource' => ['description' => 'The service that is used for resource sharing. Valid values:'."\n" ."\n" .'- ROS: Resources are shared from ROS by using the ROS console or calling the ROS API.'."\n" ."\n" .'- ResourceDirectory: Resources are shared with accounts in a resource directory from Resource Management by using the resource sharing feature.'."\n" ."\n" .'> * The number of accounts with which resources are shared from ROS is independent of the number of accounts with which resources are shared from the resource directory.'."\n" .'>'."\n" .'> * The shared resources from ROS cannot override or overwrite the shared resources from the resource directory.'."\n" .'>'."\n" .'> * The shared resources from the resource directory can overwrite the shared resources from ROS.', 'type' => 'string', 'example' => 'ROS', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TemplateName' => ['description' => 'The name of the template. This parameter is returned only if you specify TemplateId.'."\n" ."\n" .'> - If you specify TemplateVersion, the name of the template whose version is specified by TemplateVersion is returned.'."\n" .'>'."\n" .'> - If you not specify TemplateVersion, the name of the template whose version is the default version is returned.', 'type' => 'string', 'example' => 'MyTemplate', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the stack or stack group that uses the template. This parameter is returned only if you specify StackId, ChangeSetId, or StackGroupName.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'TemplateId' => ['description' => 'The ID of the template. This parameter is returned only if you specify TemplateId.'."\n" ."\n" .'If the template is a shared template, the value of this parameter is the same as the value of TemplateARN.', 'type' => 'string', 'example' => 'a52f81be-496f-4e1c-a286-8852ab54****', 'title' => ''], 'StackId' => ['description' => 'The ID of the stack. This parameter is returned only if you specify StackId.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691**** ', 'title' => ''], 'ShareType' => ['description' => 'The sharing type of the template. This parameter is returned only if you specify TemplateId.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Private: The template belongs to the template owner.'."\n" ."\n" .'- Shared: The template is shared by other users.', 'type' => 'string', 'example' => 'Private', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], 'Interface' => ['description' => 'The description of the web UI in the ROS console.', 'type' => 'string', 'example' => '{}', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the template.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the template.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the template.', 'type' => 'string', 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the template.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'AdditionalInfo' => ['description' => 'Supplementary information for the public template.', 'type' => 'object', 'example' => '{"DeploymentDuration":null,"Title":"Self-Built_ElasticSearch_Snapshot_Saved_To_OSS","Labels":{"ResourceTypes":["ALIYUN::ECS::Instance","ALIYUN::ECS::SecurityGroup","ALIYUN::ECS::VPC","ALIYUN::ECS::VSwitch","ALIYUN::OSS::Bucket","ALIYUN::ROS::WaitCondition","ALIYUN::ROS::WaitConditionHandle"],"DeployTypes":["ROS"],"ApplicationScenes":["other"]},"Provider":"ROS","Categories":["Solution"]}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetTemplate', 'description' => 'In this example, the details of a template whose ID is `5ecd1e10-b0e9-4389-a565-e4c15efc****` is queried. The region ID of the template is `cn-hangzhou`.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => "\n" .'| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | ChangeSetNotFound |The ChangeSet ({name}) of Stack ({stack}) could not be found. |更改集不存在。name为更改集名称或ID,stack为资源栈名称或ID。 |'."\n" .'| 404 | ChangeSetNotFound |The ChangeSet {ID} could not be found. |更改集不存在。ID为更改集ID。 |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |'."\n" .'| 404 | StackGroupNotFound |The StackGroup ({name}) could not be found.|资源栈组不存在。name为资源栈组名称。|', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplate'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'template', 'arn' => 'acs:ros:*:{#accountId}:template/{#templateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TemplateARN\\": \\"acs:ros:*:151266687691****:template/a52f81be-496f-4e1c-a286-8852ab54****\\",\\n \\"Description\\": \\"ROS template for create ECS instance.\\",\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84****\\",\\n \\"CreateTime\\": \\"2020-11-18T08:49:26\\",\\n \\"StackGroupName\\": \\"MyStackGroup\\",\\n \\"TemplateVersion\\": \\"v1\\",\\n \\"TemplateBody\\": \\"{\\\\\\"ROSTemplateFormatVersion\\\\\\": \\\\\\"2015-09-01\\\\\\"}\\",\\n \\"ChangeSetId\\": \\"e85abe0c-6528-43fb-ae93-fdf8de22****\\",\\n \\"OwnerId\\": \\"151266687691****\\",\\n \\"UpdateTime\\": \\"2020-12-07T06:11:48\\",\\n \\"Permissions\\": [\\n {\\n \\"VersionOption\\": \\"AllVersions\\",\\n \\"AccountId\\": \\"142437958638****\\",\\n \\"ShareOption\\": \\"ShareToAccounts\\",\\n \\"TemplateVersion\\": \\"v1\\",\\n \\"ShareSource\\": \\"ROS\\"\\n }\\n ],\\n \\"TemplateName\\": \\"MyTemplate\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"TemplateId\\": \\"a52f81be-496f-4e1c-a286-8852ab54****\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\\\t\\",\\n \\"ShareType\\": \\"Private\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxazb4ph6aiy****\\",\\n \\"Interface\\": \\"{}\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"usage\\",\\n \\"Value\\": \\"test\\"\\n }\\n ],\\n \\"AdditionalInfo\\": {\\n \\"DeploymentDuration\\": null,\\n \\"Title\\": \\"Self-Built_ElasticSearch_Snapshot_Saved_To_OSS\\",\\n \\"Labels\\": {\\n \\"ResourceTypes\\": [\\n \\"ALIYUN::ECS::Instance\\",\\n \\"ALIYUN::ECS::SecurityGroup\\",\\n \\"ALIYUN::ECS::VPC\\",\\n \\"ALIYUN::ECS::VSwitch\\",\\n \\"ALIYUN::OSS::Bucket\\",\\n \\"ALIYUN::ROS::WaitCondition\\",\\n \\"ALIYUN::ROS::WaitConditionHandle\\"\\n ],\\n \\"DeployTypes\\": [\\n \\"ROS\\"\\n ],\\n \\"ApplicationScenes\\": [\\n \\"other\\"\\n ]\\n },\\n \\"Provider\\": \\"ROS\\",\\n \\"Categories\\": [\\n \\"Solution\\"\\n ]\\n }\\n}","type":"json"}]', ], 'GetTemplateEstimateCost' => [ 'summary' => 'Queries the estimated prices of the resources in a template.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12696', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests.'."\n" ."\n" .'The token can be up to 64 characters in length, and can contain letters, digits, hyphens (-), and underscores (\\_).'."\n" ."\n" .'For more information, see [Ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the template. This parameter applies to shared and private templates.'."\n" ."\n" .'> You must specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure that contains the template body. The template body must be 1 to 524,288 bytes in length. If the length of the template body exceeds the upper limit, we recommend that you add parameters to the HTTP POST request body to prevent request failures caused by excessively long URLs.'."\n" ."\n" .'> You must and can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'ROSTemplateFormatVersion: \'2015-09-01\'\\nResources:\\n vpc:\\n Type: ALIYUN::ECS::VPC', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The name of parameter N. If you do not specify the name and value of a parameter, ROS uses the default name and value that are specified in the template.'."\n" ."\n" .'Maximum value of N: 200.'."\n" ."\n" .'Examples:'."\n" ."\n" .'- Parameters.1.ParameterKey: `Name`'."\n" ."\n" .'- Parameters.2.ParameterKey: `Netmode`'."\n" ."\n" .'> The Parameters parameter is optional. If you want to specify Parameters, you must specify both Parameters.N.ParameterKey and Parameters.N.ParameterValue.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The value of parameter N.'."\n" ."\n" .'Maximum value of N: 200.'."\n" ."\n" .'Examples:'."\n" ."\n" .'- Parameters.1.ParameterValue: `DemoEip`'."\n" ."\n" .'- Parameters.2.ParameterValue: `public`'."\n" ."\n" .'> The Parameters parameter is optional. If you want to specify Parameters, you must specify both Parameters.N.ParameterKey and Parameters.N.ParameterValue.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The ID of the scenario.'."\n" ."\n" .'For more information about how to query the IDs of scenarios, see [ListTemplateScratches](~~363050~~).'."\n" ."\n" .'> You must specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The region ID of the scenario. The default value is the same as the value of the RegionId parameter.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The ID of the request.', 'type' => 'string', 'required' => true, 'example' => 'Name', 'title' => ''], 'ParameterValue' => ['description' => 'Details of the resource.', 'type' => 'string', 'required' => true, 'example' => 'DemoEip', 'title' => ''], ], 'required' => false, 'description' => 'The list of parameters.', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the scenario.', 'type' => 'string', 'required' => false, 'example' => 'ts-aa9c62feab844a6b****', 'title' => ''], ], [ 'name' => 'TemplateScratchRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the scenario. The default value is the same as the value of the RegionId parameter.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.'."\n" ."\n" .'This parameter is used to query the estimated price in a configuration change scenario.'."\n" ."\n" .'Assume that the specified stack contains only one Elastic Compute Service (ECS) instance and the instance type is ecs.s6-c1m2.large. You downgrade the instance type to ecs.s6-c1m1.small and specify a new ApsaraDB RDS instance in the template that is used for the price inquiry. The queried result is the sum of the downgrade refund of the ECS instance and the price of the new ApsaraDB RDS instance.', 'type' => 'string', 'required' => false, 'example' => 'c754d2a4-28f1-46df-b557-9586173a****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '6DEA36EF-C97D-5658-A4AC-4F5DB08D1A89', 'title' => ''], 'Resources' => ['description' => 'The resource details.', 'type' => 'object', 'example' => '{'."\n" .'  "NewEip": {'."\n" .'    "Type": "ALIYUN::VPC::EIP",'."\n" .'    "Success": true,'."\n" .'    "Result": {'."\n" .'      "Order": {'."\n" .'        "TaxAmount": 0.0,'."\n" .'        "Currency": "CNY",'."\n" .'        "RuleIds": ['."\n" .'          "102204102264****"'."\n" .'        ],'."\n" .'        "TradeAmount": 87.5,'."\n" .'        "OriginalAmount": 125.0,'."\n" .'        "DiscountAmount": 37.5'."\n" .'      },'."\n" .'      "OrderSupplement": {'."\n" .'        "ChargeType": "PrePaid",'."\n" .'        "Period": 1,'."\n" .'        "Quantity": 1,'."\n" .'        "PriceType": "Total",'."\n" .'        "PeriodUnit": "Month"'."\n" .'      },'."\n" .'      "InquiryType": "Buy",'."\n" .'      "Rules": {'."\n" .'        "Rule": ['."\n" .'          {'."\n" .'            "RuleDescId": "102204102264****",'."\n" .'            "Name": "Contract_Discount_Full_Order_30%_Off"'."\n" .'          }'."\n" .'        ]'."\n" .'      }'."\n" .'    }'."\n" .'  }'."\n" .'}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetTemplateEstimateCost', 'description' => '###'."\n" ."\n" .'- For more information about the resources that support price inquiry in Resource Orchestration Service (ROS) templates, see the "**Resource types that support price inquiry**" section of the [Estimate resource prices](~~203165~~) topic.'."\n" ."\n" .'- For more information about the resources that support price inquiry in Terraform templates, see the "**ROS resources supported by Terraform**" section of the [ROS features and resources supported by Terraform](~~184389~~) topic.'."\n" ."\n" .'The following sample code provides an example on how to query the estimated price of an elastic IP address (EIP) that you want to create based on a template. In this example, the following template is used:'."\n" ."\n" .'```'."\n" .'{'."\n" .' "ROSTemplateFormatVersion": "2015-09-01",'."\n" .' "Parameters": {'."\n" .' "Isp": {'."\n" .' "Type": "String",'."\n" .' "Default": "BGP"'."\n" .' },'."\n" .' "Name": {'."\n" .' "Type": "String",'."\n" .' "Default": "test"'."\n" .' },'."\n" .' "Netmode": {'."\n" .' "Type": "String",'."\n" .' "Default": "public"'."\n" .' },'."\n" .' "Bandwidth": {'."\n" .' "Type": "Number",'."\n" .' "Default": 5'."\n" .' }'."\n" .' },'."\n" .' "Resources": {'."\n" .' "NewEip": {'."\n" .' "Type": "ALIYUN::VPC::EIP",'."\n" .' "Properties": {'."\n" .' "InstanceChargeType": "Prepaid",'."\n" .' "PricingCycle": "Month",'."\n" .' "Isp": {'."\n" .' "Ref": "Isp"'."\n" .' },'."\n" .' "Period": 1,'."\n" .' "DeletionProtection": false,'."\n" .' "AutoPay": false,'."\n" .' "Name": {'."\n" .' "Ref": "Name"'."\n" .' },'."\n" .' "InternetChargeType": "PayByTraffic",'."\n" .' "Netmode": {'."\n" .' "Ref": "Netmode"'."\n" .' },'."\n" .' "Bandwidth": {'."\n" .' "Ref": "Bandwidth"'."\n" .' }'."\n" .' }'."\n" .' }'."\n" .' }'."\n" .'}'."\n" .'```', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => 'The following table describes the parameters that are contained in Resources.'."\n" ."\n" .'| Parameter | Type | Example | Description |'."\n" .'| ----------------- | ------- | ----------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| Order | | | The information about the order. |'."\n" .'| \\- Currency | String | CNY | The currency unit. Valid values:CNY: This value is available only on the China site (aliyun.com).USD: This value is available only on the international site (alibabacloud.com) |'."\n" .'| \\- OriginalAmount | Long | 125 | The original price. |'."\n" .'| \\- DiscountAmount | Long | 15.63 | The discount amount. |'."\n" .'| \\- TradeAmount | Long | 109.37 | The transaction price, which is equal to the original price minus the discount. |'."\n" .'| \\- TaxAmount | Long | 0 | The available tax amount. |'."\n" .'| \\- Coupons | Array | {"Coupon": []} | The available promotions. |'."\n" .'| \\- RuleIds | Array | \\[102204102264****] | The IDs of the promotion rules. |'."\n" .'| InquiryType | String | Buy | The price inquiry type. Valid values:Buy: price inquiry for new resourcesModificationBuy: price inquiry for resource configuration changes |'."\n" .'| Rules | | | The promotion rules. |'."\n" .'| \\- Rule | | | The promotion rule. |'."\n" .'| \\- - Name | String | Contract discount_order discount_8.750 discount | The name of the promotion rule. |'."\n" .'| \\- - RuleDescId | Long | 102204102264**** | The ID of the promotion rule. |'."\n" .'| OrderSupplement | | | The supplementary information about the order. |'."\n" .'| \\- AutoRenew | Boolean | false | Specifies whether to enable auto-renewal. Valid values:truefalse |'."\n" .'| \\- ChargeType | String | PrePaid | The billing method. |'."\n" .'| \\- Period | Long | 1 | The subscription duration. |'."\n" .'| \\- PeriodUnit | String | Month | The unit of the subscription duration. Valid values:YearMonth |'."\n" .'| \\- PriceType | String | Total | The price type. |'."\n" .'| \\- Quantity | Long | 1 | The quantity. |', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 |CircularDependency |Circular Dependency Found: {reason}. |模板包含循环引用。reason为具体原因。 |'."\n" .'| 400 |InvalidSchema |{reason}. |模板格式不正确。reason为具体原因。 |'."\n" .'| 400 |InvalidTemplateAttribute |The Referenced Attribute ({resource} {name}) is incorrect. |模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |'."\n" .'| 400 |InvalidTemplatePropertyType |The specified value type of ({resource} {section}) is incorrect. |模板资源定义中的字段类型不正确。resource为资源名,section为字段名。 |'."\n" .'| 400 |InvalidTemplateReference |The specified reference "{name}" (in {referencer}) is incorrect. |模板包含不正确的引用。name为引用名,referencer为引用者。 |'."\n" .'| 400 |InvalidTemplateSection |The template section is invalid: {section}. |模板包含无效的字段。section为字段名。 |'."\n" .'| 400 |InvalidTemplateVersion |The template version is invalid: {reason}. |模板版本不正确。reason为具体原因。 |'."\n" .'| 400 |StackValidationFailed |{reason}. |资源栈校验失败。reason为具体原因。 |'."\n" .'| 400 |UnknownUserParameter |The Parameter ({name}) was not defined in template. |传递的参数在模板中未定义。name为参数名。 |'."\n" .'| 400 |UserParameterMissing |The Parameter {name} was not provided. |参数在模板中已定义,但未传递值。name为参数名。 |'."\n" .'| 404 |TemplateNotFound |The Template ({ ID }) could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 |TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplateEstimateCost'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateEstimateCost', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6DEA36EF-C97D-5658-A4AC-4F5DB08D1A89\\",\\n \\"Resources\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n }\\n}","type":"json"}]', ], 'GetTemplateParameterConstraints' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '96176', 'abilityTreeNodes' => ['FEATUREros4Z9426'], ], 'parameters' => [ [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure of the template body. The template body must be 1 to 524,288 bytes in length. If the length of the template body exceeds the upper limit, we recommended to use the HTTP POST + Body Param method to pass the parameter in the request body to avoid request failures caused by an excessively long URL.'."\n" ."\n" .'> You can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{'."\n" .' "ROSTemplateFormatVersion": "2015-09-01",'."\n" .' "Parameters": {'."\n" .' "ZoneInfo": {'."\n" .' "Type": "String"'."\n" .' },'."\n" .' "InstanceType": {'."\n" .' "Type": "String"'."\n" .' }'."\n" .' },'."\n" .' "Resources": {'."\n" .' "ECS": {'."\n" .' "Type": "ALIYUN::ECS::Instance",'."\n" .' "Properties": {'."\n" .' "ZoneId": {'."\n" .' "Ref": "ZoneInfo"'."\n" .' },'."\n" .' "InstanceType": {'."\n" .' "Ref": "InstanceType"'."\n" .' }'."\n" .' }'."\n" .' }'."\n" .' }'."\n" .'}', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an Alibaba Cloud OSS bucket, such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. The template must be 1 to 524,288 bytes in length. If the OSS region is not specified, the default is the same as the RegionId parameter.'."\n" ."\n" .'> You can specify only one of the TemplateBody, TemplateURL, and TemplateId parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the template. This parameter applies to shared templates and private templates.'."\n" ."\n" .'> You can specify only one of the TemplateBody, TemplateURL, and TemplateId parameters.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. If you do not specify this parameter, the latest version is used.'."\n" ."\n" .'> TemplateVersion is valid only when TemplateId is specified.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters that are defined in the template.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter that is defined in the template.'."\n" ."\n" .'> The Parameters parameter is optional. If you specify Parameters, you must specify ParameterKey.', 'type' => 'string', 'required' => true, 'example' => 'ZoneInfo', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter that is defined in the template.'."\n" ."\n" .'> The Parameters parameter is optional. If you specify Parameters, you must specify ParameterValue.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou-h', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'ParametersKeyFilter', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of parameters to be queried.', 'type' => 'array', 'items' => ['description' => 'The parameter to be queried.', 'type' => 'string', 'required' => false, 'example' => 'ZoneInfo', 'title' => ''], 'required' => false, 'docRequired' => false, 'maxItems' => 200, 'minItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can be up to 64 characters in length, and can contain letters, digits, hyphens (-), and underscores (\\_). For more information, refer to [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'ParametersOrder', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The dependency of the parameters.', 'type' => 'array', 'items' => ['description' => 'The order of the parameter dependency.'."\n" ."\n" .'> By default, the dependency of the parameters is specified by the `Metadata` parameter in the template.', 'type' => 'string', 'required' => false, 'example' => '["ZoneId", "InstanceType"]', 'title' => ''], 'required' => false, 'maxItems' => 100, 'minItems' => 0, 'title' => '', 'example' => '', ], ], [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.'."\n" ."\n" .'If you specify this parameter, the parameter constraints for an upgrade or downgrade scenario are queried.', 'type' => 'string', 'required' => false, 'example' => 'c754d2a4-28f1-46df-b557-9586173a****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '9816785B-BCF8-514D-8B76-C1EC2BC954FC', 'title' => ''], 'ParameterConstraints' => [ 'description' => 'The information about the parameter constraints.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter.', 'type' => 'string', 'example' => 'ZoneInfo', 'title' => ''], 'Type' => ['description' => 'The type of the parameter.', 'type' => 'string', 'example' => 'String', 'title' => ''], 'AllowedValues' => [ 'description' => 'The list of valid values of the parameter.', 'type' => 'array', 'items' => ['description' => 'The valid value of the parameter.', 'type' => 'string', 'example' => 'cn-hangzhou-h', 'title' => ''], 'title' => '', 'example' => '', ], 'Behavior' => ['description' => 'The behavior of the parameter. Valid values:'."\n" ."\n" .'- NoLimit: The parameter has no limit on its valid values.'."\n" ."\n" .'- NotSupport: The valid values of the parameter cannot be queried.'."\n" ."\n" .'- QueryError: The query failed.'."\n" ."\n" .'> If AllowedValues is not returned, Behavior and BehaviorReason are returned to indicate the behavior of the parameter and the reason for the behavior.', 'type' => 'string', 'example' => 'NoLimit', 'title' => ''], 'BehaviorReason' => ['description' => 'The reason for the behavior of the parameter.', 'type' => 'string', 'example' => 'No resource property refer to the parameter', 'title' => ''], 'AssociationParameterNames' => [ 'description' => 'The names of the associated parameters.', 'type' => 'array', 'items' => ['description' => 'The name of an associated parameter.', 'type' => 'string', 'example' => 'InstanceType', 'title' => ''], 'title' => '', 'example' => '', ], 'IllegalValueByParameterConstraints' => [ 'description' => 'The values that do not match the parameter constraints.'."\n" ."\n" .'> If AllowedValues is returned, IllegalValueByParameterConstraints and IllegalValueByRules are returned to indicate the invalid values that are filtered out by the parameter constraints and template rules.', 'type' => 'array', 'items' => ['description' => 'The value that does not match the parameter constraints.'."\n" ."\n" .'> If `AllowedValues` is returned, the invalid values that are filtered out by the parameter constraints and template rules are returned in the `IllegalValueByParameterConstraints` and `IllegalValueByRules` parameters.', 'type' => 'any', 'example' => 'cn-hangzhou-h', 'title' => ''], 'title' => '', 'example' => '', ], 'IllegalValueByRules' => [ 'description' => 'The values that do not match the template rules.'."\n" ."\n" .'> If AllowedValues is returned, IllegalValueByParameterConstraints and IllegalValueByRules are returned to indicate the invalid values that are filtered out by the parameter constraints and template rules.', 'type' => 'array', 'items' => ['description' => 'The value that does not match the template rules.'."\n" ."\n" .'> If `AllowedValues` is returned, the invalid values that are filtered out by the parameter constraints and template rules are returned in the `IllegalValueByParameterConstraints` and `IllegalValueByRules` parameters.', 'type' => 'any', 'example' => 'cn-hangzhou-h', 'title' => ''], 'title' => '', 'example' => '', ], 'NotSupportResources' => [ 'description' => 'The details of the unsupported resources.', 'type' => 'array', 'items' => [ 'description' => 'The details of the unsupported resource.'."\n" ."\n" .'This parameter is returned when the value of `Behavior` is `NotSupport`.', 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::InstanceGroup', 'title' => ''], 'PropertyName' => ['description' => 'The name of the resource property.', 'type' => 'string', 'example' => 'InstanceName', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'QueryErrors' => [ 'description' => 'The details of the query failure.', 'type' => 'array', 'items' => [ 'description' => 'The details of the query failure.'."\n" ."\n" .'This parameter is returned when the value of `Behavior` is `QueryError`.', 'type' => 'object', 'properties' => [ 'ErrorMessage' => ['description' => 'The error details.', 'type' => 'string', 'example' => 'ALIYUN::ECS::InstanceGroup', 'title' => ''], 'ResourceName' => ['description' => 'The name of the resource.', 'type' => 'string', 'example' => 'MyECS', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'InstanceType is needed while query DataDisk', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'OriginalConstraints' => [ 'description' => 'The information about the original constraints.', 'type' => 'array', 'items' => [ 'description' => 'The information about the original constraint.', 'type' => 'object', 'properties' => [ 'ResourceName' => ['description' => 'The name of the resource that is defined in the template.', 'type' => 'string', 'example' => 'MyECS', 'title' => ''], 'AllowedValues' => [ 'description' => 'The list of valid values of the parameter.', 'type' => 'array', 'items' => ['description' => 'The valid value of the parameter.', 'type' => 'any', 'example' => 'cn-hangzhou-a', 'title' => ''], 'title' => '', 'example' => '', ], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::InstanceGroup'."\n", 'title' => ''], 'PropertyName' => ['description' => 'The name of the property.', 'type' => 'string', 'example' => 'ZoneId', 'title' => ''], 'Behavior' => ['description' => 'The behavior of the parameter.', 'type' => 'string', 'example' => 'QueryError', 'title' => ''], 'BehaviorReason' => ['description' => 'The reason for the behavior of the parameter.', 'type' => 'string', 'example' => 'No resource property refer to the parameter', 'title' => ''], 'PropertiesData' => ['description' => 'The query parameters that are used during the query of parameter constraints.', 'type' => 'string', 'example' => '{'."\n" .' "ZoneId":"cn-hangzhou-h",'."\n" .' "SystemDiskCategory":"cloud_essd"'."\n" .'}', 'title' => ''], 'RequestInfo' => ['description' => 'The request information of the operation that is called to query the parameter constraints of a cloud service.', 'type' => 'string', 'example' => 'ecs:2014-05-26:DescribeAvailableResource:4C5B6929-EB64-5086-A821-9CCB553A5AE9', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'QueryTimeoutDetails' => [ 'description' => 'The details of the query timeout.', 'type' => 'array', 'items' => [ 'description' => 'The details of the query timeout.', 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::RDS::DBInstance', 'title' => ''], 'ResourceName' => ['description' => 'The name of the resource.', 'type' => 'string', 'example' => 'rds', 'title' => ''], 'ErrorMessage' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'query property SlaveZoneIds.* in resource rds error, error message: query 8 seconds timeout', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetTemplateParameterConstraints', 'summary' => 'Queries the valid values of the parameters in a template.', 'description' => '### Description'."\n" ."\n" .'This topic provides an example of how to query the valid values for the `ZoneInfo` parameter in a template specific to the China (Hangzhou) region. The template is `{ "ROSTemplateFormatVersion": "2015-09-01", "Parameters": { "ZoneInfo": { "Type": "String" }, "InstanceType": { "Type": "String" } }, "Resources": { "ECS": { "Type": "ALIYUN::ECS::Instance", "Properties": { "ZoneId": { "Ref": "ZoneInfo" }, "InstanceType": { "Ref": "InstanceType" } } } } }`.'."\n" ."\n" .'For more information about the queryable parameters and template content, refer to [Query parameter constraints](~~432820~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTemplateParameterConstraints'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateParameterConstraints', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9816785B-BCF8-514D-8B76-C1EC2BC954FC\\",\\n \\"ParameterConstraints\\": [\\n {\\n \\"ParameterKey\\": \\"ZoneInfo\\",\\n \\"Type\\": \\"String\\",\\n \\"AllowedValues\\": [\\n \\"cn-hangzhou-h\\"\\n ],\\n \\"Behavior\\": \\"NoLimit\\",\\n \\"BehaviorReason\\": \\"No resource property refer to the parameter\\",\\n \\"AssociationParameterNames\\": [\\n \\"InstanceType\\"\\n ],\\n \\"IllegalValueByParameterConstraints\\": [\\n \\"cn-hangzhou-h\\"\\n ],\\n \\"IllegalValueByRules\\": [\\n \\"cn-hangzhou-h\\"\\n ],\\n \\"NotSupportResources\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::ECS::InstanceGroup\\",\\n \\"PropertyName\\": \\"InstanceName\\"\\n }\\n ],\\n \\"QueryErrors\\": [\\n {\\n \\"ErrorMessage\\": \\"ALIYUN::ECS::InstanceGroup\\",\\n \\"ResourceName\\": \\"MyECS\\",\\n \\"ResourceType\\": \\"InstanceType is needed while query DataDisk\\"\\n }\\n ],\\n \\"OriginalConstraints\\": [\\n {\\n \\"ResourceName\\": \\"MyECS\\",\\n \\"AllowedValues\\": [\\n \\"cn-hangzhou-a\\"\\n ],\\n \\"ResourceType\\": \\"ALIYUN::ECS::InstanceGroup\\\\n\\",\\n \\"PropertyName\\": \\"ZoneId\\",\\n \\"Behavior\\": \\"QueryError\\",\\n \\"BehaviorReason\\": \\"No resource property refer to the parameter\\",\\n \\"PropertiesData\\": \\"{\\\\n \\\\\\"ZoneId\\\\\\":\\\\\\"cn-hangzhou-h\\\\\\",\\\\n \\\\\\"SystemDiskCategory\\\\\\":\\\\\\"cloud_essd\\\\\\"\\\\n}\\",\\n \\"RequestInfo\\": \\"ecs:2014-05-26:DescribeAvailableResource:4C5B6929-EB64-5086-A821-9CCB553A5AE9\\"\\n }\\n ],\\n \\"QueryTimeoutDetails\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::RDS::DBInstance\\",\\n \\"ResourceName\\": \\"rds\\",\\n \\"ErrorMessage\\": \\"query property SlaveZoneIds.* in resource rds error, error message: query 8 seconds timeout\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', ], 'GetTemplateScratch' => [ 'summary' => 'Retrieves the details of a resource scenario.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '69681', 'abilityTreeNodes' => ['FEATURErosHDIJ7A', 'FEATURErosUSKZAD', 'FEATURErosSKHQLM'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource scenario.'."\n" ."\n" .'You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource scenario.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'ts-7f7a704cf71c49a6****', 'title' => ''], ], [ 'name' => 'ShowDataOption', 'in' => 'query', 'schema' => ['description' => 'The data display option. Valid values:'."\n" ."\n" .'- Sources: displays only source node data. This value is applicable when TemplateScratchType is set to ArchitectureDetection.'."\n" ."\n" .'- Source: displays only source node data. This value is applicable when TemplateScratchType is not set to ArchitectureDetection.'."\n" ."\n" .'- Provisions: displays only new node data. This value is applicable when TemplateScratchType is not set to ArchitectureDetection.'."\n" ."\n" .'- All: displays all data.'."\n" ."\n" .'For more information about source nodes and new nodes, see [Overview](~~352074~~).'."\n" ."\n" .'> If you do not specify this parameter, node data is not displayed by default.', 'type' => 'string', 'required' => false, 'example' => 'Source', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A8E0EF98-6FBD-5656-8298-FC8194F0F7B7', 'title' => ''], 'TemplateScratch' => [ 'description' => 'The resource scenario.', 'type' => 'object', 'properties' => [ 'TemplateScratchId' => ['description' => 'The ID of the resource scenario.', 'type' => 'string', 'example' => 'ts-7f7a704cf71c49a6****', 'title' => ''], 'TemplateScratchType' => ['description' => 'The type of the resource scenario. Valid values:'."\n" ."\n" .'- ResourceImport: resource management.'."\n" ."\n" .'- ArchitectureReplication: resource replication.', 'type' => 'string', 'example' => 'ArchitectureReplication', 'title' => ''], 'Status' => ['description' => 'The status of the resource scenario. Valid values:'."\n" ."\n" .'- GENERATE\\_IN_PROGRESS: being generated.'."\n" ."\n" .'- GENERATE_COMPLETE: generated.'."\n" ."\n" .'- GENERATE_FAILED: failed to be generated.', 'type' => 'string', 'example' => 'GENERATE_COMPLETE', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the resource scenario failed to be generated.'."\n" ."\n" .'> This parameter is returned only when Status is set to GENERATE_FAILED.', 'type' => 'string', 'example' => 'Resource ALIYUN::ECS::VPC vpc-m5eauuq80anx59v28**** could not be found for template scratch.', 'title' => ''], 'FailedCode' => ['description' => 'The status code that indicates why the resource scenario failed to be generated.'."\n" ."\n" .'> This parameter is returned only when Status is set to GENERATE_FAILED.', 'type' => 'string', 'example' => 'InvalidZoneId', 'title' => ''], 'TemplateScratchData' => ['description' => 'The resource scenario data.', 'type' => 'object', 'example' => '参见返回示例', 'title' => ''], 'PreferenceParameters' => [ 'description' => 'The configuration parameters of the resource scenario.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The parameter name.', 'type' => 'string', 'example' => 'DeletionPolicy', 'title' => ''], 'ParameterValue' => ['description' => 'The parameter value.', 'type' => 'string', 'example' => 'Retain', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Description' => ['description' => 'The description of the resource scenario.', 'type' => 'string', 'example' => '复制VPC资源。', 'title' => ''], 'SourceResources' => [ 'description' => 'The source resources.', 'type' => 'array', 'items' => [ 'description' => 'The source resources.', 'type' => 'object', 'properties' => [ 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'vpc-m5e7cv7e9mz69sszb****', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'RelatedResourceTypeFilter' => [ 'description' => 'The filter for related resource types.', 'type' => 'array', 'items' => ['description' => 'The filter for related resource types.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'SourceTag' => [ 'description' => 'The source tag.', 'type' => 'object', 'properties' => [ 'ResourceTags' => ['description' => 'The source tag.', 'type' => 'object', 'example' => '{"a": "b"}', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource type filter.', 'type' => 'array', 'items' => ['description' => 'The resource type filter.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'SourceResourceGroup' => [ 'description' => 'The source resource group.', 'type' => 'object', 'properties' => [ 'ResourceGroupId' => ['description' => 'The ID of the source resource group.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource type filter.', 'type' => 'array', 'items' => ['description' => 'The resource type filter.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'LogicalIdStrategy' => ['description' => 'The logical ID generation strategy. Valid values:'."\n" ."\n" .'- LongTypePrefixAndIndexSuffix (default): long type prefix with index suffix.'."\n" ."\n" .'- LongTypePrefixAndHashSuffix: long type prefix with hash suffix.'."\n" ."\n" .'- ShortTypePrefixAndHashSuffix: short type prefix with hash suffix.', 'type' => 'string', 'example' => 'LongTypePrefixAndIndexSuffix', 'title' => ''], 'CreateTime' => ['description' => 'The time when the resource scenario was created. The time is displayed in UTC+0 and follows the ISO 8601 standard without the trailing Z. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2021-12-22T01:49:22', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the resource scenario was last updated. The time is displayed in UTC+0 and follows the ISO 8601 standard without the trailing Z. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2021-12-22T01:49:23', 'title' => ''], 'Stacks' => [ 'description' => 'The list of stacks associated with the resource scenario.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '3708bf6a-3a67-44d4-9eb1-c56704b9****', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the stack.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'UsageType' => ['description' => 'The purpose of the stack. Valid values:'."\n" ."\n" .'- ResourceImport: resource management.'."\n" ."\n" .'- ArchitectureReplication: resource replication.', 'type' => 'string', 'example' => 'ArchitectureReplication', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'StackProvision' => [ 'description' => 'The stack provisioning information.', 'type' => 'object', 'properties' => [ 'Creatable' => ['description' => 'Indicates whether you can call [CreateStack](~~132086~~) to create a stack for resource replication. Valid values:'."\n" ."\n" .'- true: Supported.'."\n" ."\n" .'- false: Not supported.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Importable' => ['description' => 'Indicates whether you can call [CreateChangeSet](~~131051~~) to create a change set for resource management. Valid values:'."\n" ."\n" .'- true: Supported.'."\n" ."\n" .'- false: Not supported.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzmhzoaad5oq', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A8E0EF98-6FBD-5656-8298-FC8194F0F7B7\\",\\n \\"TemplateScratch\\": {\\n \\"TemplateScratchId\\": \\"ts-7f7a704cf71c49a6****\\",\\n \\"TemplateScratchType\\": \\"ArchitectureReplication\\",\\n \\"Status\\": \\"GENERATE_COMPLETE\\",\\n \\"StatusReason\\": \\"Resource ALIYUN::ECS::VPC vpc-m5eauuq80anx59v28**** could not be found for template scratch.\\",\\n \\"FailedCode\\": \\"InvalidZoneId\\",\\n \\"TemplateScratchData\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"PreferenceParameters\\": [\\n {\\n \\"ParameterKey\\": \\"DeletionPolicy\\",\\n \\"ParameterValue\\": \\"Retain\\"\\n }\\n ],\\n \\"Description\\": \\"复制VPC资源。\\",\\n \\"SourceResources\\": [\\n {\\n \\"ResourceId\\": \\"vpc-m5e7cv7e9mz69sszb****\\",\\n \\"ResourceType\\": \\"ALIYUN::ECS::VPC\\",\\n \\"RelatedResourceTypeFilter\\": [\\n \\"ALIYUN::ECS::VPC\\"\\n ]\\n }\\n ],\\n \\"SourceTag\\": {\\n \\"ResourceTags\\": {\\n \\"a\\": \\"b\\"\\n },\\n \\"ResourceTypeFilter\\": [\\n \\"ALIYUN::ECS::VPC\\"\\n ]\\n },\\n \\"SourceResourceGroup\\": {\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"ResourceTypeFilter\\": [\\n \\"ALIYUN::ECS::VPC\\"\\n ]\\n },\\n \\"LogicalIdStrategy\\": \\"LongTypePrefixAndIndexSuffix\\",\\n \\"CreateTime\\": \\"2021-12-22T01:49:22\\",\\n \\"UpdateTime\\": \\"2021-12-22T01:49:23\\",\\n \\"Stacks\\": [\\n {\\n \\"StackId\\": \\"3708bf6a-3a67-44d4-9eb1-c56704b9****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"UsageType\\": \\"ArchitectureReplication\\"\\n }\\n ],\\n \\"StackProvision\\": {\\n \\"Creatable\\": true,\\n \\"Importable\\": false\\n },\\n \\"ResourceGroupId\\": \\"rg-acfmzmhzoaad5oq\\"\\n }\\n}","type":"json"}]', 'title' => 'Get resource scenario details', 'description' => 'This topic provides an example of how to query the details of the resource scenario `ts-7f7a704cf71c49a6****` in the China (Hangzhou) region and display source node data.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplateScratch'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], ], ], 'GetTemplateSummary' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.'."\n" ."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, StackId, ChangeSetId, and StackGroupName.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'query', 'schema' => ['description' => 'The structure that contains the template body. The template body must be 1 to 524,288 bytes in length.
'."\n" .'If the length of the template body exceeds the upper limit, we recommend that you add parameters to the HTTP POST request body to prevent request failures caused by excessively long URLs.
'."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, StackId, ChangeSetId, and StackGroupName.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack or stack group that uses the template. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.'."\n" ."\n" .'This parameter takes effect only when one of the following parameters are specified: StackId, ChangeSetId, and StackGroupName.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. This parameter applies to shared and private templates.'."\n" ."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, StackId, ChangeSetId, and StackGroupName.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an Object Storage Service (OSS) bucket, such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. The template body can be up to 524,288 bytes in length.'."\n" ."\n" .'> If you do not specify the region ID of the OSS bucket, the value of RegionId is used.'."\n" ."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, StackId, ChangeSetId, and StackGroupName.'."\n" ."\n" .'The URL can be up to 1,024 bytes in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/template/demo', 'title' => ''], ], [ 'name' => 'ChangeSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the change set.'."\n" ."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, StackId, ChangeSetId, and StackGroupName.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '1f6521a4-05af-4975-afe9-bc4b45ad****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. This parameter takes effect when TemplateId is specified.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group.'."\n" ."\n" .'You can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, StackId, ChangeSetId, and StackGroupName.', 'type' => 'string', 'required' => false, 'example' => 'my-stack-group', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters that are defined in the template.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of parameter N that is defined in the template. If you do not specify the name and value of a parameter, Resource Orchestration Service (ROS) uses the default name and value that are defined in the template.'."\n" ."\n" .'Maximum value of N: 200.'."\n" ."\n" .'> The Parameters parameter is optional. If you specify Parameters, you must specify both Parameters.N.ParameterKey and Parameters.N.ParameterValue.', 'type' => 'string', 'required' => false, 'example' => 'InstanceId', 'title' => ''], 'ParameterValue' => ['description' => 'The value of parameter N that is defined in the template.'."\n" ."\n" .'Maximum value of N: 200.'."\n" ."\n" .'> The Parameters parameter is optional. If you specify Parameters, you must specify both Parameters.N.ParameterKey and Parameters.N.ParameterValue.', 'type' => 'string', 'required' => false, 'example' => 'i-rotp2e20whfrs2****', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests.
'."\n" .'The token can be up to 64 characters in length, and can contain letters, digits, hyphens (-), and underscores (\\_).
'."\n" .'For more information, see [Ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ResourceTypes' => [ 'description' => 'All resource types that are used in the template.', 'type' => 'array', 'items' => ['description' => 'The resource type that is used in the template.', 'type' => 'string', 'example' => '["ALIYUN::ECS::VPC"]', 'title' => ''], 'title' => '', 'example' => '', ], 'Description' => ['description' => 'The description of the stack template.', 'type' => 'string', 'example' => 'No description', 'title' => ''], 'Parameters' => [ 'description' => 'The declarations of the parameters in the template.', 'type' => 'array', 'items' => ['description' => 'The declaration of the parameter in the template.', 'type' => 'object', 'example' => '[{"Description":"", "Label":"Name", "NoEcho":"false", "ParameterKey":"Name", "Type":"String"}]', 'title' => ''], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'Version' => ['description' => 'The version of the template.', 'type' => 'string', 'example' => '2015-09-01', 'title' => ''], 'Metadata' => ['description' => 'The metadata that is defined in the template.', 'type' => 'object', 'example' => '{"key": "value"}', 'title' => ''], 'ResourceIdentifierSummaries' => [ 'description' => 'The resource identifier summaries.
'."\n" .'A summary describes the resource that you want to import and the properties that are used to identify the resource during the import. For example, VpcId is an identifier property of ALIYUN::ECS::VPC.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type.'."\n" ."\n" .'> The resource import feature is supported for the resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'LogicalResourceIds' => [ 'description' => 'The logical IDs of all resources of the type that is specified by ResouceType in the template.', 'type' => 'array', 'items' => ['description' => 'The logical ID of the resource of the type that is specified by ResouceType in the template.', 'type' => 'string', 'example' => '["Vpc"]', 'title' => ''], 'title' => '', 'example' => '', ], 'ResourceIdentifiers' => [ 'description' => 'The resource properties. You can use a resource property to identify the resource that you want to manage. For example, VpcId is an identifier property of ALIYUN::ECS::VPC.', 'type' => 'array', 'items' => ['description' => 'The resource property. You can use a resource property to identify the resource that you want to manage. For example, VpcId is an identifier property of ALIYUN::ECS::VPC.', 'type' => 'string', 'example' => '["VpcId"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'GetTemplateSummary', 'summary' => 'Queries the information about a template resource by using the relevant template, stack, stack group, or change set.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | StackValidationFailed | {reason}. |资源栈校验失败。reason为具体原因。|'."\n" .'| 404 | ChangeSetNotFound | The ChangeSet ({name}) of Stack ({stack}) could not be found. |更改集不存在。name为更改集名称或ID,stack为资源栈名称或ID。|'."\n" .'| 404 | ChangeSetNotFound | The ChangeSet {ID} could not be found. |更改集不存在。ID为更改集ID。|'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。|'."\n" .'| 404 | TemplateNotFound | The Tempalte ({ ID }) could not be found. |模板不存在。ID为模板ID。|'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplateSummary'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateSummary', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ResourceTypes\\": [\\n \\"[\\\\\\"ALIYUN::ECS::VPC\\\\\\"]\\"\\n ],\\n \\"Description\\": \\"No description\\",\\n \\"Parameters\\": [\\n [\\n {\\n \\"Description\\": \\"\\",\\n \\"Label\\": \\"Name\\",\\n \\"NoEcho\\": \\"false\\",\\n \\"ParameterKey\\": \\"Name\\",\\n \\"Type\\": \\"String\\"\\n }\\n ]\\n ],\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"Version\\": \\"2015-09-01\\",\\n \\"Metadata\\": {\\n \\"key\\": \\"value\\"\\n },\\n \\"ResourceIdentifierSummaries\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::ECS::VPC\\",\\n \\"LogicalResourceIds\\": [\\n \\"[\\\\\\"Vpc\\\\\\"]\\"\\n ],\\n \\"ResourceIdentifiers\\": [\\n \\"[\\\\\\"VpcId\\\\\\"]\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', ], 'ImportStacksToStackGroup' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '240282', 'abilityTreeNodes' => ['FEATURErosTBD793'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. You can call [DescribeRegions](~~131035~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a single region. It cannot exceed 255 characters and must start with a letter or number, and can include letters, numbers, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'StackArns', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'A list of ARNs for the stacks to be imported into the stack group, in the format `acs:ros:${RegionId}:${AccountId}:stack/${StackId}`. A maximum of 10 stacks can be added.', 'type' => 'array', 'items' => ['description' => 'The ARN of the stack to be imported into the stack group, in the format acs:ros:${RegionId}:${AccountId}:stack/${StackId}. A maximum of 10 stacks can be added.', 'type' => 'string', 'required' => false, 'example' => 'acs:ros:cn-hangzhou:175458000000****:stack/4a65f506-c3cc-43b6-af06-3f000000****', 'title' => ''], 'required' => true, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceDirectoryFolderIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'A list of resource directory folder IDs for the stacks to be imported. A maximum of 10 folders can be added.', 'type' => 'array', 'items' => ['description' => 'The resource directory folder ID for the stacks to be imported. A maximum of 10 folders can be added.', 'type' => 'string', 'required' => false, 'example' => '["fd-1111VL****"]', 'title' => ''], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'Ensures the idempotence of the request. This value is generated by the client and must be globally unique.'."\n" .'It cannot exceed 64 characters and can include letters, numbers, hyphens (-), and underscores (\\_).'."\n" .'For more information, see [How to Ensure Idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'OperationDescription', 'in' => 'query', 'schema' => ['description' => 'Description of the operation.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Import ops stacks to stack group', 'title' => ''], ], [ 'name' => 'OperationPreferences', 'in' => 'query', 'style' => 'json', 'schema' => ['description' => 'Operation settings for importing stacks into the stack group.'."\n" ."\n" .'Includes the following parameters:'."\n" ."\n" .'- {"FailureToleranceCount": N}'."\n" ."\n" .' Failure tolerance count. The number of accounts in which the stack can fail in each region. If this number is exceeded, the operation in that region will stop. If the operation in one region stops, it will not continue in other regions.'."\n" ."\n" .' The range of N: 0\\~20.'."\n" ."\n" .' If FailureToleranceCount is not specified, the default value is 0.'."\n" ."\n" .'- {"FailureTolerancePercentage": N}'."\n" ."\n" .' Failure tolerance percentage. The percentage of total accounts in which the stack can fail in each region. If this percentage is exceeded, the operation in that region will stop.'."\n" ."\n" .' The range of N: 0\\~100. If the percentage is not an integer, ROS will round down.'."\n" ."\n" .' If FailureTolerancePercentage is not specified, the default value is 0.'."\n" ."\n" .'- {"MaxConcurrentCount": N}'."\n" ."\n" .' Maximum concurrent account count. The number of accounts in which the stack can be deployed simultaneously in each region.'."\n" ."\n" .' The range of N: 1\\~20.'."\n" ."\n" .' If MaxConcurrentCount is not specified, the default value is 1.'."\n" ."\n" .'- {"MaxConcurrentPercentage": N} Maximum concurrent account percentage.'."\n" ."\n" .' The percentage of total accounts in which the stack can be deployed simultaneously in each region.'."\n" ."\n" .' The range of N: 1\\~100. If the percentage is not an integer, ROS will round down.'."\n" ."\n" .' If MaxConcurrentPercentage is not specified, the default value is 1.'."\n" ."\n" .'- {"RegionConcurrencyType": N}'."\n" .' Region-level concurrency type for deploying stack instances, values:'."\n" ."\n" .' - SEQUENTIAL (default): Deploy sequentially in each specified region, only one region at a time.'."\n" ."\n" .' - PARALLEL: Deploy in parallel across all specified regions.'."\n" ."\n" .'Multiple parameters are separated by commas (,).'."\n" ."\n" .'> - Do not specify both MaxConcurrentCount and MaxConcurrentPercentage.'."\n" .'>'."\n" .'> - Do not specify both FailureToleranceCount and FailureTolerancePercentage.', 'type' => 'object', 'required' => false, 'docRequired' => false, 'example' => '{"FailureToleranceCount": 1,"MaxConcurrentCount": 2}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'OperationId' => ['description' => 'Operation ID.', 'type' => 'string', 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'asynchronous', 'callback' => 'ROS::2019-09-10::GetStackGroupOperation', 'callbackInterval' => 2000, 'maxCallbackTimes' => 30], 'title' => 'ImportStacksToStackGroup', 'summary' => 'Import stacks from multiple different accounts into a stack group.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ImportStacksToStackGroup'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:ImportStacksToStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"OperationId\\": \\"6da106ca-1784-4a6f-a7e1-e723863d****\\"\\n}","type":"json"}]', ], 'ListAITaskEvents' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '227787', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'NextToken', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['title' => '', 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****w=='], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of results to be returned from a single query when the NextToken parameter is used in the query.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 50.'."\n", 'type' => 'string', 'required' => false, 'example' => '50'], ], [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the AI task.'."\n", 'type' => 'string', 'required' => false, 'example' => 't-asasas*****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F'], 'NextToken' => ['title' => '', 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", 'type' => 'string', 'required' => true, 'example' => 'AAAAAdDWBF2****w=='], 'HttpStatusCode' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" ."\n" .'* true'."\n" .'* false'."\n", 'type' => 'string', 'example' => 'true'], 'Code' => ['description' => 'The error code.'."\n", 'type' => 'string', 'example' => 'Forbidden'], 'Events' => [ 'description' => 'The events.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The event.'."\n", 'type' => 'object', 'properties' => [ 'AgentType' => [ 'description' => 'The type of the agent that is used to execute the AI task.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'* GenerateTemplateAgent'."\n" .'* FixUserTemplateAgent'."\n", 'type' => 'string', 'enumValueTitles' => ['GenerateTemplateAgent' => 'GenerateTemplateAgent', 'FixUserTemplateAgent' => 'FixUserTemplateAgent'], 'example' => 'GenerateTemplateAgent', ], 'HandlerType' => [ 'description' => 'The type of the handler that is used to execute the task.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'* TerraformTemplateGenerator'."\n" .'* TemplateGenerator'."\n" .'* ROSTemplateModifier'."\n" .'* TerraformTemplateStaticFixer'."\n" .'* TerraformTemplateDynamicFixer'."\n" .'* DocumentTemplateGenerator'."\n" .'* TerraformTemplateModifier'."\n" .'* TemplateModifier'."\n" .'* FixTemplateInputPreprocessor'."\n" .'* TemplateStaticFixer'."\n" .'* GenerateTemplateInputPreprocessor'."\n" .'* ROSTemplateGenerator'."\n" .'* TemplateDynamicFixer'."\n" .'* BaseDynamicFixer'."\n" .'* ROSTemplateStaticFixer'."\n" .'* ROSTemplateDynamicFixer'."\n", 'type' => 'string', 'enumValueTitles' => [ 'TerraformTemplateGenerator' => 'TerraformTemplateGenerator', 'TemplateGenerator' => 'TemplateGenerator', 'ROSTemplateModifier' => 'ROSTemplateModifier', 'TerraformTemplateStaticFixer' => 'TerraformTemplateStaticFixer', 'TerraformTemplateDynamicFixer' => 'TerraformTemplateDynamicFixer', 'DocumentTemplateGenerator' => 'DocumentTemplateGenerator', 'TerraformTemplateModifier' => 'TerraformTemplateModifier', 'TemplateModifier' => 'TemplateModifier', 'FixTemplateInputPreprocessor' => 'FixTemplateInputPreprocessor', 'TemplateStaticFixer' => 'TemplateStaticFixer', 'GenerateTemplateInputPreprocessor' => 'GenerateTemplateInputPreprocessor', 'ROSTemplateGenerator' => 'ROSTemplateGenerator', 'TemplateDynamicFixer' => 'TemplateDynamicFixer', 'BaseDynamicFixer' => 'BaseDynamicFixer', 'ROSTemplateStaticFixer' => 'ROSTemplateStaticFixer', 'ROSTemplateDynamicFixer' => 'ROSTemplateDynamicFixer', ], 'example' => 'ROSTemplateGenerator', ], 'HandlerProcessStatus' => [ 'description' => 'The execution state of the handler that process the AI task.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'* SUCCESS'."\n" .'* RUNNING'."\n" .'* FAILURE'."\n", 'type' => 'string', 'enumValueTitles' => ['SUCCESS' => 'SUCCESS', 'RUNNING' => 'RUNNING', 'FAILURE' => 'FAILURE'], 'example' => 'RUNNING', ], 'EventData' => ['description' => 'The details of the event.'."\n", 'type' => 'string', 'example' => 'Document template generator started.'], 'CreateTime' => ['description' => 'The time when the event was created. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2019-08-01T04:07:39'], 'EstimatedProcessingTime' => ['description' => 'The estimated execution time of the handler. Unit: seconds.'."\n", 'type' => 'string', 'example' => '60'], ], ], ], 'TaskId' => ['description' => 'The ID of the AI task.'."\n", 'type' => 'string', 'example' => 't-asasas*****'], 'TaskType' => [ 'description' => 'The type of the AI task.'."\n" ."\n" .'* GenerateTemplate: The AI task is used to generate a template.'."\n" .'* FixTemplate: The AI task is used to fix a template.'."\n", 'type' => 'string', 'enumValueTitles' => ['GenerateTemplate' => 'GenerateTemplate', 'FixTemplate' => 'FixTemplate'], 'example' => 'GenerateTemplate', ], 'TaskStatus' => [ 'description' => 'The state of the AI task.'."\n" ."\n" .'* PENDING'."\n" .'* WAITING'."\n" .'* RUNNING'."\n" .'* SUCCESS'."\n" .'* FAILURE'."\n", 'type' => 'string', 'enumValueTitles' => ['SUCCESS' => 'SUCCESS', 'RUNNING' => 'RUNNING', 'WAITING' => 'WAITING', 'PENDING' => 'PENDING', 'FAILURE' => 'FAILURE'], 'example' => 'RUNNING', ], ], ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"NextToken\\": \\"AAAAAdDWBF2****w==\\",\\n \\"HttpStatusCode\\": 200,\\n \\"Success\\": \\"true\\",\\n \\"Code\\": \\"Forbidden\\",\\n \\"Events\\": [\\n {\\n \\"AgentType\\": \\"GenerateTemplateAgent\\",\\n \\"HandlerType\\": \\"ROSTemplateGenerator\\",\\n \\"HandlerProcessStatus\\": \\"RUNNING\\",\\n \\"EventData\\": \\"Document template generator started.\\",\\n \\"CreateTime\\": \\"2019-08-01T04:07:39\\",\\n \\"EstimatedProcessingTime\\": \\"60\\"\\n }\\n ],\\n \\"TaskId\\": \\"t-asasas*****\\",\\n \\"TaskType\\": \\"GenerateTemplate\\",\\n \\"TaskStatus\\": \\"RUNNING\\"\\n}","type":"json"}]', 'title' => 'ListAITaskEvents', 'summary' => 'Queries the events of an AI task.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListAITaskEvents', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListAITasks' => [ 'summary' => 'Queries a list of AI tasks.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '227771', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'NextToken', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['title' => '', 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", 'type' => 'string', 'required' => false, 'example' => 'U12WEI6Ro2ol3wA54rBNS3Cltv2VJyA+7hP4GqbIOhmWU5mWU9ZE3cXLgDaH4KSMRfIYcIVrvtHaAzCoyfo7VQ=='], ], [ 'name' => 'MaxResults', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['title' => '', 'description' => 'The maximum number of data entries to return.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50'], ], [ 'name' => 'TaskType', 'in' => 'query', 'schema' => ['description' => 'The type of the AI task. You can filter AI tasks by task type.'."\n" ."\n" .'* GenerateTemplate: The AI task is used to generate a template.'."\n" .'* FixTemplate: The AI task is used to fix a template.'."\n" ."\n" .'If you leave this parameter empty, all task types are queried.'."\n", 'type' => 'string', 'required' => false, 'example' => 'GenerateTemplate', 'title' => ''], ], [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the AI task. You can filter AI tasks by task ID.'."\n", 'type' => 'string', 'required' => false, 'example' => 't-asasas*****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84****'], 'NextToken' => ['title' => '', 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", 'type' => 'string', 'required' => true, 'example' => 'U12WEI6Ro2ol3wA54rBNS3Cltv2VJyA+7hP4GqbIOhmWU5mWU9ZE3cXLgDaH4KSMRfIYcIVrvtHaAzCoyfo7VQ=='], 'Tasks' => [ 'description' => 'The AI tasks.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The AI task.'."\n", 'type' => 'object', 'properties' => [ 'TaskId' => ['description' => 'The ID of the AI task.'."\n", 'type' => 'string', 'example' => 't-asasas*****'."\n", 'title' => ''], 'TaskType' => [ 'description' => 'The type of the AI task.'."\n" ."\n" .'* GenerateTemplate: The AI task is used to generate a template.'."\n" .'* FixTemplate: The AI task is used to fix a template.'."\n", 'type' => 'string', 'enumValueTitles' => ['GenerateTemplate' => 'GenerateTemplate', 'FixTemplate' => 'FixTemplate'], 'example' => 'GenerateTemplate', 'title' => '', ], 'Status' => [ 'description' => 'The state of the AI task.'."\n" ."\n" .'* PENDING'."\n" .'* WAITING'."\n" .'* RUNNING'."\n" .'* SUCCESS'."\n" .'* FAILURE'."\n", 'type' => 'string', 'enumValueTitles' => ['SUCCESS' => 'SUCCESS', 'RUNNING' => 'RUNNING', 'WAITING' => 'WAITING', 'PENDING' => 'PENDING', 'FAILURE' => 'FAILURE'], 'example' => 'RUNNING', 'title' => '', ], 'StatusReason' => ['description' => 'The reason why the AI task is in the state.'."\n", 'type' => 'string', 'example' => 'Handler execution unexpected failure'."\n", 'title' => ''], 'CreateTime' => ['description' => 'The time when the AI task was created. The time is displayed in UTC. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ssZ format.'."\n", 'type' => 'string', 'example' => '2023-03-15T03:15:53', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the AI task was updated. The time is displayed in UTC. The time follows the ISO 8601 standard in the YYYY-MM-DDThh:mm:ss format.'."\n", 'type' => 'string', 'example' => '2023-11-20T22:00:50', 'title' => ''], 'Prompt' => ['description' => 'The description of the AI task.'."\n", 'type' => 'string', 'example' => 'Create an ECS instance and deploy an Nginx service', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'HttpStatusCode' => ['description' => 'The HTTP status code.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The error message.'."\n", 'type' => 'string', 'example' => 'You are not authorized to complete this action.', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" ."\n" .'* true'."\n" .'* false'."\n", 'type' => 'string', 'example' => 'true', 'title' => ''], ], 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84****\\",\\n \\"NextToken\\": \\"U12WEI6Ro2ol3wA54rBNS3Cltv2VJyA+7hP4GqbIOhmWU5mWU9ZE3cXLgDaH4KSMRfIYcIVrvtHaAzCoyfo7VQ==\\",\\n \\"Tasks\\": [\\n {\\n \\"TaskId\\": \\"t-asasas*****\\\\n\\",\\n \\"TaskType\\": \\"GenerateTemplate\\",\\n \\"Status\\": \\"RUNNING\\",\\n \\"StatusReason\\": \\"Handler execution unexpected failure\\\\n\\",\\n \\"CreateTime\\": \\"2023-03-15T03:15:53\\",\\n \\"UpdateTime\\": \\"2023-11-20T22:00:50\\",\\n \\"Prompt\\": \\"Create an ECS instance and deploy an Nginx service\\"\\n }\\n ],\\n \\"HttpStatusCode\\": 200,\\n \\"Message\\": \\"You are not authorized to complete this action.\\",\\n \\"Success\\": \\"true\\"\\n}","type":"json"}]', 'title' => 'ListAITasks', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAITasks'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListAITasks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListChangeSets' => [ 'summary' => 'Queries the details of created change sets.', 'path' => '/V2/ListChangeSets', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosM9I2VQ'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in paging query. The value must be an integer.'."\n" .'Valid values: 1 to 50.'."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the change set. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the change set list. '."\n" .'Minimum value: 1. '."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ChangeSetId', 'in' => 'query', 'schema' => ['description' => 'The change set ID. If you do not need detailed information about the change set, you can use this parameter instead of calling the GetChangeSet operation.', 'type' => 'string', 'required' => false, 'example' => '1f6521a4-05af-4975-afe9-bc4b45ad****', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The status of the change set. Maximum value of N: 5. Valid values:'."\n" .'- CREATE_PENDING'."\n" .'- CREATE_IN_PROGRESS'."\n" .'- CREATE_COMPLETE'."\n" .'- CREATE_FAILED'."\n" .'- DELETE_FAILED'."\n" .'- DELETE_COMPLETE.', 'type' => 'array', 'items' => ['description' => 'The status of the change set.', 'type' => 'string', 'required' => false, 'example' => 'CREATE_COMPLETE', 'title' => ''], 'required' => false, 'example' => 'CREATE_COMPLETE', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'ChangeSetName', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The name of the change set. Maximum value of N: 5. You can use the wildcard character asterisk (\\*) for fuzzy match.', 'type' => 'array', 'items' => ['description' => 'The name of the change set.', 'type' => 'string', 'required' => false, 'example' => 'MyChangeSet', 'title' => ''], 'required' => false, 'example' => 'MyChangeSet', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'ExecutionStatus', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The execution status of the change set. Maximum value of N: 5. Valid values:'."\n" .'- UNAVAILABLE'."\n" .'- AVAILABLE'."\n" .'- EXECUTE_IN_PROGRESS'."\n" .'- EXECUTE_COMPLETE'."\n" .'- EXECUTE_FAILED'."\n" .'- OBSOLETE.', 'type' => 'array', 'items' => ['description' => 'The execution status of the change set.', 'type' => 'string', 'required' => false, 'example' => 'AVAILABLE', 'title' => ''], 'required' => false, 'example' => 'AVAILABLE', 'maxItems' => 5, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of change sets returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page in paging query.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'PageNumber' => ['description' => 'The page number in paging query. The value is an integer with a minimum value of 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'ChangeSets' => [ 'description' => 'The change sets.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the change set.', 'type' => 'string', 'example' => 'CREATE_COMPLETE', 'title' => ''], 'StackId' => ['description' => 'The ID of the stack to which the change set belongs.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'ChangeSetName' => ['description' => 'The name of the change set.', 'type' => 'string', 'example' => 'MyChangeSet', 'title' => ''], 'Description' => ['description' => 'The description of the change set.', 'type' => 'string', 'example' => 'It is a demo.', 'title' => ''], 'ChangeSetType' => ['description' => 'The type of the change set. Valid values: CREATE, UPDATE, and DELETE.', 'type' => 'string', 'example' => 'UPDATE', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the change set is in its current status.', 'type' => 'string', 'example' => 'too many changes', 'title' => ''], 'CreateTime' => ['description' => 'The time when the change set was created. The time is displayed in UTC+0 based on the ISO 8601 standard without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2019-08-01T05:16:31', 'title' => ''], 'ChangeSetId' => ['description' => 'The ID of the change set.', 'type' => 'string', 'example' => '1f6521a4-05af-4975-afe9-bc4b45ad****', 'title' => ''], 'StackName' => ['description' => 'The name of the stack to which the change set belongs.', 'type' => 'string', 'example' => 'MyStack', 'title' => ''], 'ExecutionStatus' => ['description' => 'The execution status of the change set.', 'type' => 'string', 'example' => 'AVAILABLE', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID. '."\n" .'For more information about resource groups, see [What is a resource group?](~~94475~~).', 'type' => 'string', 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the change set.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the change set.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"PageNumber\\": 1,\\n \\"ChangeSets\\": [\\n {\\n \\"Status\\": \\"CREATE_COMPLETE\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\",\\n \\"ChangeSetName\\": \\"MyChangeSet\\",\\n \\"Description\\": \\"It is a demo.\\",\\n \\"ChangeSetType\\": \\"UPDATE\\",\\n \\"StatusReason\\": \\"too many changes\\",\\n \\"CreateTime\\": \\"2019-08-01T05:16:31\\",\\n \\"ChangeSetId\\": \\"1f6521a4-05af-4975-afe9-bc4b45ad****\\",\\n \\"StackName\\": \\"MyStack\\",\\n \\"ExecutionStatus\\": \\"AVAILABLE\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxazb4ph6aiy****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"usage\\",\\n \\"Value\\": \\"test\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query change sets', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => "\n" .'| HttpCode | Error code | Error message | Description |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |The stack does not exist. name indicates the stack name or ID. |.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListChangeSets'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListChangeSets', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], ], 'ListDiagnostics' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'DiagnosticKey', 'in' => 'query', 'schema' => ['description' => 'The keyword in the diagnosis.'."\n", 'type' => 'string', 'required' => false, 'example' => '2829A772-B154-5A0A-B61B-DEE8A9EE8A5D'], ], [ 'name' => 'DiagnosticProduct', 'in' => 'query', 'schema' => ['description' => 'The product that is diagnosed.'."\n", 'type' => 'string', 'required' => false, 'example' => 'ros'], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The diagnosis status.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Complete'], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f01****'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of results to be returned in a single call when NextToken is used for the query.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 50.'."\n", 'type' => 'string', 'required' => false, 'example' => '50'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'HttpStatusCode' => ['description' => 'The HTTP status code returned. The value 200 indicates that the request was successful.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '200'], 'Message' => ['description' => 'The error message returned.'."\n", 'type' => 'string', 'example' => 'You are not authorized to complete this action.'], 'Diagnostics' => [ 'description' => 'The items that are diagnosed.'."\n", 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'CreateTime' => ['description' => 'The time when the diagnostic report was generated.'."\n", 'type' => 'string', 'example' => '2022-08-01T02:23:55'], 'DiagnosticKey' => ['description' => 'The keyword in the diagnosis.'."\n", 'type' => 'string', 'example' => '047D84D9-D3EB-5DA8-87F1-9A7DD5598A5D'], 'DiagnosticProduct' => ['description' => 'The product that is diagnosed.'."\n", 'type' => 'string', 'example' => 'ros'], 'ReportId' => ['description' => 'The ID of the diagnostic report.'."\n", 'type' => 'string', 'example' => 'dr-2963bfbcac834f1a****'], 'Status' => ['description' => 'The diagnosis status.'."\n", 'type' => 'string', 'example' => 'success'], ], ], ], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '1983D1C4-88EA-5D7D-90AB-467D01867A5D'], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values:'."\n" ."\n" .'* true'."\n" .'* false'."\n", 'type' => 'string', 'example' => 'true'], 'NextToken' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f01****'], ], 'description' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HttpStatusCode\\": 200,\\n \\"Message\\": \\"You are not authorized to complete this action.\\",\\n \\"Diagnostics\\": [\\n {\\n \\"CreateTime\\": \\"2022-08-01T02:23:55\\",\\n \\"DiagnosticKey\\": \\"047D84D9-D3EB-5DA8-87F1-9A7DD5598A5D\\",\\n \\"DiagnosticProduct\\": \\"ros\\",\\n \\"ReportId\\": \\"dr-2963bfbcac834f1a****\\",\\n \\"Status\\": \\"success\\"\\n }\\n ],\\n \\"RequestId\\": \\"1983D1C4-88EA-5D7D-90AB-467D01867A5D\\",\\n \\"Success\\": \\"true\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f01****\\"\\n}","type":"json"}]', 'title' => 'ListDiagnostics', 'summary' => 'Queries a diagnostic report.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListDiagnostics', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListResourceTypeRegistrations' => [ 'summary' => 'Queries a list of resource registration records.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => ['operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free'], 'parameters' => [ [ 'name' => 'EntityType', 'in' => 'query', 'schema' => [ 'description' => 'The entity type. Valid values: Module.', 'enumValueTitles' => ['Module' => 'Module'], 'type' => 'string', 'required' => false, 'example' => 'Module', 'title' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. The value can contain uppercase and lowercase letters, digits, colons (:), and asterisks (*). If you use an asterisk, fuzzy match is performed.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'MODULE::MyOrganization::MyService::MyUsecase'."\n", 'title' => ''], ], [ 'name' => 'RegistrationId', 'in' => 'query', 'schema' => ['description' => 'The registration ID.', 'type' => 'string', 'required' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'The registration status. Valid values:'."\n" .'- IN_PROGRESS: In progress.'."\n" .'- COMPLETE: Succeeded.'."\n" .'- FAILED: Failed.', 'enumValueTitles' => ['IN_PROGRESS' => 'IN_PROGRESS', 'COMPLETE' => 'COMPLETE', 'FAILED' => 'FAILED'], 'type' => 'string', 'required' => false, 'example' => 'COMPLETE', 'title' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number for paging. Minimum value: 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for paging. Valid values: 1 to 50. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'Registrations' => [ 'description' => 'The list of resource registration records.', 'type' => 'array', 'items' => [ 'description' => 'The resource registration record.', 'type' => 'object', 'properties' => [ 'RegistrationId' => ['description' => 'The registration ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****'."\n", 'title' => ''], 'EntityType' => [ 'description' => 'The entity type. Valid values: Module.', 'enumValueTitles' => ['Module' => 'Module'], 'type' => 'string', 'example' => 'Module', 'title' => '', ], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], 'VersionId' => ['description' => 'The version ID.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'Status' => [ 'description' => 'The registration status. Valid values:'."\n" .'- IN_PROGRESS: In progress.'."\n" .'- COMPLETE: Succeeded.'."\n" .'- FAILED: Failed.', 'enumValueTitles' => ['IN_PROGRESS' => 'IN_PROGRESS', 'COMPLETE' => 'COMPLETE', 'FAILED' => 'FAILED'], 'type' => 'string', 'example' => 'COMPLETE', 'title' => '', ], 'StatusReason' => ['description' => 'The reason for the status.', 'type' => 'string', 'example' => 'Module is created successfully', 'title' => ''], 'CreateTime' => ['description' => 'The time when the registration record was created. The time is displayed in UTC+0 based on the ISO 8601 standard but without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2023-03-02T07:28:35', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The page number for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of registration records.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"Registrations\\": [\\n {\\n \\"RegistrationId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\\\n\\",\\n \\"EntityType\\": \\"Module\\",\\n \\"ResourceType\\": \\"MODULE::MyOrganization::MyService::MyUsecase\\",\\n \\"VersionId\\": \\"v1\\",\\n \\"Status\\": \\"COMPLETE\\",\\n \\"StatusReason\\": \\"Module is created successfully\\",\\n \\"CreateTime\\": \\"2023-03-02T07:28:35\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1\\n}","type":"json"}]', 'title' => 'Query resource registration records', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListResourceTypeRegistrations'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListResourceTypeRegistrations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListResourceTypeVersions' => [ 'summary' => 'Queries the list of resource type versions, including resource types created by the user and those provided by Resource Orchestration Service (ROS).', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'ResourceTypeVersions' => [ 'description' => 'The list of resource type version information.', 'type' => 'array', 'items' => [ 'description' => 'The resource type version information.', 'type' => 'object', 'properties' => [ 'Provider' => [ 'description' => 'The resource type provider. Valid values:'."\n" .'- ROS: Resource Orchestration Service.'."\n" .'- Self: The user.', 'enumValueTitles' => ['ROS' => 'ROS', 'Self' => 'Self'], 'type' => 'string', 'example' => 'ROS', 'title' => '', ], 'EntityType' => [ 'description' => 'The entity type. Valid values: Module, which indicates a module.', 'enumValueTitles' => ['Module' => 'Module'], 'type' => 'string', 'example' => 'Module', 'title' => '', ], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], 'IsDefaultVersion' => ['description' => 'Indicates whether the version is the default version. Valid values:'."\n" .'- true: The version is the default version.'."\n" .'- false: The version is not the default version.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'CreateTime' => ['description' => 'The time when the version was created. The time is displayed in UTC+0 based on the ISO 8601 standard but without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2023-02-24T08:25:21', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the version was last updated. The time is displayed in UTC+0 based on the ISO 8601 standard but without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2023-02-24T08:25:21', 'title' => ''], 'VersionId' => ['description' => 'The version ID.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'Description' => ['description' => 'The version description.', 'type' => 'string', 'example' => 'It is a demo.', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"ResourceTypeVersions\\": [\\n {\\n \\"Provider\\": \\"ROS\\",\\n \\"EntityType\\": \\"Module\\",\\n \\"ResourceType\\": \\"MODULE::MyOrganization::MyService::MyUsecase\\",\\n \\"IsDefaultVersion\\": true,\\n \\"CreateTime\\": \\"2023-02-24T08:25:21\\",\\n \\"UpdateTime\\": \\"2023-02-24T08:25:21\\",\\n \\"VersionId\\": \\"v1\\",\\n \\"Description\\": \\"It is a demo.\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query resource type versions', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListResourceTypeVersions'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListResourceTypeVersions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListResourceTypes' => [ 'summary' => 'Queries the list of supported resource types.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'EntityType', 'in' => 'query', 'schema' => [ 'description' => 'The entity type. Valid values: '."\n" ."\n" .'- All: all resource types.'."\n" ."\n" .'- Resource (default): regular resource types. For more information, see [Resources](~~28863~~).'."\n" ."\n" .'- DataSource: data source resource types. For more information, see [Data source resources](~~404753~~).'."\n" ."\n" .'- Module: modules.', 'enumValueTitles' => ['All' => 'All', 'Resource' => 'Resource', 'Module' => 'Module', 'DataSource' => 'DataSource'], 'type' => 'string', 'required' => false, 'example' => 'Resource', 'title' => '', ], ], [ 'name' => 'Provider', 'in' => 'query', 'schema' => [ 'description' => 'The resource type provider. Valid values:'."\n" .'- ROS (default): Resource Orchestration Service.'."\n" .'- Self: the user.', 'enumValueTitles' => ['ROS' => 'ROS', 'Self' => 'Self'], 'type' => 'string', 'required' => false, 'example' => 'ROS', 'title' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. The value can contain uppercase and lowercase letters, digits, colons (:), and asterisks (\\*). If an asterisk is used, fuzzy match is performed.', 'type' => 'string', 'required' => false, 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ResourceTypes' => [ 'description' => 'The resource type array.', 'type' => 'array', 'items' => ['description' => 'The resource type array.', 'type' => 'string', 'example' => '["ALIYUN::ECS::Instance","ALIYUN::RDS::Instance"]', 'title' => ''], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'EA00860C-ECAF-5253-A1F9-8198695A7157', 'title' => ''], 'ResourceTypeSummaries' => [ 'description' => 'The resource type summary list.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Provider' => [ 'description' => 'The resource type provider. Valid values:'."\n" .'- ROS: Resource Orchestration Service.'."\n" .'- Self: the user.', 'enumValueTitles' => ['ROS' => 'ROS', 'Self' => 'Self'], 'type' => 'string', 'example' => 'ROS', 'title' => '', ], 'EntityType' => [ 'description' => 'The entity type. Valid values: '."\n" .'- Resource: regular resource type.'."\n" .'- DataSource: data source resource type. '."\n" .'- Module: module.', 'enumValueTitles' => ['Resource' => 'Resource', 'Module' => 'Module', 'DataSource' => 'DataSource'], 'type' => 'string', 'example' => 'Module', 'title' => '', ], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], 'DefaultVersionId' => ['description' => 'The default version ID.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'LatestVersionId' => ['description' => 'The latest version ID.', 'type' => 'string', 'example' => 'v10', 'title' => ''], 'CreateTime' => ['description' => 'The creation time. The time is displayed in UTC+0 based on the ISO 8601 standard but without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2023-02-24T08:25:21', 'title' => ''], 'UpdateTime' => ['description' => 'The update time. The time is displayed in UTC+0 based on the ISO 8601 standard but without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2023-02-24T08:25:21', 'title' => ''], 'Description' => ['description' => 'The resource type description.', 'type' => 'string', 'example' => 'It is a demo.', 'title' => ''], 'TotalVersionCount' => ['description' => 'The total number of versions.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ResourceTypes\\": [\\n \\"[\\\\\\"ALIYUN::ECS::Instance\\\\\\",\\\\\\"ALIYUN::RDS::Instance\\\\\\"]\\"\\n ],\\n \\"RequestId\\": \\"EA00860C-ECAF-5253-A1F9-8198695A7157\\",\\n \\"ResourceTypeSummaries\\": [\\n {\\n \\"Provider\\": \\"ROS\\",\\n \\"EntityType\\": \\"Module\\",\\n \\"ResourceType\\": \\"MODULE::MyOrganization::MyService::MyUsecase\\",\\n \\"DefaultVersionId\\": \\"v1\\",\\n \\"LatestVersionId\\": \\"v10\\",\\n \\"CreateTime\\": \\"2023-02-24T08:25:21\\",\\n \\"UpdateTime\\": \\"2023-02-24T08:25:21\\",\\n \\"Description\\": \\"It is a demo.\\",\\n \\"TotalVersionCount\\": 10\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query supported resource types', 'description' => 'This topic provides an example of how to query the list of regular resource types supported by ROS.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' For a list of error codes, visit [Common error codes](~~131033~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListResourceTypes'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListResourceTypes', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListStackEvents' => [ 'summary' => 'Queries events of a stack and the resources in the stack.', 'path' => '/V2/ListStackEvents', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in a paged query. Settings for paging. '."\n" .'Maximum value: 50. '."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the event list. '."\n" .'Minimum value: 1. '."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The resource status.', 'type' => 'array', 'items' => ['description' => 'The resource status. Valid values:'."\n" ."\n" .'- CREATE_COMPLETE'."\n" .'- CREATE_FAILED'."\n" .'- CREATE_IN_PROGRESS'."\n" .'- UPDATE_IN_PROGRESS'."\n" .'- UPDATE_FAILED'."\n" .'- UPDATE_COMPLETE'."\n" .'- UPDATE_SKIPPED'."\n" .'- DELETE_IN_PROGRESS'."\n" .'- DELETE_FAILED'."\n" .'- CHECK_IN_PROGRESS'."\n" .'- CHECK_FAILED'."\n" .'- CHECK_COMPLETE'."\n" .'- IMPORT_IN_PROGRESS'."\n" .'- IMPORT_FAILED'."\n" .'- IMPORT_COMPLETE.', 'type' => 'string', 'required' => false, 'example' => 'CREATE_IN_PROGRESS', 'title' => ''], 'required' => false, 'example' => 'CREATE_IN_PROGRESS', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The resource type list.', 'type' => 'array', 'items' => ['description' => 'The resource type list. Maximum value of N: 200.'."\n" .'For more information about resource types, see [Resource type index](~~127039~~).', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::ECS::Instance', 'title' => ''], 'required' => false, 'example' => 'ALIYUN::ECS::Instance', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'LogicalResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The logical resource ID.', 'type' => 'array', 'items' => ['description' => 'The logical resource ID, which is the resource name defined in the template.', 'type' => 'string', 'required' => false, 'example' => 'WebServer', 'title' => ''], 'required' => false, 'example' => 'WebServer', 'maxItems' => 5, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of events.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page in a paged query. Settings for paging. '."\n" .'Maximum value: 50. '."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the event list. '."\n" .'Minimum value: 1. '."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Events' => [ 'description' => 'The list of event objects.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the resource.', 'type' => 'string', 'example' => 'CREATE_COMPLETE', 'title' => ''], 'EventId' => ['description' => 'The event ID.', 'type' => 'string', 'example' => '0086612d-77cf-4056-b0b5-ff8e94ad****', 'title' => ''], 'LogicalResourceId' => ['description' => 'The logical resource ID, which is the resource name defined in the template.', 'type' => 'string', 'example' => 'WebServer', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'PhysicalResourceId' => ['description' => 'The physical ID of the resource.', 'type' => 'string', 'example' => 'i-m5e3tfdbinchnexh****', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::Instance', 'title' => ''], 'StatusReason' => ['description' => 'The reason for the status.', 'type' => 'string', 'example' => 'state changed', 'title' => ''], 'CreateTime' => ['description' => 'The time when the event was created. The time is displayed in UTC+0 and follows the ISO 8601 standard without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2019-08-01T04:07:39', 'title' => ''], 'StackName' => ['description' => 'The stack name.', 'type' => 'string', 'example' => 'StackName', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 20,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"PageNumber\\": 1,\\n \\"Events\\": [\\n {\\n \\"Status\\": \\"CREATE_COMPLETE\\",\\n \\"EventId\\": \\"0086612d-77cf-4056-b0b5-ff8e94ad****\\",\\n \\"LogicalResourceId\\": \\"WebServer\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\",\\n \\"PhysicalResourceId\\": \\"i-m5e3tfdbinchnexh****\\",\\n \\"ResourceType\\": \\"ALIYUN::ECS::Instance\\",\\n \\"StatusReason\\": \\"state changed\\",\\n \\"CreateTime\\": \\"2019-08-01T04:07:39\\",\\n \\"StackName\\": \\"StackName\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query events of a stack and its resources', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | Error code | Error message | Description |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. | The stack does not exist. name indicates the stack name or ID. |.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackEvents'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackEvents', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], ], 'ListStackGroupOperationResults' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'OperationId', 'in' => 'query', 'schema' => ['description' => 'The ID of the operation.'."\n" ."\n" .'You can call the [ListStackGroupOperations](~~151342~~) operation to query the operation ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.'."\n" ."\n" .'- Valid values: 1 to 50.'."\n" ."\n" .'- Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The number of the page to return.'."\n" ."\n" .'- Pages start from page 1.'."\n" ."\n" .'- Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of results.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'StackGroupOperationResults' => [ 'description' => 'The details of the results of the operation.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the operation.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- RUNNING: The operation is being performed.'."\n" ."\n" .'- SUCCEEDED: The operation succeeded.'."\n" ."\n" .'- FAILED: The operation failed.'."\n" ."\n" .'- STOPPING: The operation is being stopped.'."\n" ."\n" .'- STOPPED: The operation is stopped.', 'type' => 'string', 'example' => 'SUCCEEDED', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the operation is in a specific state.'."\n" ."\n" .'> This parameter is returned only when stack instances are in the OUTDATED state.', 'type' => 'string', 'example' => 'User initiated operation', 'title' => ''], 'AccountId' => ['description' => 'The ID of the account to which the stack instance belongs.'."\n" ."\n" .'- If the stack group has self-managed permissions, the stack instance belongs to an Alibaba Cloud account.'."\n" ."\n" .'- If the stack group has service-managed permissions, the stack instance belongs to a member account in the resource directory.'."\n" ."\n" .'> For more information about the account, see [Overview](~~154578~~).', 'type' => 'string', 'example' => '175458090349****', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the stack instance.', 'type' => 'string', 'example' => 'cn-beijing', 'title' => ''], 'RdFolderId' => ['description' => 'The folder ID of the resource directory.'."\n" ."\n" .'> This parameter is returned only when the stack group is granted service-managed permissions.', 'type' => 'string', 'example' => '"fd-4PvlVLOL8v"', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListStackGroupOperationResults', 'summary' => 'Queries the results of an operation on a stack group.', 'description' => 'In this example, the operation ID `6da106ca-1784-4a6f-a7e1-e723863d∗∗∗∗` is set to query the results of an operation on a stack group named `MyStackGroup`. The stack group is granted self-managed permissions and created in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => '| Error code | Error message | HTTP status code | Description |'."\n" .'| ---------------- | ---------------------------------------------------- | ---------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| InvalidParameter | The specified parameter {name} is invalid, {reason}. | 400 | The error message returned because the specified parameter is invalid. name indicates the parameter name. reason indicates the reason for the error. |', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackGroupOperationResults'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackGroupOperationResults', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"PageSize\\": 1,\\n \\"PageNumber\\": 1,\\n \\"StackGroupOperationResults\\": [\\n {\\n \\"Status\\": \\"SUCCEEDED\\",\\n \\"StatusReason\\": \\"User initiated operation\\",\\n \\"AccountId\\": \\"175458090349****\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"RdFolderId\\": \\"\\\\\\"fd-4PvlVLOL8v\\\\\\"\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListStackGroupOperations' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region.'."\n" ."\n" .'The name can be up to 255 characters in length and can contain digits, letters, hyphens (-), and underscores (\\_). It must start with a digit or letter.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.'."\n" ."\n" .'Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The number of the page to return.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of stack group operations.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'StackGroupOperations' => [ 'description' => 'The stack group operations.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The state of the operation.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- RUNNING'."\n" ."\n" .'- SUCCEEDED'."\n" ."\n" .'- FAILED'."\n" ."\n" .'- STOPPING'."\n" ."\n" .'- STOPPED', 'type' => 'string', 'example' => 'SUCCEEDED', 'title' => ''], 'StackGroupId' => ['description' => 'The ID of the stack group.', 'type' => 'string', 'example' => 'fd0ddef9-9540-4b42-a464-94f77835****', 'title' => ''], 'EndTime' => ['description' => 'The time when the operation ended.', 'type' => 'string', 'example' => '2020-01-20T09:22:41.000000', 'title' => ''], 'Action' => ['description' => 'The operation type.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- CREATE'."\n" ."\n" .'- UPDATE'."\n" ."\n" .'- DELETE'."\n" ."\n" .'- DETECT\\_DRIFT', 'type' => 'string', 'example' => 'CREATE', 'title' => ''], 'CreateTime' => ['description' => 'The time when the operation was initiated.', 'type' => 'string', 'example' => '2020-01-20T09:22:36.000000', 'title' => ''], 'StackGroupName' => ['description' => 'The name of the stack group.', 'type' => 'string', 'example' => 'MyStackGroup', 'title' => ''], 'OperationId' => ['description' => 'The operation ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761****', 'title' => ''], 'OperationDescription' => ['description' => 'The description of the operation.', 'type' => 'string', 'example' => 'Create stack instance in hangzhou', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListStackGroupOperations', 'summary' => 'Queries the information about stack group operations in an Alibaba Cloud region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n" .'| StackGroupNotFound |The StackGroup ({name}) could not be found. | 404 |资源栈组不存在。name为资源栈组名称。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackGroupOperations'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackGroupOperations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"StackGroupOperations\\": [\\n {\\n \\"Status\\": \\"SUCCEEDED\\",\\n \\"StackGroupId\\": \\"fd0ddef9-9540-4b42-a464-94f77835****\\",\\n \\"EndTime\\": \\"2020-01-20T09:22:41.000000\\",\\n \\"Action\\": \\"CREATE\\",\\n \\"CreateTime\\": \\"2020-01-20T09:22:36.000000\\",\\n \\"StackGroupName\\": \\"MyStackGroup\\",\\n \\"OperationId\\": \\"14A07460-EBE7-47CA-9757-12CC4761****\\",\\n \\"OperationDescription\\": \\"Create stack instance in hangzhou\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListStackGroups' => [ 'summary' => 'Queries stack groups in a region.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12703', 'abilityTreeNodes' => ['FEATUREros4U80G2'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. Call [DescribeRegions](~~131035~~) to query available regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the stack group. If not specified, stack groups in all states are returned.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- ACTIVE: The stack group is active.'."\n" ."\n" .'- DELETED: The stack group is deleted.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'ACTIVE', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.'."\n" ."\n" .'- Valid values: 1 to 50.'."\n" ."\n" .'- Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'- Starts from 1.'."\n" ."\n" .'- Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. If not specified, stack groups in all resource groups are returned.'."\n" ."\n" .'> You can find the resource group ID on the **Resource Groups** page in the **Resource Management** console. [View the basic information of a resource group](~~151181~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmzawhxxcj****', 'title' => ''], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the stack group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack group.'."\n" ."\n" .'> Tags is optional. If you specify Tags, Tags.N.Key is required.', 'type' => 'string', 'required' => true, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack group.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'StackGroups' => [ 'description' => 'The stack groups.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'StackGroupId' => ['description' => 'The ID of the stack group.', 'type' => 'string', 'example' => 'fd0ddef9-9540-4b42-a464-94f77835****', 'title' => ''], 'Status' => ['description' => 'The status of the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- ACTIVE'."\n" ."\n" .'- DELETED', 'type' => 'string', 'example' => 'ACTIVE', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time of the last successful drift detection on the stack group.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'Description' => ['description' => 'The description of the stack group.', 'type' => 'string', 'example' => 'My Stack Group', 'title' => ''], 'StackGroupDriftStatus' => ['description' => 'The drift status of the stack group from the last successful drift detection.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- DRIFTED: The stack group has drifted from its template.'."\n" ."\n" .'- NOT\\_CHECKED: No drift detection has been performed.'."\n" ."\n" .'- IN\\_SYNC: The stack group matches its template.', 'type' => 'string', 'example' => 'IN_SYNC', 'title' => ''], 'StackGroupName' => ['description' => 'The name of the stack group.', 'type' => 'string', 'example' => 'MyStackGroup', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the stack group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack group.', 'type' => 'string', 'example' => 'usage1', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack group.', 'type' => 'string', 'example' => 'test1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-acfmzawhxxcj****', 'title' => ''], 'PermissionModel' => ['description' => 'The permission model.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- SELF\\_MANAGED: self-managed permissions.'."\n" ."\n" .'- SERVICE\\_MANAGED: service-managed permissions.'."\n" ."\n" .'> For details on permission models of stack groups, see [Overview](~~154578~~).', 'type' => 'string', 'example' => 'SELF_MANAGED', 'title' => ''], 'AutoDeployment' => [ 'description' => 'The automatic deployment settings.', 'type' => 'object', 'properties' => [ 'Enabled' => ['description' => 'Whether automatic deployment is enabled.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: Automatic deployment is enabled. When a member account is added to the target folder, ROS deploys a stack instance for it. When a member account is removed, ROS deletes the stack instance.'."\n" ."\n" .'- false: Automatic deployment is disabled. Stack instances remain unchanged when folder membership changes.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'RetainStacksOnAccountRemoval' => ['description' => 'Whether stacks are retained when member accounts are removed from the folder.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: The stacks are retained.'."\n" ."\n" .'- false: The stacks are deleted.'."\n" ."\n" .'> Returned only when Enabled is true.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'CreateTime' => ['description' => 'The creation time of the stack group.', 'type' => 'string', 'example' => '2024-01-05T05:38:31', 'title' => ''], 'UpdateTime' => ['description' => 'The last update time of the stack group.', 'type' => 'string', 'example' => '2024-02-15T16:40:25', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'TotalCount' => ['description' => 'The total number of stack groups.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListStackGroups', 'description' => 'This example queries stack groups in the ACTIVE state in the China (Hangzhou) region.', 'requestParamsDescription' => 'For common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackGroups'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackGroups', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"StackGroups\\": [\\n {\\n \\"StackGroupId\\": \\"fd0ddef9-9540-4b42-a464-94f77835****\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"Description\\": \\"My Stack Group\\",\\n \\"StackGroupDriftStatus\\": \\"IN_SYNC\\",\\n \\"StackGroupName\\": \\"MyStackGroup\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"usage1\\",\\n \\"Value\\": \\"test1\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxcj****\\",\\n \\"PermissionModel\\": \\"SELF_MANAGED\\",\\n \\"AutoDeployment\\": {\\n \\"Enabled\\": true,\\n \\"RetainStacksOnAccountRemoval\\": true\\n },\\n \\"CreateTime\\": \\"2024-01-05T05:38:31\\",\\n \\"UpdateTime\\": \\"2024-02-15T16:40:25\\"\\n }\\n ],\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1\\n}","type":"json"}]', ], 'ListStackInstances' => [ 'summary' => 'Queries the list of stack instances that are associated with a stack group in an Alibaba Cloud region.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosTBD793'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region.
'."\n" .'The name can be up to 255 characters in length, and can contain digits, letters, hyphens (-), and underscores (\\_). It must start with a digit or letter.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'StackInstanceAccountId', 'in' => 'query', 'schema' => ['description' => 'The ID of the destination account to which the stack belongs.'."\n" ."\n" .'- If the stack group is granted self-managed permissions, the stack belongs to an Alibaba Cloud account.'."\n" ."\n" .'- If the stack group is granted service-managed permissions, the stack belongs to a member in a resource directory.'."\n" ."\n" .'> For more information about the destination account, see [Overview](~~154578~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '156552876021****', 'title' => ''], ], [ 'name' => 'StackInstanceRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.'."\n" ."\n" .'- Valid values: 1 to 50.'."\n" ."\n" .'- Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The number of the page to return.'."\n" ."\n" .'- Pages start from page 1.'."\n" ."\n" .'- Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of stacks.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '85DE34BD-7FF9-480F-8C21-556E9DA93ACD', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'StackInstances' => [ 'description' => 'The stacks.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The state of the stack.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- CURRENT: The stack is up-to-date with the stack group.'."\n" ."\n" .'- OUTDATED: The stack is not up-to-date with the stack group. Stacks are in the OUTDATED state due to the following possible reasons:'."\n" ."\n" .' - When the CreateStackInstances operation is called to create stacks, the stacks fail to be created.'."\n" ."\n" .' - When the UpdateStackInstances or UpdateStackGroup operation is called to update stacks, the stacks fail to be updated, or only specific stacks are updated.'."\n" ."\n" .' - The creation or update operation is not complete.', 'type' => 'string', 'example' => 'CURRENT', 'title' => ''], 'StackGroupId' => ['description' => 'The ID of the stack group.', 'type' => 'string', 'example' => 'fd0ddef9-9540-4b42-a464-94f77835****', 'title' => ''], 'StackId' => ['description' => 'The stack ID.'."\n" ."\n" .'> This parameter is returned only if the stack is in the CURRENT state.', 'type' => 'string', 'example' => '35ad60e3-6a92-42d8-8812-f0700d45****', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the last successful drift detection was performed on the stack.'."\n" ."\n" .'> This parameter is returned only if drift detection is performed on the stack group.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'StackDriftStatus' => ['description' => 'The state of the stack when the last successful drift detection was performed on the stack group.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- DRIFTED: The stack has drifted.'."\n" ."\n" .'- NOT\\_CHECKED: No successful drift detection is performed on the stack.'."\n" ."\n" .'- IN\\_SYNC: The stack is being synchronized.'."\n" ."\n" .'> This parameter is returned only if drift detection is performed on the stack group.', 'type' => 'string', 'example' => 'IN_SYNC', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the stack instance is in the OUTDATED state.'."\n" ."\n" .'> This parameter is returned only if the stack instance is in the OUTDATED state.', 'type' => 'string', 'example' => 'User initiated stop', 'title' => ''], 'StackGroupName' => ['description' => 'The name of the stack group.', 'type' => 'string', 'example' => 'MyStackGroup', 'title' => ''], 'AccountId' => ['description' => 'The ID of the destination account to which the stack belongs.', 'type' => 'string', 'example' => '156552876021****', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the stack.', 'type' => 'string', 'example' => 'cn-beijing', 'title' => ''], 'RdFolderId' => ['description' => 'The ID of the folder in the resource directory.'."\n" ."\n" .'> This parameter is returned only if the stack group is granted service-managed permissions.', 'type' => 'string', 'example' => 'fd-4PvlVLOL8v', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListStackInstances', 'description' => 'In this example, the list of stack instances that are associated with a stack group named `MyStackGroup` is queried. The stack group is granted self-managed permissions and deployed in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n" .'| StackGroupNotFound |The StackGroup ({name}) could not be found. | 404 |资源栈组不存在。name为资源栈组名称。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackInstances'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"85DE34BD-7FF9-480F-8C21-556E9DA93ACD\\",\\n \\"PageSize\\": 1,\\n \\"PageNumber\\": 1,\\n \\"StackInstances\\": [\\n {\\n \\"Status\\": \\"CURRENT\\",\\n \\"StackGroupId\\": \\"fd0ddef9-9540-4b42-a464-94f77835****\\",\\n \\"StackId\\": \\"35ad60e3-6a92-42d8-8812-f0700d45****\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"StackDriftStatus\\": \\"IN_SYNC\\",\\n \\"StatusReason\\": \\"User initiated stop\\",\\n \\"StackGroupName\\": \\"MyStackGroup\\",\\n \\"AccountId\\": \\"156552876021****\\",\\n \\"RegionId\\": \\"cn-beijing\\",\\n \\"RdFolderId\\": \\"fd-4PvlVLOL8v\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListStackOperationRisks' => [ 'summary' => 'Detects stack-related operation risks and returns missing permissions and the causes of the risks.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691**** ', 'title' => ''], ], [ 'name' => 'OperationType', 'in' => 'query', 'schema' => ['description' => 'The type of the operation of which you want to detect risks. Valid values:'."\n" ."\n" .'- DeleteStack: detects high risks that may arise in resources when you delete a stack.'."\n" ."\n" .'- CreateStack: detects the missing permissions when you fail to create a stack.', 'type' => 'string', 'required' => false, 'docRequired' => true, 'example' => 'DeleteStack', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can be up to 64 characters in length, and can contain letters, digits, hyphens (-), and underscores (\\_). For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544**** ', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM role.'."\n" ."\n" .'- If you specify a RAM role, ROS creates stacks based on the permissions that are granted to the RAM role and uses the credentials of the RAM role to call the API operations of Alibaba Cloud services.'."\n" ."\n" .'- If you do not specify a RAM role, ROS creates stacks based on the permissions of your Alibaba Cloud account.'."\n" ."\n" .'The name of the RAM role can be up to 64 bytes in length.', 'type' => 'string', 'required' => false, 'example' => 'test-role', 'title' => ''], ], [ 'name' => 'RetainAllResources', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to retain all resources in the stack. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false (default)'."\n" ."\n" .'> This parameter takes effect only if you set OperationType to DeleteStack.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RetainResources', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of resources to retain.'."\n" ."\n" .'> This parameter takes effect only if you set OperationType to DeleteStack.', 'type' => 'array', 'items' => ['description' => 'The resource that you want to retain.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], 'required' => false, 'example' => 'WebServer', 'maxItems' => 200, 'title' => '', ], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure that contains the template body. The template body must be 1 to 524,288 bytes in length. If the length of the template body exceeds the upper limit, we recommend that you add parameters to the HTTP POST request body to prevent request failures caused by excessively long URLs.'."\n" ."\n" .'> You must and can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an Object Storage Service (OSS) bucket, such as oss\\://ros/stack-policy/demo and oss\\://ros/stack-policy/demo?RegionId=cn-hangzhou. The template body can be up to 524,288 bytes in length. If you do not specify RegionId in the URL, the region ID of the stack is used.'."\n" ."\n" .'> You must specify one of TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the template. This parameter applies to shared and private templates.'."\n" ."\n" .'> You must specify one of TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template.'."\n" ."\n" .'> This parameter takes effect only if you specify TemplateId.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '72108E7A-E874-4A5E-B22C-A61E94AD12CD', 'title' => ''], 'RiskResources' => [ 'description' => 'The resources that are at risk.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LogicalResourceId' => ['description' => 'The logical ID of the resource. The logical ID is the resource name that is defined in the template.', 'type' => 'string', 'example' => 'MySG', 'title' => ''], 'PhysicalResourceId' => ['description' => 'The physical ID of the resource. The physical ID is the actual ID of the resource.', 'type' => 'string', 'example' => 'sg-bp1dpioafqphedg9****', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request when the risk detection fails.'."\n" ."\n" .'> This parameter is not returned if the risk detection is successful.', 'type' => 'string', 'example' => 'DF4296CF-F45F-4845-A72B-BE617601DB25', 'title' => ''], 'ResourceType' => ['description' => 'The type of the resource.', 'type' => 'string', 'example' => 'ALIYUN::ECS::SecurityGroup', 'title' => ''], 'Code' => ['description' => 'The error code that is returned when the risk detection fails.'."\n" ."\n" .'> This parameter is not returned if the risk detection is successful.', 'type' => 'string', 'example' => 'NoPermission', 'title' => ''], 'Message' => ['description' => 'The error message that is returned when the risk detection fails.'."\n" ."\n" .'> This parameter is not returned if the risk detection is successful.', 'type' => 'string', 'example' => 'You are not authorized to complete this action.', 'title' => ''], 'RiskType' => ['description' => 'The type of the risk. Valid values:'."\n" ."\n" .'- Referenced: The resource is referenced by other resources.'."\n" ."\n" .'- MaybeReferenced: The resource may be referenced by other resources.'."\n" ."\n" .'- AdditionalRiskCheckRequired: An additional risk detection is required for a nested stack.'."\n" ."\n" .'- OperationIgnored: The operation does not take effect for the resource.', 'type' => 'string', 'example' => 'Referenced', 'title' => ''], 'Reason' => ['description' => 'The cause of the risk.', 'type' => 'string', 'example' => 'There are some ECS instances (i-bp18el96s4wq635e****) depending on the security group.', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'MissingPolicyActions' => [ 'description' => 'The operations on which the permissions are not granted to the Alibaba Cloud account of the caller.', 'type' => 'array', 'items' => ['description' => 'The operation on which the permissions are not granted to the Alibaba Cloud account of the caller.', 'type' => 'string', 'example' => '["ecs:DescribeInstance", "ros:CreateStack"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListStackOperationRisks', 'description' => 'The ListStackOperationRisks operation is suitable for the following scenarios:'."\n" ."\n" .'- You want to detect high risks that may arise in resources when you delete a stack that contains the resources, and query the cause of each risk in a resource.'."\n" ."\n" .'- When you create a stack, the creation may fail. In this case, you can call this operation to check which types of permissions that are required to create stacks are missing.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackOperationRisks'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackOperationRisks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"72108E7A-E874-4A5E-B22C-A61E94AD12CD\\",\\n \\"RiskResources\\": [\\n {\\n \\"LogicalResourceId\\": \\"MySG\\",\\n \\"PhysicalResourceId\\": \\"sg-bp1dpioafqphedg9****\\",\\n \\"RequestId\\": \\"DF4296CF-F45F-4845-A72B-BE617601DB25\\",\\n \\"ResourceType\\": \\"ALIYUN::ECS::SecurityGroup\\",\\n \\"Code\\": \\"NoPermission\\",\\n \\"Message\\": \\"You are not authorized to complete this action.\\",\\n \\"RiskType\\": \\"Referenced\\",\\n \\"Reason\\": \\"There are some ECS instances (i-bp18el96s4wq635e****) depending on the security group.\\"\\n }\\n ],\\n \\"MissingPolicyActions\\": [\\n \\"[\\\\\\"ecs:DescribeInstance\\\\\\", \\\\\\"ros:CreateStack\\\\\\"]\\"\\n ]\\n}","type":"json"}]', ], 'ListStackResourceDrifts' => [ 'summary' => 'The query token. Set this parameter to the NextToken value returned in the last API call.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The physical ID of the resource.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The time when the resource drift detection operation was initiated.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '50', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The type of the resource.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'AAAAAdDWBF2****w==', 'title' => ''], ], [ 'name' => 'ResourceDriftStatus', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The resource properties as defined in the template, in JSON format.', 'type' => 'array', 'items' => ['description' => 'The drift status of the resource. Valid values:'."\n" ."\n" .'- DELETED: The actual configuration of the resource differs from its expected template configuration because the resource had been deleted.'."\n" ."\n" .'- MODIFIED: The actual configuration of the resource differs from its expected template configuration.'."\n" ."\n" .'- NOT\\_CHECKED: ROS has not checked whether the actual configuration of the resource differs from its expected template configuration.'."\n" ."\n" .'- IN\\_SYNC: The actual configuration of the resource matches its expected template configuration.', 'type' => 'string', 'required' => false, 'example' => 'MODIFIED', 'title' => ''], 'required' => false, 'example' => 'MODIFIED', 'maxItems' => 4, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ResourceDrifts' => [ 'description' => 'The resource drifts.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LogicalResourceId' => ['description' => 'The logical ID of the resource. The logical ID indicates the name of the resource that is defined in the template.', 'type' => 'string', 'example' => 'ScalingRule', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'PhysicalResourceId' => ['description' => 'The physical ID of the resource.', 'type' => 'string', 'example' => 'asr-2ze4zzc3kf9yz1kd****', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the drift detection operation was performed on the resource.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ESS::ScalingRule', 'title' => ''], 'ExpectedProperties' => ['description' => 'The JSON-formatted resource properties that are defined in the template.', 'type' => 'string', 'example' => '{"ScalingRuleName": "test2"}', 'title' => ''], 'ResourceDriftStatus' => ['description' => 'The drift state of the resource. Valid values:'."\n" ."\n" .'- DELETED: The actual configuration of the resource differs from its expected template configuration because the resource is deleted.'."\n" ."\n" .'- MODIFIED: The actual configuration of the resource differs from its expected template configuration.'."\n" ."\n" .'- NOT\\_CHECKED: Resource Orchestration Service (ROS) has not checked whether the actual configuration of the resource differs from its expected template configuration.'."\n" ."\n" .'- IN\\_SYNC: The actual configuration of the resource matches its expected template configuration.', 'type' => 'string', 'example' => 'MODIFIED', 'title' => ''], 'PropertyDifferences' => [ 'description' => 'The property drifts of the resource.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ActualValue' => ['description' => 'The actual value of the resource property.', 'type' => 'string', 'example' => 'test1', 'title' => ''], 'DifferenceType' => ['description' => 'The drift type of the resource property. Valid values:'."\n" ."\n" .'- ADD: The value is added to a resource property whose data type is Array or List.'."\n" ."\n" .'- REMOVE: The property is deleted from the current resource configuration.'."\n" ."\n" .'- NOT\\_EQUAL: The current property value differs from the expected value that is defined in the stack template.', 'type' => 'string', 'example' => 'NOT_EQUAL', 'title' => ''], 'PropertyPath' => ['description' => 'The path of the resource property.', 'type' => 'string', 'example' => '/ScalingRuleName', 'title' => ''], 'ExpectedValue' => ['description' => 'The expected value of the resource property that is defined in the template.', 'type' => 'string', 'example' => 'test2', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ActualProperties' => ['description' => 'The actual JSON-formatted resource properties.', 'type' => 'string', 'example' => '{"ScalingRuleName": "test1"}', 'title' => ''], 'ModuleInfo' => [ 'description' => 'The information about the modules from which the resource was created. This parameter is returned only if the resource is created from modules.', 'type' => 'object', 'properties' => [ 'LogicalIdHierarchy' => ['description' => 'The concatenated logical IDs of one or more modules that contain the resource. The modules are listed from the outermost layer and separated by forward slashes (`/`).'."\n" ."\n" .'In the following example, the resource is created from Module B nested within Parent Module A:'."\n" ."\n" .'`moduleA/moduleB`', 'type' => 'string', 'example' => 'moduleA/moduleB', 'title' => ''], 'TypeHierarchy' => ['description' => 'The concatenated types of one or more modules that contain the resource. The module types are listed from the outermost layer and separated by forward slashes (`/`).'."\n" ."\n" .'In the following example, the resource is created from a module of the `MODULE::ROS::Child::Example` type that is nested within a parent module of the `MODULE::ROS::Parent::Example` type:'."\n" ."\n" .'`MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example`', 'type' => 'string', 'example' => 'MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'The query token returned in this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****w==', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListStackResourceDrifts', 'requestParamsDescription' => ' ', 'responseParamsDescription' => 'The drift status of the resource.', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | StackDriftDetectionExpired |The stack drift detection of next token is expired, a new stack drift detection ({ID}) has already completed, please query from the very beginning again. |NextToken对应的偏差检测ID已经失效了,因为一个新的偏差检测已经完成,请重新进行查询。ID为偏差检测的ID。|'."\n" .'| 400 | StackDriftDetectionNotAvailable |There is no complete drift detection for stack ({ID}). |资源栈没有成功完成过的偏差。ID为资源栈ID。 |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackResourceDrifts'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackResourceDrifts', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ResourceDrifts\\": [\\n {\\n \\"LogicalResourceId\\": \\"ScalingRule\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\",\\n \\"PhysicalResourceId\\": \\"asr-2ze4zzc3kf9yz1kd****\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"ResourceType\\": \\"ALIYUN::ESS::ScalingRule\\",\\n \\"ExpectedProperties\\": \\"{\\\\\\"ScalingRuleName\\\\\\": \\\\\\"test2\\\\\\"}\\",\\n \\"ResourceDriftStatus\\": \\"MODIFIED\\",\\n \\"PropertyDifferences\\": [\\n {\\n \\"ActualValue\\": \\"test1\\",\\n \\"DifferenceType\\": \\"NOT_EQUAL\\",\\n \\"PropertyPath\\": \\"/ScalingRuleName\\",\\n \\"ExpectedValue\\": \\"test2\\"\\n }\\n ],\\n \\"ActualProperties\\": \\"{\\\\\\"ScalingRuleName\\\\\\": \\\\\\"test1\\\\\\"}\\",\\n \\"ModuleInfo\\": {\\n \\"LogicalIdHierarchy\\": \\"moduleA/moduleB\\",\\n \\"TypeHierarchy\\": \\"MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example\\"\\n }\\n }\\n ],\\n \\"NextToken\\": \\"AAAAAdDWBF2****w==\\",\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'ListStackResources' => [ 'summary' => 'Queries the resources in a specified stack.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], 'Resources' => [ 'description' => 'The list of resource objects.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The resource status. Valid values:'."\n" .'- INIT_COMPLETE: The resource is pending creation.'."\n" ."\n" .'- CREATE_COMPLETE: The resource is created.'."\n" .'- CREATE_FAILED: The resource failed to be created.'."\n" .'- CREATE_IN_PROGRESS: The resource is being created.'."\n" .'- UPDATE_IN_PROGRESS: The resource is being updated.'."\n" .'- UPDATE_FAILED: The resource failed to be updated.'."\n" .'- UPDATE_COMPLETE: The resource is updated.'."\n" .'- DELETE_IN_PROGRESS: The resource is being deleted.'."\n" .'- DELETE_FAILED: The resource failed to be deleted.'."\n" .'- DELETE_COMPLETE: The resource is deleted.'."\n" .'- CHECK_IN_PROGRESS: The resource is being checked.'."\n" .'- CHECK_FAILED: The resource failed to be checked.'."\n" .'- CHECK_COMPLETE: The resource is checked.'."\n" .'- IMPORT_IN_PROGRESS: The resource import is in progress.'."\n" .'- IMPORT_FAILED: The resource import failed.'."\n" .'- IMPORT_COMPLETE: The resource import is complete.', 'type' => 'string', 'example' => 'UPDATE_COMPLETE', 'title' => ''], 'LogicalResourceId' => ['description' => 'The logical resource ID, which is the name defined in the template.', 'type' => 'string', 'example' => 'dummy', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the resource was last updated. The time is displayed in UTC+0 and follows the ISO 8601 standard. The time is in the YYYY-MM-DDThh:mm:ss format without the Z suffix.', 'type' => 'string', 'example' => '2019-08-01T06:01:29', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'PhysicalResourceId' => ['description' => 'The physical resource ID, which is the actual resource ID.', 'type' => 'string', 'example' => 'd04af923-e6b7-4272-aeaa-47ec9777****', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the resource drift was detected during the most recent successful drift detection on the stack.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ROS::Stack', 'title' => ''], 'ResourceDriftStatus' => ['description' => 'The drift status of the resource in the most recent successful drift detection on the stack. Valid values:'."\n" .'- DELETED: The resource differs from the expected template configuration because the resource is deleted.'."\n" .'- MODIFIED: The resource differs from the expected template configuration.'."\n" .'- NOT_CHECKED: Resource Orchestration Service (ROS) has not checked whether the resource differs from the expected template configuration.'."\n" .'- IN_SYNC: The current configuration of the resource matches the expected template configuration.', 'type' => 'string', 'example' => 'IN_SYNC', 'title' => ''], 'StatusReason' => ['description' => 'The reason for the resource status.', 'type' => 'string', 'example' => 'state changed', 'title' => ''], 'CreateTime' => ['description' => 'The time when the resource was created. The time is displayed in UTC+0 and follows the ISO 8601 standard. The time is in the YYYY-MM-DDThh:mm:ss format without the Z suffix.', 'type' => 'string', 'example' => '2019-08-01T06:01:23', 'title' => ''], 'StackName' => ['description' => 'The stack name. The name can be up to 255 characters in length and must start with a digit or a letter. It can contain digits, letters, hyphens (-), and underscores (_).', 'type' => 'string', 'example' => 'test-describe-resource', 'title' => ''], 'ModuleInfo' => [ 'description' => 'The information about the module from which the resource is created. This parameter is returned only if the resource is created from a module.', 'type' => 'object', 'properties' => [ 'LogicalIdHierarchy' => ['description' => 'The concatenated list of logical IDs of one or more modules that contain the resource. The modules are listed starting from the outermost module and are separated by `/`.'."\n" ."\n" .'In the following example, the resource is created from a module moduleB that is nested in a parent module moduleA.'."\n" ."\n" .'`moduleA/moduleB`.', 'type' => 'string', 'example' => 'moduleA/moduleB', 'title' => ''], 'TypeHierarchy' => ['description' => 'The concatenated list of module types of one or more modules that contain the resource. The module types are listed starting from the outermost module and are separated by `/`.'."\n" ."\n" .'In the following example, the resource is created from a module of the `MODULE::ROS::Child::Example` type, which is nested in a parent module of the `MODULE::ROS::Parent::Example` type.'."\n" ."\n" .'`MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example`.', 'type' => 'string', 'example' => 'MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\",\\n \\"Resources\\": [\\n {\\n \\"Status\\": \\"UPDATE_COMPLETE\\",\\n \\"LogicalResourceId\\": \\"dummy\\",\\n \\"UpdateTime\\": \\"2019-08-01T06:01:29\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\",\\n \\"PhysicalResourceId\\": \\"d04af923-e6b7-4272-aeaa-47ec9777****\\",\\n \\"DriftDetectionTime\\": \\"2020-02-27T07:47:47\\",\\n \\"ResourceType\\": \\"ALIYUN::ROS::Stack\\",\\n \\"ResourceDriftStatus\\": \\"IN_SYNC\\",\\n \\"StatusReason\\": \\"state changed\\",\\n \\"CreateTime\\": \\"2019-08-01T06:01:23\\",\\n \\"StackName\\": \\"test-describe-resource\\",\\n \\"ModuleInfo\\": {\\n \\"LogicalIdHierarchy\\": \\"moduleA/moduleB\\",\\n \\"TypeHierarchy\\": \\"MODULE::ROS::Parent::Example/MODULE::ROS::Child::Example\\"\\n }\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query resources in a stack', 'description' => 'This topic provides an example on how to query the resources in a stack whose ID is `4a6c9851-3b0f-4f5f-b4ca-a14bf691****` in the China (Hangzhou) region.', 'requestParamsDescription' => ' For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| Error code | Error message | HTTP status code | Description |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| StackNotFound | The Stack ({name}) could not be found. | 404 | The stack does not exist. name indicates the stack name or ID. |.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackResources'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], ], 'ListStacks' => [ 'summary' => 'Queries the list of stacks.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => ['operationType' => 'get'], 'parameters' => [ [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page when paging is used. '."\n" ."\n" .'Maximum value: 50.'."\n" .' '."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'ParentStackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the parent stack.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the stack list. '."\n" ."\n" .'Start value: 1.'."\n" .' '."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ShowNestedStack', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to list nested stacks. Valid values:'."\n" ."\n" .'- true'."\n" .'- false (default)'."\n" .' '."\n" .'> If ParentStackId is specified, this value is set to true.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID. If you do not need detailed stack information, you can specify this parameter instead of calling the GetStack operation.', 'type' => 'string', 'required' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The stack status.', 'type' => 'array', 'items' => ['description' => 'The stack status. Valid values: '."\n" .'- CREATE\\_IN_PROGRESS: The stack is being created.'."\n" .'- CREATE_FAILED: The stack failed to be created.'."\n" .'- CREATE_COMPLETE: The stack is created.'."\n" .'- UPDATE\\_IN_PROGRESS: The stack is being updated.'."\n" .'- UPDATE_FAILED: The stack failed to be updated.'."\n" .'- UPDATE_COMPLETE: The stack is updated.'."\n" .'- DELETE\\_IN_PROGRESS: The stack is being deleted.'."\n" .'- DELETE_FAILED: The stack failed to be deleted.'."\n" .'- CREATE\\_ROLLBACK\\_IN_PROGRESS: The stack is being rolled back after a creation failure.'."\n" .'- CREATE\\_ROLLBACK_FAILED: The stack failed to be rolled back after a creation failure.'."\n" .'- CREATE\\_ROLLBACK_COMPLETE: The stack is rolled back after a creation failure.'."\n" .'- ROLLBACK\\_IN_PROGRESS: The stack is being rolled back.'."\n" .'- ROLLBACK_FAILED: The stack failed to be rolled back.'."\n" .'- ROLLBACK_COMPLETE: The stack is rolled back.'."\n" .'- CHECK\\_IN_PROGRESS: The stack is being validated.'."\n" .'- CHECK_FAILED: The stack failed to be validated.'."\n" .'- CHECK_COMPLETE: The stack is validated.'."\n" .'- REVIEW\\_IN_PROGRESS: The stack is being reviewed.'."\n" .'- IMPORT\\_CREATE\\_IN_PROGRESS: The stack is being created through resource import.'."\n" .'- IMPORT\\_CREATE_FAILED: The stack failed to be created through resource import.'."\n" .'- IMPORT\\_CREATE_COMPLETE: The stack is created through resource import.'."\n" .'- IMPORT\\_CREATE\\_ROLLBACK\\_IN_PROGRESS: The stack is being rolled back after a creation failure through resource import.'."\n" .'- IMPORT\\_CREATE\\_ROLLBACK_FAILED: The stack failed to be rolled back after a creation failure through resource import.'."\n" .'- IMPORT\\_CREATE\\_ROLLBACK_COMPLETE: The stack is rolled back after a creation failure through resource import.'."\n" .'- IMPORT\\_UPDATE\\_IN_PROGRESS: The stack is being updated through resource import.'."\n" .'- IMPORT\\_UPDATE_FAILED: The stack failed to be updated through resource import.'."\n" .'- IMPORT\\_UPDATE_COMPLETE: The stack is updated through resource import.'."\n" .'- IMPORT\\_UPDATE\\_ROLLBACK\\_IN_PROGRESS: The stack is being rolled back after an update failure through resource import.'."\n" .'- IMPORT\\_UPDATE\\_ROLLBACK_FAILED: The stack failed to be rolled back after an update failure through resource import.'."\n" .'- IMPORT\\_UPDATE\\_ROLLBACK_COMPLETE: The stack is rolled back after an update failure through resource import.', 'type' => 'string', 'required' => false, 'example' => 'CREATE_COMPLETE', 'title' => ''], 'required' => false, 'example' => 'CREATE_COMPLETE', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'StackName', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The stack name.', 'type' => 'array', 'items' => ['description' => 'The stack name. '."\n" .'The name can be up to 255 characters in length and must start with a digit or letter. It can contain digits, letters, hyphens (-), and underscores (_). Asterisks (*) can be used for fuzzy match.'."\n" ."\n" .'Valid values of N: 1 to 5.', 'type' => 'string', 'required' => false, 'example' => 'MyStack', 'title' => ''], 'required' => false, 'example' => 'MyStack', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack. '."\n" .'Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack. '."\n" .'Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. '."\n" .'For more information about resource groups, see [What is a resource group?](~~94475~~).', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], [ 'name' => 'StackIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of stack IDs.', 'type' => 'array', 'items' => ['description' => 'The stack ID.'."\n" .'You can specify multiple stack IDs to query the details of multiple stacks at a time.'."\n" .'Valid values of N: 1 to 10.', 'type' => 'string', 'required' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range for filtering by creation time. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2023-04-01T15:10:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range for filtering by creation time. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2023-04-01T15:16:00Z', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of stacks.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page in paging Settings. '."\n" ."\n" .'Maximum value: 50.'."\n" .' '."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'FBAC80B4-9C27-529D-BC9C-4155FA5CD7A7', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the stack list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Stacks' => [ 'description' => 'The list of stacks.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The stack status.', 'type' => 'string', 'example' => 'CREATE_COMPLETE', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the stack was last updated. The time is displayed in UTC+0 in the ISO 8601 standard format without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2022-03-10T07:44:36', 'title' => ''], 'DriftDetectionTime' => ['description' => 'The time when the most recent successful drift detection was performed on the stack.', 'type' => 'string', 'example' => '2022-03-10T06:46:36', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the stack is in its current status.', 'type' => 'string', 'example' => 'Stack CREATE completed successfully', 'title' => ''], 'CreateTime' => ['description' => 'The time when the stack was created. The time is displayed in UTC+0 in the ISO 8601 standard format without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2022-03-10T06:44:36', 'title' => ''], 'DisableRollback' => ['description' => 'Indicates whether rollback is disabled when the stack fails to be created. Valid values:'."\n" ."\n" .'- true: Rollback is disabled.'."\n" .'- false (default): Rollback is enabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack.', 'type' => 'string', 'example' => 'acs:rm:rgId', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack.', 'type' => 'string', 'example' => 'rg-aek2frunvw7****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'StackName' => ['description' => 'The stack name.', 'type' => 'string', 'example' => 'MyStack', 'title' => ''], 'TimeoutInMinutes' => ['description' => 'The timeout period for creating the stack. Unit: minutes. Valid values: 10, 20, 60, 120, and 1440.'."\n" ."\n" .'This information is generated based on call logs and may be incomplete. Verify the information.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the stack. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'ParentStackId' => ['description' => 'The ID of the parent stack.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf692****', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '67805444-a605-45ee-a57f-83908ff6****', 'title' => ''], 'StackDriftStatus' => ['description' => 'The drift status of the stack in the most recent successful drift detection. Valid values:'."\n" .'- DRIFTED: The stack has drifted.'."\n" .'- NOT_CHECKED: No successful drift detection has been performed on the stack.'."\n" .'- IN_SYNC: The stack is in sync.', 'type' => 'string', 'example' => 'IN_SYNC', 'title' => ''], 'StackType' => ['description' => 'The stack type. Valid values:'."\n" ."\n" .'- ROS: The stack uses an ROS template.'."\n" .'- Terraform: The stack uses a Terraform template.', 'type' => 'string', 'example' => 'ROS', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-aek2frunvw7****', 'title' => ''], 'ServiceManaged' => ['description' => 'Indicates whether the stack is a managed stack. Valid values: '."\n" ."\n" .'- true: The stack is a managed stack. '."\n" ."\n" .'- false: The stack is not a managed stack.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ServiceName' => ['description' => 'The service name to which the managed stack belongs.', 'type' => 'string', 'example' => 'ACVS', 'title' => ''], 'OperationInfo' => [ 'description' => 'The supplementary information that is returned when an error occurs during a stack operation.'."\n" ."\n" .'> This response property is returned only in specific cases and contains at least one sub-property. For example, an error occurs when another cloud service API is called.', 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code. Valid values:'."\n" ."\n" .'- Forbidden.RAM: Access denied by RAM.'."\n" .'- InvalidAccountStatus.NotEnoughBalance: Insufficient account balance.'."\n" .'- OrderError.EIP: EIP order error.'."\n" .'- QuotaExceeded.Eip: EIP quota exceeded.'."\n" ."\n" .'This information is generated based on call logs and may be incomplete. Verify the information.', 'type' => 'string', 'example' => 'DependencyViolation', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'There is still instance(s) in the specified security group.', 'title' => ''], 'RequestId' => ['description' => 'The request ID of the API call to another cloud service.', 'type' => 'string', 'example' => '071D6166-3F6B-5C7B-A1F0-0113FBB643A8', 'title' => ''], 'Action' => ['description' => 'The name of the API operation called on another cloud service.', 'type' => 'string', 'example' => 'DeleteSecurityGroup', 'title' => ''], 'ResourceType' => ['description' => 'The resource type on which the operation error occurred.', 'type' => 'string', 'example' => 'ALIYUN::ECS::SecurityGroup', 'title' => ''], 'LogicalResourceId' => ['description' => 'The logical ID of the resource on which the operation error occurred.', 'type' => 'string', 'example' => 'EcsSecurityGroup', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DeletionProtection' => [ 'description' => 'Indicates whether deletion protection is enabled for the stack. Valid values:'."\n" .'- Enabled: Deletion protection is enabled.'."\n" .'- Disabled: Deletion protection is disabled. You can delete the stack by using the console or by calling the [DeleteStack](~~610812~~) operation.'."\n" ."\n" .'> The deletion protection mechanism of a nested stack is the same as that of the root stack.', 'enumValueTitles' => ['Enabled' => 'Enabled', 'Disabled' => 'Disabled'], 'type' => 'string', 'example' => 'Disabled', 'title' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 2,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"FBAC80B4-9C27-529D-BC9C-4155FA5CD7A7\\",\\n \\"PageNumber\\": 1,\\n \\"Stacks\\": [\\n {\\n \\"Status\\": \\"CREATE_COMPLETE\\",\\n \\"UpdateTime\\": \\"2022-03-10T07:44:36\\",\\n \\"DriftDetectionTime\\": \\"2022-03-10T06:46:36\\",\\n \\"StatusReason\\": \\"Stack CREATE completed successfully\\",\\n \\"CreateTime\\": \\"2022-03-10T06:44:36\\",\\n \\"DisableRollback\\": false,\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"acs:rm:rgId\\",\\n \\"Value\\": \\"rg-aek2frunvw7****\\"\\n }\\n ],\\n \\"StackName\\": \\"MyStack\\",\\n \\"TimeoutInMinutes\\": 60,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ParentStackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf692****\\",\\n \\"StackId\\": \\"67805444-a605-45ee-a57f-83908ff6****\\",\\n \\"StackDriftStatus\\": \\"IN_SYNC\\",\\n \\"StackType\\": \\"ROS\\",\\n \\"ResourceGroupId\\": \\"rg-aek2frunvw7****\\",\\n \\"ServiceManaged\\": false,\\n \\"ServiceName\\": \\"ACVS\\",\\n \\"OperationInfo\\": {\\n \\"Code\\": \\"DependencyViolation\\",\\n \\"Message\\": \\"There is still instance(s) in the specified security group.\\",\\n \\"RequestId\\": \\"071D6166-3F6B-5C7B-A1F0-0113FBB643A8\\",\\n \\"Action\\": \\"DeleteSecurityGroup\\",\\n \\"ResourceType\\": \\"ALIYUN::ECS::SecurityGroup\\",\\n \\"LogicalResourceId\\": \\"EcsSecurityGroup\\"\\n },\\n \\"DeletionProtection\\": \\"Disabled\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query stack list', 'description' => '### Operation description'."\n" ."\n" .'This topic provides an example of how to query the list of stacks in the China (Hangzhou) region.', 'requestParamsDescription' => ' For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStacks'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStacks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/*'], ], ], ], ], ], 'ListSummaries' => [ 'summary' => 'Queries for an overview.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Option', 'in' => 'query', 'schema' => [ 'description' => 'Output information options.', 'enumValueTitles' => ['StackDetail' => 'StackDetail', 'Overview' => 'Overview'], 'type' => 'string', 'required' => false, 'example' => 'StackDetail', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RegionSummaries' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'StackGroupCount' => ['description' => 'The number of stack groups.', 'type' => 'string', 'example' => '1', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'StackCount' => ['description' => 'The number of stacks.', 'type' => 'string', 'example' => '1', 'title' => ''], 'StackDetails' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Count' => ['description' => 'The number of stacks.', 'type' => 'string', 'example' => '1', 'title' => ''], 'BriefStatus' => ['description' => 'The brief status of the stack. Valid values:'."\n" ."\n" .'- IN\\_PROGRESS: In progress (including creation, update, deletion, rollback, import creation, and import update in progress).'."\n" ."\n" .'- COMPLETE: Complete (including successful creation, update, deletion, rollback, import creation, and import update).'."\n" ."\n" .'- FAILED: Failed (including failed creation, update, deletion, rollback, import creation, and import update).', 'type' => 'string', 'example' => 'COMPLETE', 'title' => ''], ], 'description' => 'Stack details.', 'title' => '', 'example' => '', ], 'description' => 'Stack details.', 'title' => '', 'example' => '', ], 'TemplateScratchCount' => ['description' => 'The number of resource scenarios.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'description' => 'Statistics about the number of ROS resources in each region.', 'title' => '', 'example' => '', ], 'description' => 'Statistics about the number of Resource Orchestration Service (ROS) resources in each region.', 'title' => '', 'example' => '', ], 'CenterSummary' => [ 'type' => 'object', 'properties' => [ 'TemplateCount' => ['description' => 'The number of templates.', 'type' => 'string', 'example' => '2', 'title' => ''], 'RegisteredResourceTypeCount' => ['description' => 'The number of registered resource types.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], ], 'description' => 'Statistics about the number of central ROS resources.', 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B842BB91-A004-59CC-83E3-C961567FCBC8', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RegionSummaries\\": [\\n {\\n \\"StackGroupCount\\": \\"1\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"StackCount\\": \\"1\\",\\n \\"StackDetails\\": [\\n {\\n \\"Count\\": \\"1\\",\\n \\"BriefStatus\\": \\"COMPLETE\\"\\n }\\n ],\\n \\"TemplateScratchCount\\": 1\\n }\\n ],\\n \\"CenterSummary\\": {\\n \\"TemplateCount\\": \\"2\\",\\n \\"RegisteredResourceTypeCount\\": 3\\n },\\n \\"RequestId\\": \\"B842BB91-A004-59CC-83E3-C961567FCBC8\\"\\n}","type":"json"}]', 'title' => 'ListSummaries', 'description' => '### Usage notes'."\n" ."\n" .'This topic provides an example of how to query a list of stacks in the China (Hangzhou) region.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListSummaries', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListTagKeys' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ', 'FEATURErosZVIFJW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call the [DescribeRegions](~~131035~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- stack: stack.'."\n" ."\n" .'- stackgroup: stack group.'."\n" ."\n" .'- template: template.'."\n" ."\n" .'- templatescratch: resource scenario.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'stack', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The token that is used to start the next query.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0*****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The token that is used to start the next query.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0*****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C429473A-5C66-4661-B5F8-4F900CD4330A', 'title' => ''], 'Keys' => [ 'description' => 'The list of tag keys.', 'type' => 'array', 'items' => ['description' => 'A tag key.', 'type' => 'string', 'example' => '["TagKey1","TagKey2"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'ListTagKeys', 'summary' => 'Queries the tag keys for stacks or templates in a specified region.', 'description' => 'This topic provides an example of how to query the tag keys that are attached to a stack in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagKeys'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTagKeys', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0*****\\",\\n \\"RequestId\\": \\"C429473A-5C66-4661-B5F8-4F900CD4330A\\",\\n \\"Keys\\": [\\n \\"[\\\\\\"TagKey1\\\\\\",\\\\\\"TagKey2\\\\\\"]\\"\\n ]\\n}","type":"json"}]', ], 'ListTagResources' => [ 'summary' => 'Queries the tags that are added to resources in a template or stack in an Alibaba Cloud region.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12710', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the tag. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- stack: stack'."\n" ."\n" .'- stackgroup: stack group'."\n" ."\n" .'- template: template'."\n" ."\n" .'- templatescratch: scenario', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'stack', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0*****', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the resources.', 'type' => 'array', 'items' => ['description' => 'The ID of the resource. You can specify up to 50 resource IDs.'."\n" ."\n" .'> If you set ResourceType to stackgroup, you must set ResourceId to the name of the stack group.', 'type' => 'string', 'required' => false, 'example' => '6bc589b5-9c02-4944-8fc3-f3624234****', 'title' => ''], 'required' => false, 'example' => '6bc589b5-9c02-4944-8fc3-f3624234****', 'maxItems' => 51, 'title' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the resources. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the resource.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the resource. You can specify up to 20 tag keys. The tag key cannot be an empty string.
'."\n" .'The tag key can be up to 128 characters in length and cannot contain `http://` or `https://`. The tag key cannot start with `aliyun` or `acs:`.', 'type' => 'string', 'required' => false, 'example' => 'FinanceDept', 'title' => ''], 'Value' => ['description' => 'The tag value of the resource. You can specify up to 20 tag values. The tag value can be an empty string.
'."\n" .'The tag value can be up to 128 characters in length, and cannot contain `http://` or `https://`. The tag value cannot start with `aliyun` or `acs:`.', 'type' => 'string', 'required' => false, 'example' => 'FinanceJoshua', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0*****', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'C429473A-5C66-4661-B5F8-4F900CD4330A', 'title' => ''], 'TagResources' => [ 'description' => 'The information about the tags that are added to the resources.', 'type' => 'array', 'items' => [ 'description' => 'The information about the tag that is added to the resource.', 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The type of the resource.', 'type' => 'string', 'example' => 'stack', 'title' => ''], 'TagValue' => ['description' => 'The tag value of the resource.', 'type' => 'string', 'example' => 'TayValue1', 'title' => ''], 'ResourceId' => ['description' => 'The ID of the resource.', 'type' => 'string', 'example' => 'c754d2a4-28f1-46df-b557-9586173a****', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the resource.', 'type' => 'string', 'example' => 'TagKey1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListTagResources', 'description' => '###'."\n" ."\n" .'- To specify the query object, specify ResourceId or Tag in the request. Tag consists of Key and Value.'."\n" ."\n" .'- If you specify Tag and ResourceId, ROS resources that match both the parameters are returned.'."\n" ."\n" .'This topic provides an example on how to query the tags that are added to a stack. In this example, the stack ID is `6bc589b5-9c02-4944-8fc3-f3624234****`. The stack is deployed in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HTTP状态码 | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | MissingParameter |One of the input parameters ResourceIds,Tags should be specified.|至少指定ResourceIds或Tags参数中的一个。|'."\n" .'| 400 | InvalidParameter |The specified parameter ResourceType is invalid, {reason}.|指定的资源类型参数错误,reason为具体原因。|'."\n" .'| 400 | InvalidParameter |The specified parameter Tags is invalid, {reason}.|指定的Tags参数错误,reason为具体原因。|'."\n" .'| 400 | Duplicate.TagKey |The Tag.N.Key contain duplicate key.|标签中存在重复的键,请保持键的唯一性。|', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagResources'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#TemplateScratchId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0*****\\",\\n \\"RequestId\\": \\"C429473A-5C66-4661-B5F8-4F900CD4330A\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceType\\": \\"stack\\",\\n \\"TagValue\\": \\"TayValue1\\",\\n \\"ResourceId\\": \\"c754d2a4-28f1-46df-b557-9586173a****\\",\\n \\"TagKey\\": \\"TagKey1\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ListTagValues' => [ 'summary' => 'Queries the tag values that are added to resources in a template or stack in an Alibaba Cloud region.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ', 'FEATURErosZVIFJW'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the tag value. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- stack: stack'."\n" ."\n" .'- stackgroup: stack group'."\n" ."\n" .'- template: template'."\n" ."\n" .'- templatescratch: scenario', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'stack', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0*****', 'title' => ''], ], [ 'name' => 'Key', 'in' => 'query', 'schema' => ['description' => 'The key of the tag.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'TagKey1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0*****', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'C429473A-5C66-4661-B5F8-4F900CD4330A', 'title' => ''], 'Values' => [ 'description' => 'The tag values.', 'type' => 'array', 'items' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TagValue1', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'ListTagValues', 'description' => 'In this example, the tag values of `TagKey1` that is added to a stack in the China (Hangzhou) region are queried.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagValues'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTagValues', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0*****\\",\\n \\"RequestId\\": \\"C429473A-5C66-4661-B5F8-4F900CD4330A\\",\\n \\"Values\\": [\\n \\"TagValue1\\"\\n ]\\n}","type":"json"}]', ], 'ListTemplateScratches' => [ 'summary' => 'Queries a list of resource scenarios.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosUSKZAD'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource scenario.'."\n" ."\n" .'You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource scenario.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'ts-7f7a704cf71c49a6****', 'title' => ''], ], [ 'name' => 'TemplateScratchType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource scenario. Valid values:'."\n" ."\n" .'- ArchitectureReplication: resource replication.'."\n" ."\n" .'- ArchitectureDetection: resource detection.'."\n" ."\n" .'- ResourceImport: resource management.'."\n" ."\n" .'- ResourceMigration: resource migration.', 'type' => 'string', 'required' => false, 'example' => 'ArchitectureReplication', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the resource scenario. Valid values:'."\n" ."\n" .'- GENERATE_IN_PROGRESS: being generated.'."\n" .'- GENERATE_COMPLETE: generated.'."\n" .'- GENERATE_FAILED: failed to be generated.', 'type' => 'string', 'required' => false, 'example' => '["GENERATE_COMPLETE"]', 'title' => ''], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the resource scenario.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the resource scenario.'."\n" ."\n" .'> Tags is optional. If you specify Tags, you must specify Tags.N.Key.', 'type' => 'string', 'required' => true, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the resource scenario.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in a paged query. Settings for paging.'."\n" ."\n" .'Maximum value: 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the resource scenario list.'."\n" ."\n" .'Start value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D1C09606-C58B-558F-9B4E-5BF263D17D09', 'title' => ''], 'TotalCount' => ['description' => 'The total number of resource scenarios.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the resource scenario list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page in a paged query. Settings for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TemplateScratches' => [ 'description' => 'The resource scenarios.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TemplateScratchId' => ['description' => 'The ID of the resource scenario.', 'type' => 'string', 'example' => 'ts-48ad85d66cca4620****', 'title' => ''], 'TemplateScratchType' => ['description' => 'The type of the resource scenario. Valid values:'."\n" ."\n" .'- ResourceImport: resource management.'."\n" ."\n" .'- ArchitectureReplication: resource replication.', 'type' => 'string', 'example' => 'ResourceImport', 'title' => ''], 'Status' => ['description' => 'The status of the resource scenario.', 'type' => 'string', 'example' => 'GENERATE_COMPLETE', 'title' => ''], 'StatusReason' => ['description' => 'The reason why the resource scenario failed to be generated.'."\n" ."\n" .'> This parameter is returned only if Status is GENERATE_FAILED.', 'type' => 'string', 'example' => 'Resource ALIYUN::ECS::VPC vpc-m5eauuq80anx59v28**** could not be found for template scratch.', 'title' => ''], 'FailedCode' => ['description' => 'The status code that indicates why the resource scenario failed to be generated. Valid values:'."\n" ."\n" .'- InvalidZoneId: invalid zone ID.'."\n" .'- IncorrectInstanceStatus: the instance status does not support this operation.'."\n" .'- RecommendEmpty.DiskCategoryNotRecommended: the cloud disk category is unavailable.'."\n" .'- Forbidden.RAM: insufficient RAM permissions.'."\n" ."\n" .'> This parameter is returned only if Status is GENERATE_FAILED.'."\n" ."\n" .'This information is generated based on call logs and may be incomplete. Verify the information.', 'type' => 'string', 'example' => 'InvalidZoneId', 'title' => ''], 'PreferenceParameters' => [ 'description' => 'The configuration parameters of the resource scenario.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The parameter name. Valid values:'."\n" ."\n" .'- AlbAddressIpVersion: the IP version of the ALB address.'."\n" .'- AlbAddressType: the ALB address type.'."\n" .'- AlbLoadBalancerEdition: the ALB load balancing edition.'."\n" .'- AlbZoneMappings: the ALB active zone mappings.'."\n" .'- RamAttachedPolicyReplication: RAM policy replication.'."\n" .'- DeletionPolicy: the delete policy.'."\n" .'- DisableNameUnique: specifies whether to disable name uniqueness.'."\n" .'- InstanceAmount: the number of instances.'."\n" .'- InstanceDataReplication: instance data replication.'."\n" .'- InstancePeriod: the instance epoch.'."\n" .'- InstancePeriodUnit: the instance epoch unit.'."\n" .'- NamePrefix: the name prefix.'."\n" .'- RamAttachedPolicyReplication: RAM attached policy replication.'."\n" .'- RegionId: the region ID.'."\n" .'- RegionIds: the list of region IDs.'."\n" .'- ResourceView: the resource view.'."\n" .'- ReuseStrategy: the reuse strategy.'."\n" .'- SlbListenerProtocols: the SLB listener protocols.'."\n" .'- TemplateType: the template type.'."\n" .'- VSwitchId: the vSwitch ID.'."\n" .'- VpcId: the VPC ID.'."\n" .'- ZoneId: the zone ID.'."\n" ."\n" .'This information is generated based on call logs and may be incomplete. Verify the information.', 'type' => 'string', 'example' => 'DeletionPolicy', 'title' => ''], 'ParameterValue' => ['description' => 'The parameter value.', 'type' => 'string', 'example' => 'Retain', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Description' => ['description' => 'The description of the resource scenario.', 'type' => 'string', 'example' => '纳管VPC资源。', 'title' => ''], 'SourceResources' => [ 'description' => 'The source resources.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'vpc-m5eauuq80anx59v28****', 'title' => ''], 'ResourceType' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- ALIYUN::ALB::LoadBalancer: Application Load Balancer (ALB) for load balancing.'."\n" .'- ALIYUN::ECS::Instance: Elastic Compute Service (ECS) instance.'."\n" .'- ALIYUN::RAM::Role: RAM role.'."\n" ."\n" .'This information is generated based on call logs and may be incomplete. Verify the information.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'SourceTag' => [ 'description' => 'The source tag.', 'type' => 'object', 'properties' => [ 'ResourceTags' => ['description' => 'The source tag.', 'type' => 'object', 'example' => '{"a": "b"}', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource type filter.', 'type' => 'array', 'items' => ['description' => 'The resource type filter.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'SourceResourceGroup' => [ 'description' => 'The source resource group.', 'type' => 'object', 'properties' => [ 'ResourceGroupId' => ['description' => 'The source resource group ID.', 'type' => 'string', 'example' => 'rg-acfmzawhxxc****', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource type filter.', 'type' => 'array', 'items' => ['description' => 'The resource type filter. Valid values:'."\n" ."\n" .'- ALIYUN::ECS::VPC: virtual private cloud (VPC).'."\n" ."\n" .'This information is generated based on call logs and may be incomplete. Verify the information.', 'type' => 'string', 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'LogicalIdStrategy' => ['description' => 'The logical ID generation strategy. Valid values:'."\n" ."\n" .'- LongTypePrefixAndIndexSuffix (default): long type prefix with index suffix.'."\n" ."\n" .'- LongTypePrefixAndHashSuffix: long type prefix with hash suffix.'."\n" ."\n" .'- ShortTypePrefixAndHashSuffix: short type prefix with hash suffix.', 'type' => 'string', 'example' => 'LongTypePrefixAndIndexSuffix', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the resource scenario.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the resource scenario.', 'type' => 'string', 'example' => 'usage1', 'title' => ''], 'Value' => ['description' => 'The tag value of the resource scenario.', 'type' => 'string', 'example' => 'test1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'CreateTime' => ['description' => 'The time when the resource scenario was created. The time is displayed in UTC+0 and follows the ISO 8601 standard without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2021-12-07T08:06:44', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the resource scenario was last updated. The time is displayed in UTC+0 and follows the ISO 8601 standard without the Z suffix. Format: YYYY-MM-DDThh:mm:ss.', 'type' => 'string', 'example' => '2021-12-07T08:06:44', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-acfm4nxcvht4pmi', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D1C09606-C58B-558F-9B4E-5BF263D17D09\\",\\n \\"TotalCount\\": 2,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TemplateScratches\\": [\\n {\\n \\"TemplateScratchId\\": \\"ts-48ad85d66cca4620****\\",\\n \\"TemplateScratchType\\": \\"ResourceImport\\",\\n \\"Status\\": \\"GENERATE_COMPLETE\\",\\n \\"StatusReason\\": \\"Resource ALIYUN::ECS::VPC vpc-m5eauuq80anx59v28**** could not be found for template scratch.\\",\\n \\"FailedCode\\": \\"InvalidZoneId\\",\\n \\"PreferenceParameters\\": [\\n {\\n \\"ParameterKey\\": \\"DeletionPolicy\\",\\n \\"ParameterValue\\": \\"Retain\\"\\n }\\n ],\\n \\"Description\\": \\"纳管VPC资源。\\",\\n \\"SourceResources\\": [\\n {\\n \\"ResourceId\\": \\"vpc-m5eauuq80anx59v28****\\",\\n \\"ResourceType\\": \\"ALIYUN::ECS::VPC\\"\\n }\\n ],\\n \\"SourceTag\\": {\\n \\"ResourceTags\\": {\\n \\"a\\": \\"b\\"\\n },\\n \\"ResourceTypeFilter\\": [\\n \\"ALIYUN::ECS::VPC\\"\\n ]\\n },\\n \\"SourceResourceGroup\\": {\\n \\"ResourceGroupId\\": \\"rg-acfmzawhxxc****\\",\\n \\"ResourceTypeFilter\\": [\\n \\"ALIYUN::ECS::VPC\\"\\n ]\\n },\\n \\"LogicalIdStrategy\\": \\"LongTypePrefixAndIndexSuffix\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"usage1\\",\\n \\"Value\\": \\"test1\\"\\n }\\n ],\\n \\"CreateTime\\": \\"2021-12-07T08:06:44\\",\\n \\"UpdateTime\\": \\"2021-12-07T08:06:44\\",\\n \\"ResourceGroupId\\": \\"rg-acfm4nxcvht4pmi\\"\\n }\\n ]\\n}","type":"json"}]', 'title' => 'Query resource scenarios', 'description' => 'This topic provides an example of how to query the list of resource scenarios in the China (Hangzhou) region. The response shows that there are two resource scenarios in the China (Hangzhou) region: resource management and resource replication.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTemplateScratches'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTemplateScratches', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/*'], ], ], ], ], ], 'ListTemplateVersions' => [ 'summary' => 'Queries the list of versions of a template.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12713', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of results to be returned in a single call when NextToken is used for the query.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 50.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'maximum' => '10000', 'minimum' => '1', 'example' => '50', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. This parameter applies to shared and private templates.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Versions' => [ 'description' => 'The versions.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'UpdateTime' => ['description' => 'The time when the version was last updated.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'Description' => ['description' => 'The description of the version.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'CreateTime' => ['description' => 'The time when the version was created.', 'type' => 'string', 'example' => '2020-02-27T07:47:47', 'title' => ''], 'TemplateName' => ['description' => 'The template name that corresponds to the specified version.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'TemplateId' => ['description' => 'The template ID. This parameter applies to shared and private templates. For a shared template, the template ID is the same as the Alibaba Cloud Resource Name (ARN) of the template.', 'type' => 'string', 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], 'TemplateVersion' => ['description' => 'The version number.'."\n" ."\n" .'For a shared template, this parameter is returned only if VersionOption is set to AllVersions.'."\n" ."\n" .'Valid values: v1 to v100.', 'type' => 'string', 'example' => 'v1', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ListTemplateVersions', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | TemplateNotFound |The Tempalte ({ ID }) could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTemplateVersions'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTemplateVersions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:*:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Versions\\": [\\n {\\n \\"UpdateTime\\": \\"2020-02-27T07:47:47\\",\\n \\"Description\\": \\"test\\",\\n \\"CreateTime\\": \\"2020-02-27T07:47:47\\",\\n \\"TemplateName\\": \\"test\\",\\n \\"TemplateId\\": \\"5ecd1e10-b0e9-4389-a565-e4c15efc****\\",\\n \\"TemplateVersion\\": \\"v1\\"\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0****\\",\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'ListTemplates' => [ 'summary' => 'Queries a list of private and shared templates.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12712', 'abilityTreeNodes' => ['FEATUREros85NBPH'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the template list.
The value starts from 1.
Default value: 1.

', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page for a paged query.
Valid values: 1 to 50.
Default value: 10.

', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'TemplateName', 'in' => 'query', 'schema' => ['description' => 'The name of the template. This parameter takes effect only when ShareType is set to Private. The name can be up to 255 characters in length. It must start with a digit or a letter and can contain digits, letters, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'MyTemplate', 'title' => ''], ], [ 'name' => 'ShareType', 'in' => 'query', 'schema' => ['description' => 'The share type of the template.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Private (default): The template is owned by the user.'."\n" ."\n" .'- Shared: The template is shared by other users.'."\n" ."\n" .'- Official: The template is a shared official template.', 'type' => 'string', 'required' => false, 'example' => 'Private', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key. This parameter takes effect only when ShareType is set to Private.'."\n" ."\n" .'You can specify up to 20 tag keys.', 'type' => 'string', 'required' => false, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value. This parameter takes effect only when ShareType is set to Private.'."\n" ."\n" .'You can specify up to 20 tag values.', 'type' => 'string', 'required' => false, 'example' => 'deploy', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group.
For more information about resource groups, see [What is a resource group?](~~94475~~).
', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], [ 'name' => 'IncludeTags', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query tag information. Valid values:'."\n" ."\n" .'- Enabled: queries tag information.'."\n" ."\n" .'- Disabled (default): does not query tag information.', 'type' => 'string', 'required' => false, 'example' => 'Enabled', 'title' => ''], ], [ 'name' => 'Filters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The filter.', 'type' => 'array', 'items' => [ 'description' => 'The filter.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The filter name. You can select one or more names to query. Valid values:'."\n" ."\n" .'- Categories: template category'."\n" ."\n" .'- DeployTypes: deployment type'."\n" ."\n" .'- ApplicationScenes: application scenario'."\n" ."\n" .'- BasicServices: basic service'."\n" ."\n" .'- ResourceTypes: resource type'."\n" ."\n" .'- TemplateNames: template name', 'type' => 'string', 'required' => false, 'example' => 'Categories', 'title' => ''], 'Values' => [ 'description' => 'The list of filter values.', 'type' => 'array', 'items' => ['description' => 'The list of filter values. The value of N can be from 1 to 10.', 'type' => 'string', 'required' => false, 'example' => 'ROS', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of templates.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C3A8413B-1F16-4DED-AC3E-61A00718DE8A', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the template list.
The value starts from 1.
', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Templates' => [ 'description' => 'The list of templates.', 'type' => 'array', 'items' => [ 'description' => 'The list of templates.', 'type' => 'object', 'properties' => [ 'TemplateARN' => ['description' => 'The Alibaba Cloud Resource Name (ARN) of the template.', 'type' => 'string', 'example' => 'acs:ros:*:151266687691****:template/a52f81be-496f-4e1c-a286-8852ab54****', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the template was last updated.', 'type' => 'string', 'example' => '2019-10-15T08:17:14.000000', 'title' => ''], 'Description' => ['description' => 'The description of the template.', 'type' => 'string', 'example' => 'test-description', 'title' => ''], 'CreateTime' => ['description' => 'The time when the template was created.', 'type' => 'string', 'example' => '2019-10-15T08:17:14.000000', 'title' => ''], 'TemplateName' => ['description' => 'The name of the template.', 'type' => 'string', 'example' => 'demo', 'title' => ''], 'TemplateVersion' => ['description' => 'The name of the latest version of the template.', 'type' => 'string', 'example' => 'v1', 'title' => ''], 'TemplateId' => ['description' => 'The ID of the template.', 'type' => 'string', 'example' => '4d4f5aa2-3260-4e47-863b-763fbb12****', 'title' => ''], 'OwnerId' => ['description' => 'The ID of the Alibaba Cloud account to which the template belongs.', 'type' => 'string', 'example' => '151266687691****', 'title' => ''], 'ShareType' => ['description' => 'The share type of the template.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Private: The template is owned by the user.'."\n" ."\n" .'- Shared: The template is shared by other users.', 'type' => 'string', 'example' => 'Private', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the template.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the template.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the template.', 'type' => 'string', 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the template.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'AdditionalInfo' => ['description' => 'The supplementary information about the public template.', 'type' => 'object', 'example' => '{"DeploymentDuration":null,"Title":"Self-Built_ElasticSearch_Snapshot_Saved_To_OSS","Labels":{"ResourceTypes":["ALIYUN::ECS::Instance","ALIYUN::ECS::SecurityGroup","ALIYUN::ECS::VPC","ALIYUN::ECS::VSwitch","ALIYUN::OSS::Bucket","ALIYUN::ROS::WaitCondition","ALIYUN::ROS::WaitConditionHandle"],"DeployTypes":["ROS"],"ApplicationScenes":["other"]},"Provider":"ROS","Categories":["Solution"]}', 'title' => ''], 'TemplateUrl' => ['description' => 'The URL of the template.', 'type' => 'string', 'example' => 'https://ros-public-templates.oss-cn-hangzhou.aliyuncs.com/demo.yml', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'List Templates', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTemplates'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListTemplates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"C3A8413B-1F16-4DED-AC3E-61A00718DE8A\\",\\n \\"PageNumber\\": 1,\\n \\"Templates\\": [\\n {\\n \\"TemplateARN\\": \\"acs:ros:*:151266687691****:template/a52f81be-496f-4e1c-a286-8852ab54****\\",\\n \\"UpdateTime\\": \\"2019-10-15T08:17:14.000000\\",\\n \\"Description\\": \\"test-description\\",\\n \\"CreateTime\\": \\"2019-10-15T08:17:14.000000\\",\\n \\"TemplateName\\": \\"demo\\",\\n \\"TemplateVersion\\": \\"v1\\",\\n \\"TemplateId\\": \\"4d4f5aa2-3260-4e47-863b-763fbb12****\\",\\n \\"OwnerId\\": \\"151266687691****\\",\\n \\"ShareType\\": \\"Private\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxazb4ph6aiy****\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"usage\\",\\n \\"Value\\": \\"test\\"\\n }\\n ],\\n \\"AdditionalInfo\\": {\\n \\"DeploymentDuration\\": null,\\n \\"Title\\": \\"Self-Built_ElasticSearch_Snapshot_Saved_To_OSS\\",\\n \\"Labels\\": {\\n \\"ResourceTypes\\": [\\n \\"ALIYUN::ECS::Instance\\",\\n \\"ALIYUN::ECS::SecurityGroup\\",\\n \\"ALIYUN::ECS::VPC\\",\\n \\"ALIYUN::ECS::VSwitch\\",\\n \\"ALIYUN::OSS::Bucket\\",\\n \\"ALIYUN::ROS::WaitCondition\\",\\n \\"ALIYUN::ROS::WaitConditionHandle\\"\\n ],\\n \\"DeployTypes\\": [\\n \\"ROS\\"\\n ],\\n \\"ApplicationScenes\\": [\\n \\"other\\"\\n ]\\n },\\n \\"Provider\\": \\"ROS\\",\\n \\"Categories\\": [\\n \\"Solution\\"\\n ]\\n },\\n \\"TemplateUrl\\": \\"https://ros-public-templates.oss-cn-hangzhou.aliyuncs.com/demo.yml\\"\\n }\\n ]\\n}","type":"json"}]', ], 'MoveResourceGroup' => [ 'summary' => 'Moves a resource to a specific resource group.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- stack: stack'."\n" ."\n" .'- stackgroup: stack group'."\n" ."\n" .'- template: template', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'stack', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4e8611cb-251e-42b7-b9cb-3496362c****', 'title' => ''], ], [ 'name' => 'NewResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which you want to move the resource. For more information about resource groups, see the "Resource Group" section of the [What is Resource Management?](~~94475~~) topic.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'rg-acfm3peow3k****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource.
'."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => 'F84A05B3-7275-4C8B-8AEE-9088C639C271'], ], 'example' => '', ], ], ], 'title' => 'MoveResourceGroup', 'description' => 'In this example, a stack deployed in the `China (Hangzhou)` region is moved to a specific resource group. The ID of the stack is `4e8611cb-251e-42b7-b9cb-3496362c****` and the ID of the resource group is `rg-acfm3peow3k****`.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'MoveResourceGroup'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:MoveResourceGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F84A05B3-7275-4C8B-8AEE-9088C639C271\\"\\n}","type":"json"}]', ], 'PreviewStack' => [ 'summary' => 'Previews the information about a stack that you want to create or update based on a template. You can call this operation to verify whether the template resources are valid.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'DisableRollback', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to disable rollback for the resources when the stack fails to be created. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false (default)', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'TimeoutInMinutes', 'in' => 'query', 'schema' => ['description' => 'The timeout period for creating the stack.'."\n" ."\n" .'Unit: minutes.'."\n" ."\n" .'Default value: 60.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '60', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure that contains the template body. The template body must be 1 to 524,288 bytes in length. If the length of the template body exceeds the upper limit, we recommend that you add parameters to the HTTP POST request body to prevent request failures caused by excessively long URLs.'."\n" ."\n" .'> You must and can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'StackPolicyURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the stack policy. The URL must point to a policy that is located on an HTTP or HTTPS web server or in an Object Storage Service (OSS) bucket, such as oss\\://ros/stack-policy/demo or oss\\://ros/stack-policy/demo?RegionId=cn-hangzhou. The policy file can be up to 16,384 bytes in length. If you do not specify the region ID of the OSS bucket, the value of RegionId is used.'."\n" ."\n" .'> You can specify only one of StackPolicyBody and StackPolicyURL.'."\n" ."\n" .'The URL can be up to 1,350 bytes in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-stack-policy/demo', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackPolicyBody', 'in' => 'query', 'schema' => ['description' => 'The structure that contains the stack policy body. The stack policy body must be 1 to 16,384 bytes in length.'."\n" ."\n" .'> You can specify only one of StackPolicyBody and StackPolicyURL.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"Statement": [{"Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*"}]}', 'title' => ''], ], [ 'name' => 'StackName', 'in' => 'query', 'schema' => ['description' => 'The stack name. You can use this parameter to preview the stack that you want to create. The name can be up to 255 characters in length, and can contain digits, letters, hyphens (-), and underscores (\\_). It must start with a digit or letter.'."\n" ."\n" .'> You must and can specify only one of StackName and StackId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'MyStack', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests.'."\n" .'The token can be up to 64 characters in length, and can contain letters, digits, underscores (\\_), and hyphens (-).'."\n" .'For more information, see [Ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an OSS bucket, such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. The template body can be up to 524,288 bytes in length. If you do not specify the region ID of the OSS bucket, the value of RegionId is used.'."\n" ."\n" .'> You must and can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. This parameter applies to shared and private templates.'."\n" ."\n" .'> You must and can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. This parameter takes effect only when TemplateId is specified.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters of the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter N. If you do not specify the name and value of a parameter, Resource Orchestration Service (ROS) uses the default name and value that are specified in the template. Maximum value of N: 200.'."\n" ."\n" .'> If you specify Parameters, you must specify Parameters.N.ParameterKey.', 'type' => 'string', 'required' => true, 'example' => 'ALIYUN::AccountId', 'title' => ''], 'ParameterValue' => ['description' => 'The value of parameter N. Maximum value of N: 200.'."\n" ."\n" .'> If you specify Parameters, you must specify Parameters.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => '151266687691****', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'Parallelism', 'in' => 'query', 'schema' => ['description' => 'The maximum number of concurrent operations that can be performed on resources. This parameter takes effect only for Terraform stacks.'."\n" ."\n" .'By default, this parameter is empty. You can set this parameter to an integer that is greater than or equal to 0.'."\n" ."\n" .'> If you set this parameter to an integer greater than 0, the integer is used. If you set this parameter to 0 or leave this parameter empty, the default value of Terraform is used. In most cases, the default value of Terraform is 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The scenario ID.'."\n" ."\n" .'For more information about how to query the scenario ID, see [ListTemplateScratches](~~363050~~).'."\n" ."\n" .'> You must and can specify only one of the following parameters: TemplateBody, TemplateURL, TemplateId, and TemplateScratchId.', 'type' => 'string', 'required' => false, 'example' => 'ts-aa9c62feab844a6b****', 'title' => ''], ], [ 'name' => 'TemplateScratchRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the scenario. The default value is the same as the value of RegionId.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID. You can use this parameter to preview a stack that you want to update.'."\n" ."\n" .'> - You must and can specify only one of StackName and StackId.'."\n" .'>'."\n" .'> - In the scenario in which you preview a stack that you want to create or update, you cannot preview the resources in its nested stacks.', 'type' => 'string', 'required' => false, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'EnablePreConfig', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query the parameters that you want to use in compliance precheck.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false (default)', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'TaintResources', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['description' => 'The resource marked as tainted.'."\n" ."\n" .'- For a ROS stack, you must specify the resource name as the parameter value. Example: my\\_vpc.'."\n" ."\n" .'- For a Terraform stack, you must specify the resource type and the resource name as the parameter value. Example: alicloud\\_vpc.my\\_vpc.', 'type' => 'string', 'required' => false, 'example' => 'my_vpc', 'title' => ''], 'required' => false, 'maxItems' => 100, 'description' => 'The resources marked as tainted.', 'title' => '', 'example' => '', ], ], [ 'name' => 'UsePreviousParameters', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the values of parameters that were last used.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: The parameters that were last used are reused.'."\n" ."\n" .'- false: The parameters that were last used are not reused.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'headers' => [], 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'Stack' => [ 'description' => 'The information about the stack that is previewed.', 'type' => 'object', 'properties' => [ 'TemplateDescription' => ['description' => 'The description of the template.', 'type' => 'string', 'example' => 'One ECS instance.', 'title' => ''], 'Parameters' => [ 'description' => 'The parameters of the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter.', 'type' => 'string', 'example' => 'ALIYUN::AccountId', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter.', 'type' => 'string', 'example' => '151266687691****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'Description' => ['description' => 'The description of the stack.', 'type' => 'string', 'example' => 'One ECS instance.', 'title' => ''], 'DisableRollback' => ['description' => 'Indicates whether rollback is disabled for the resources when the stack fails to be created.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'StackName' => ['description' => 'The stack name.', 'type' => 'string', 'example' => 'MyStack', 'title' => ''], 'TimeoutInMinutes' => ['description' => 'The timeout period for creating the stack.'."\n" ."\n" .'Unit: minutes.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'StackPolicyBody' => ['description' => 'The structure that contains the stack policy body.', 'type' => 'object', 'example' => '{ "Statement": [ { "Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*" }, { "Action": "Update:*", "Resource": "LogicalResourceId/apple1", "Effect": "Deny", "Principal": "*" } ] }', 'title' => ''], 'Resources' => [ 'description' => 'The resources in the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LogicalResourceId' => ['description' => 'The logical ID of the resource.', 'type' => 'string', 'example' => 'WebServer', 'title' => ''], 'AcsResourceType' => ['description' => 'The resource type of an Alibaba Cloud service.', 'type' => 'string', 'example' => 'ACS::ECS::Instance', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::Instance', 'title' => ''], 'Description' => ['description' => 'The description of the resource.', 'type' => 'string', 'example' => 'ECS instance.', 'title' => ''], 'Stack' => ['description' => 'The information about the nested stack. The data structure of the value is the same as the data structure of the entire response.', 'type' => 'object', 'example' => '{}', 'title' => ''], 'RequiredBy' => [ 'description' => 'The resources on which the stack depends.', 'type' => 'array', 'items' => ['description' => 'The resource on which the stack depends.', 'type' => 'string', 'example' => '["Resource1", "Resource2"]', 'title' => ''], 'title' => '', 'example' => '', ], 'Properties' => ['description' => 'The resource properties.', 'type' => 'object', 'example' => '{ "DiskMappings": [ { "Category": "cloud_ssd", "Size": "20" } ], "SystemDisk_Category": "cloud_ssd", "InstanceChargeType": "PostPaid", "AutoRenew": "False", "WillReplace": true, "ImageId": "centos_7", "InstanceType": "ecs.g6.large", "AllocatePublicIP": true, "AutoRenewPeriod": 1, "IoOptimized": "optimized", "ZoneId": "cn-beijing-g", "VSwitchId": "", "SecurityGroupId": "", "Period": 1, "InternetChargeType": "PayByTraffic", "SystemDiskCategory": "cloud_efficiency", "InternetMaxBandwidthOut": 1, "VpcId": "", "InternetMaxBandwidthIn": 200, "PeriodUnit": "Month" }', 'title' => ''], 'Action' => ['description' => 'The action that is performed on the resource. Valid values:'."\n" ."\n" .'- Add'."\n" ."\n" .'- Modify'."\n" ."\n" .'- Remove'."\n" ."\n" .'- None', 'type' => 'string', 'example' => 'Add', 'title' => ''], 'Replacement' => ['description' => 'Indicates whether a replacement update is performed on the template. Valid values:'."\n" ."\n" .'- True: A replacement update is performed on the template.'."\n" ."\n" .'- False: A change is made on the template.'."\n" ."\n" .'- Conditional: A replacement update may be performed on the template. You can check whether a replacement update is performed when the template is in use.'."\n" ."\n" .'> This parameter is returned only if Action is set to Modify.', 'type' => 'string', 'example' => 'False', 'title' => ''], 'PhysicalResourceId' => ['description' => 'The physical ID of the resource.'."\n" ."\n" .'This parameter is returned only if Action is set to Modify or Remove.', 'type' => 'string', 'example' => 'i-a1b2c3***', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RegionId' => ['description' => 'The region where the stack resides.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Log' => [ 'description' => 'The log that is generated when the stack is run.', 'type' => 'object', 'properties' => [ 'TerraformLogs' => [ 'description' => 'The Terraform logs. This parameter is returned only if the stack is a Terraform stack.'."\n" ."\n" .'> This parameter contains the logs of previewing the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Command' => ['description' => 'The name of the Terraform command that is run. Valid values:'."\n" ."\n" .'- apply'."\n" ."\n" .'- plan'."\n" ."\n" .'- destroy'."\n" ."\n" .'- version'."\n" ."\n" .'For more information about Terraform commands, see [Basic CLI Features](https://www.terraform.io/cli/commands).', 'type' => 'string', 'example' => 'apply', 'title' => ''], 'Stream' => ['description' => 'The output stream. Valid values:'."\n" ."\n" .'- stdout: standard output stream'."\n" ."\n" .'- stderr: standard error stream', 'type' => 'string', 'example' => 'stdout', 'title' => ''], 'Content' => ['description' => 'The content of the output stream that is returned after the command is run.', 'type' => 'string', 'example' => 'Apply complete! Resources: 42 added, 0 changed, 0 destroyed.', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'PreviewStack', 'description' => 'In this example, a stack named `MyStack` is created in the China (Hangzhou) region and previewed. The `TemplateBody` parameter of the stack is set to `{"ROSTemplateFormatVersion":"2015-09-01"}`.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'extraInfo' => ' 访问[公共错误码](~~131033~~)查看更多错误码。'."\n" .'| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | CircularDependency |Circular Dependency Found: {reason}. |模板包含循环引用。reason为具体原因。 |'."\n" .'| 400 | InvalidSchema | {reason}. |模板格式不正确。reason为具体原因。 |'."\n" .'| 400 | InvalidTemplateAttribute |The Referenced Attribute ({resource} {name}) is incorrect. |模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |'."\n" .'| 400 | InvalidTemplatePropertyType |The specified value type of ({resource} {section}) is incorrect. |模板资源定义中的字段类型不正确。resource为资源名,section为字段名。 |'."\n" .'| 400 | InvalidTemplateReference |The specified reference "{name}" (in {referencer}) is incorrect. |模板包含不正确的引用。name为引用名,referencer为引用者。 |'."\n" .'| 400 | InvalidTemplateSection |The template section is invalid: {section}. |模板包含无效的字段。section为字段名。 |'."\n" .'| 400 | InvalidTemplateVersion |The template version is invalid: {reason}. |模板版本不正确。reason为具体原因。 |'."\n" .'| 400 | StackValidationFailed | {reason}. |资源栈校验失败。reason为具体原因。 |'."\n" .'| 400 | UnknownUserParameter |The Parameter ({name}) was not defined in template. |传递的参数在模板中未定义。name为参数名。 |'."\n" .'| 400 | UserParameterMissing |The Parameter {name} was not provided. |参数在模板中已定义,但未传递值。name为参数名。 |'."\n" .'| 409 | StackExists |The Stack ({name}) already exists. |同名资源栈已存在。name为资源栈名称。 |'."\n" .'| 404 | TemplateNotFound |The Template ({ ID }) could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'PreviewStack'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:PreviewStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"Stack\\": {\\n \\"TemplateDescription\\": \\"One ECS instance.\\",\\n \\"Parameters\\": [\\n {\\n \\"ParameterKey\\": \\"ALIYUN::AccountId\\",\\n \\"ParameterValue\\": \\"151266687691****\\"\\n }\\n ],\\n \\"Description\\": \\"One ECS instance.\\",\\n \\"DisableRollback\\": false,\\n \\"StackName\\": \\"MyStack\\",\\n \\"TimeoutInMinutes\\": 60,\\n \\"StackPolicyBody\\": {\\n \\"Statement\\": [\\n {\\n \\"Action\\": \\"Update:*\\",\\n \\"Resource\\": \\"*\\",\\n \\"Effect\\": \\"Allow\\",\\n \\"Principal\\": \\"*\\"\\n },\\n {\\n \\"Action\\": \\"Update:*\\",\\n \\"Resource\\": \\"LogicalResourceId/apple1\\",\\n \\"Effect\\": \\"Deny\\",\\n \\"Principal\\": \\"*\\"\\n }\\n ]\\n },\\n \\"Resources\\": [\\n {\\n \\"LogicalResourceId\\": \\"WebServer\\",\\n \\"AcsResourceType\\": \\"ACS::ECS::Instance\\",\\n \\"ResourceType\\": \\"ALIYUN::ECS::Instance\\",\\n \\"Description\\": \\"ECS instance.\\",\\n \\"Stack\\": {},\\n \\"RequiredBy\\": [\\n \\"[\\\\\\"Resource1\\\\\\", \\\\\\"Resource2\\\\\\"]\\"\\n ],\\n \\"Properties\\": {\\n \\"DiskMappings\\": [\\n {\\n \\"Category\\": \\"cloud_ssd\\",\\n \\"Size\\": \\"20\\"\\n }\\n ],\\n \\"SystemDisk_Category\\": \\"cloud_ssd\\",\\n \\"InstanceChargeType\\": \\"PostPaid\\",\\n \\"AutoRenew\\": \\"False\\",\\n \\"WillReplace\\": true,\\n \\"ImageId\\": \\"centos_7\\",\\n \\"InstanceType\\": \\"ecs.g6.large\\",\\n \\"AllocatePublicIP\\": true,\\n \\"AutoRenewPeriod\\": 1,\\n \\"IoOptimized\\": \\"optimized\\",\\n \\"ZoneId\\": \\"cn-beijing-g\\",\\n \\"VSwitchId\\": \\"\\",\\n \\"SecurityGroupId\\": \\"\\",\\n \\"Period\\": 1,\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"SystemDiskCategory\\": \\"cloud_efficiency\\",\\n \\"InternetMaxBandwidthOut\\": 1,\\n \\"VpcId\\": \\"\\",\\n \\"InternetMaxBandwidthIn\\": 200,\\n \\"PeriodUnit\\": \\"Month\\"\\n },\\n \\"Action\\": \\"Add\\",\\n \\"Replacement\\": \\"False\\",\\n \\"PhysicalResourceId\\": \\"i-a1b2c3***\\"\\n }\\n ],\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Log\\": {\\n \\"TerraformLogs\\": [\\n {\\n \\"Command\\": \\"apply\\",\\n \\"Stream\\": \\"stdout\\",\\n \\"Content\\": \\"Apply complete! Resources: 42 added, 0 changed, 0 destroyed.\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', ], 'RegisterResourceType' => [ 'summary' => 'Creates a new resource type, or creates a new version for an existing resource type.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosUIOT2M'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'EntityType', 'in' => 'query', 'schema' => [ 'description' => 'The entity type. Set the value to Module.', 'enumValueTitles' => ['Module' => 'Module'], 'type' => 'string', 'required' => true, 'example' => 'Module', 'title' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type.', 'type' => 'string', 'required' => true, 'docRequired' => false, 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure that contains the template body. The template body must be 1 to 524,288 bytes in length. The template body is used as the module content. If the length of the template body exceeds the upper limit, we recommend that you add parameters to the HTTP POST request body to prevent request failures caused by excessively long URLs.'."\n" ."\n" .'> - This parameter takes effect only when EntityType is set to Module.'."\n" .'>'."\n" .'> - You can specify only one of the TemplateBody and TemplateURL parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an Object Storage Service (OSS) bucket, such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. The template body can be up to 524,288 bytes in length. The template body is used as the module content.'."\n" ."\n" .'> - If you do not specify the region ID of the OSS bucket, the value of RegionId is used.'."\n" .'>'."\n" .'> - This parameter takes effect only when EntityType is set to Module.'."\n" .'>'."\n" .'> - You can specify only one of the TemplateBody and TemplateURL parameters.'."\n" ."\n" .'The URL can be up to 1,024 bytes in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the resource type. The description can be up to 512 characters in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'It is a demo.', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests.
'."\n" .'The token can be up to 64 characters in length, and can contain letters, digits, hyphens (-), and underscores (\\_).
'."\n" .'For more information, see [Ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'RegistrationId' => ['description' => 'The ID of the registration record. You can call the [ListResourceTypeRegistrations](~~2330740~~) operation to query registration records.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'asynchronous', 'callback' => 'ROS::2019-09-10::ListResourceTypeRegistrations', 'callbackInterval' => 10000, 'maxCallbackTimes' => 30], 'title' => 'RegisterResourceType', 'description' => '- Versions increase from v1.'."\n" ."\n" .'- If you create a new resource type, v1 is used as the default version of the resource type. You can call the SetResourceType operation to change the default version of a resource type.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RegisterResourceType'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:RegisterResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"RegistrationId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\"\\n}","type":"json"}]', ], 'SetDeletionProtection' => [ 'summary' => 'Modifies the deletion protection setting for a stack.', 'path' => '/V2/SetDeletionProtection', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.'."\n" ."\n" .'The delete protection attribute of a nested stack is determined by the root stack and remains unchanged from the root stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'DeletionProtection', 'in' => 'query', 'schema' => ['description' => 'Indicates whether stack deletion protection is enabled. Valid values:'."\n" ."\n" .'- Enabled: enables the stack deletion protection.'."\n" ."\n" .'- Disabled (default): Resource stack deletion protection is Disabled. You can use the console or API(DeleteStack) to release the stack resources.'."\n" ."\n" .'> The deletion of nested stacks is the same as the root stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'Enabled', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'SetDeletionProtection', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetDeletionProtection'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetDeletionProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'SetResourceType' => [ 'summary' => 'Modifies the description of a resource type or a version of that type.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosUIOT2M'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MODULE::MyOrganization::MyService::MyUsecase', 'title' => ''], ], [ 'name' => 'VersionId', 'in' => 'query', 'schema' => ['description' => 'The version ID. Specify this parameter to modify a specific version of the resource type. Otherwise, the description of the resource type itself is modified.'."\n" ."\n" .'> You can specify either VersionId or DefaultVersionId.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'DefaultVersionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the default version. Specify this parameter to set the default version for the resource type.'."\n" ."\n" .'> You can specify either VersionId or DefaultVersionId.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the resource type or a version of the resource type. The description can be up to 512 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'It is a demo.', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'SetResourceType', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetResourceType'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'SetStackPolicy' => [ 'summary' => 'Configures a stack policy for a stack.', 'path' => '/V2/SetStackPolicy', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackPolicyBody', 'in' => 'query', 'schema' => ['description' => 'The structure that contains the stack policy body. The stack policy body must be 1 to 16,384 bytes in length.'."\n" ."\n" .'You can specify one of the StackPolicyBody and StackPolicyURL parameters, but you cannot specify both of them.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"Statement":[{"Effect":"Allow","Action":"Update:*","Principal":"*","Resource":"*"}]}', 'title' => ''], ], [ 'name' => 'StackPolicyURL', 'in' => 'query', 'schema' => ['description' => 'The URL for the file that contains the stack policy. The URL must point to a template located in an HTTP or HTTPS web server or an Alibaba Cloud OSS bucket. Examples: oss\\://ros/template/demo and oss\\://ros/template/demo?RegionId=cn-hangzhou. The template can be up to 16,384 bytes in length, and the URL can be up to 1,350 bytes in length.'."\n" ."\n" .'> If the region of the OSS bucket is not specified, the RegionId value is used.'."\n" ."\n" .'You can specify one of the StackPolicyBody and StackPolicyURL parameters, but you cannot specify both of them.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/stack-policy/demo', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'SetStackPolicy', 'description' => 'In this example, a stack policy is configured for a stack deployed in the `China (Hangzhou)` region whose ID is `4a6c9851-3b0f-4f5f-b4ca-a14bf691****`. The URL to the stack policy body is `oss://ros/stack-policy/demo`.', 'requestParamsDescription' => 'For more information about common parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => '| Error code | Error message | HTTP status code | Description |'."\n" .'| --------------------- | -------------------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------------ |'."\n" .'| StackValidationFailed | {reason}. | 400 | The error message returned because the stack validation failed. reason indicates the specific reason. |'."\n" .'| StackNotFound | The Stack ({name}) could not be found. | 404 | The error message returned because the specified stack does not exist. name indicates the name or ID of the stack. |', 'extraInfo' => "\n" .'| 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| StackValidationFailed |{reason}. | 400 |资源栈校验失败,reason为具体原因。 |'."\n" .'| StackNotFound |The Stack ({name}) could not be found. | 404 |资源栈不存在,name为资源栈名称或ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetStackPolicy'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetStackPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'SetTemplatePermission' => [ 'summary' => 'Shares or unshares a template.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12717', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'ShareOption', 'in' => 'query', 'schema' => ['description' => 'The sharing option.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- ShareToAccounts: shares the template with other Alibaba Cloud accounts.'."\n" ."\n" .'- CancelSharing: unshares the template.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ShareToAccounts', 'title' => ''], ], [ 'name' => 'VersionOption', 'in' => 'query', 'schema' => ['description' => 'The version option for the shared template. This parameter takes effect only if you set ShareOption to ShareToAccounts.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- AllVersions (default): shares all versions of the template.'."\n" ."\n" .'- Latest: shares only the latest version of template. When the version of the template is updated, ROS updates the shared version to the latest version.'."\n" ."\n" .'- Current: shares only the current version of the template. When the version of the template is updated, ROS does not update the shared version.'."\n" ."\n" .'- Specified: shares only the specified version of the template.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Specified', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the shared template. This parameter takes effect only if you set ShareOption to ShareToAccounts and set VersionOption to Specified.'."\n" ."\n" .'Valid values: v1 to v100.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the template.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'AccountIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The Alibaba Cloud accounts with or from which you want to share or unshare the template.
'."\n" .'Valid values of N: 1, 2, 3, 4, and 5.'."\n" ."\n" .'> - This parameter cannot be set to the ID of the Alibaba Cloud account that owns the template, or the RAM users of this Alibaba Cloud account.'."\n" .'>'."\n" .'> - When ShareOption is set to CancelSharing, you can unshare the template from all the specified Alibaba Cloud accounts by using an asterisk (\\*).', 'type' => 'array', 'items' => ['description' => 'The Alibaba Cloud account with or from which you want to share or unshare the template.
'."\n" .'Valid values of N: 1, 2, 3, 4, and 5.'."\n" ."\n" .'> - This parameter cannot be set to the ID of the Alibaba Cloud account that owns the template, or the RAM users of this Alibaba Cloud account.'."\n" .'>'."\n" .'> - When ShareOption is set to CancelSharing, you can unshare the template from all the specified Alibaba Cloud accounts by using an asterisk (\\*).', 'type' => 'string', 'required' => false, 'example' => '100406424347****', 'title' => ''], 'required' => true, 'example' => '151266687691****', 'maxItems' => 5, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'SetTemplatePermission', 'description' => 'In this example, the template whose ID is `5ecd1e10-b0e9-4389-a565-e4c15efc****` is shared with an Alibaba Cloud account. The ID of the Alibaba Cloud account is `151266687691****`.'."\n" ."\n" .'> The recipient Alibaba Cloud account (ID: `151266687691****`) can authorize RAM users to use the shared template.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | TemplateBeingProcessed |Template { ID } is being processed, retry later.|模板正在处理中,稍后再试。ID为模板ID。|'."\n" .'| 404 | TemplateNotFound |The Tempalte ({ ID }) could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetTemplatePermission'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetTemplatePermission', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\"\\n}","type":"json"}]', ], 'SignalResource' => [ 'summary' => 'Sends a signal to a resource in a stack.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the signal. Failure signals can cause stack creation or update to fail. If all signals are warnings, the stack cannot be created or updated. Valid values:'."\n" ."\n" .'- SUCCESS'."\n" ."\n" .'- FAILURE'."\n" ."\n" .'- WARNING', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'SUCCESS', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'UniqueId', 'in' => 'query', 'schema' => ['description' => 'The unique ID of the signal. The ID must be 1 to 64 characters in length. If multiple signals are sent to a single resource, each signal must have a unique ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '27c7347b-352a-4377-accf-63d361c1****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests.'."\n" ."\n" .'The token can be up to 64 characters in length and can contain letters, digits, hyphens (-) and underscores (\\_).'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'LogicalResourceId', 'in' => 'query', 'schema' => ['description' => 'The logical ID of the resource as defined in the template.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'WebServer', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'SignalResource', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | ResourceNotAvailable |The Resource ({name}) is not available. |资源处于不可用状态。name为资源名。 |'."\n" .'| 404 | ResourceNotFound |The Resource ({name}) could not be found in Stack {stack}. |资源栈中不存某资源。name为资源名,stack为资源栈名称或ID。 |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SignalResource'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SignalResource', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6\\"\\n}","type":"json"}]', ], 'StopStackGroupOperation' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. Call the [DescribeRegions](~~131035~~) operation to query available regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'OperationId', 'in' => 'query', 'schema' => ['description' => 'The operation ID. Call the [ListStackGroupOperations](~~151342~~) operation to query operation IDs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'StopStackGroupOperation', 'summary' => 'Stops an ongoing operation in a stack group.', 'description' => 'This example stops the stack group operation `6da106ca-1784-4a6f-a7e1-e723863****` in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => '| Error code | Error message | HTTP status code | Description |'."\n" .'| --------------------------- | ----------------------------------------------------------- | ---------------- | ------------------------------------------------------------------------------------------------------------- |'."\n" .'| InvalidParameter | The specified parameter {name} is invalid, {reason}. | 400 | The specified parameter is invalid. `{name}` indicates the parameter name and `{reason}` indicates the cause. |'."\n" .'| StackGroupOperationNotFound | The StackGroupOperation ({OperationId}) could not be found. | 404 | The specified stack group operation does not exist. `{OperationId}` indicates the operation ID. |', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n" .'| StackGroupOperationNotFound |The StackGroupOperation ({OperationId}) could not be found. | 404 |资源栈组操作不存在。OperationId为操作ID。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StopStackGroupOperation'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:StopStackGroupOperation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\"\\n}","type":"json"}]', ], 'TagResources' => [ 'summary' => 'Creates and adds tags to resources.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12720', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the tag. You can call [DescribeRegions](~~131035~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- stack'."\n" ."\n" .'- stackgroup'."\n" ."\n" .'- template'."\n" ."\n" .'- templatescratch: resource scenario.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'stack', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The resource IDs.', 'type' => 'array', 'items' => ['description' => 'The resource ID. You can specify up to 50 resource IDs.'."\n" ."\n" .'> When the value of ResourceType is stackgroup, specify the name of the stack group.', 'type' => 'string', 'required' => false, 'example' => '7fee80e1-8c48-4c2f-8300-0f6dc40b****', 'title' => ''], 'required' => true, 'example' => '7fee80e1-8c48-4c2f-8300-0f6dc40b****', 'maxItems' => 50, 'title' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the resources. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the resource.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the tag to add to the resource. You can specify up to 20 tag keys.'."\n" ."\n" .'The length must not exceed 128 characters. It cannot start with `aliyun` or `acs:`, and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => true, 'example' => 'FinanceDept', 'title' => ''], 'Value' => ['description' => 'The value of the tag to add to the resource. You can specify up to 20 tag values.'."\n" ."\n" .'The length must not exceed 128 characters. It cannot start with `aliyun` or `acs:`, and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => true, 'example' => 'FinanceJoshua', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C46FF5A8-C5F0-4024-8262-B16B639225A0', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'TagResources', 'description' => 'This topic provides an example of how to create and add a tag to a resource stack in China (Hangzhou) region. The resource stack ID is `7fee80e1-8c48-4c2f-8300-0f6dc40b****`, with the tag key of `FinanceDept` and the tag value of `FinanceJoshua`.', 'requestParamsDescription' => 'For more information about common request parameters, refer to [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | InvalidParameter | The specified parameter ResourceType is invalid, {reason}.|指定的资源类型参数错误,reason为具体原因。|'."\n" .'| 400 | InvalidParameter | The specified parameter ResourceIds is invalid, {reason}.|资源ID不存在或校验异常,reason为具体原因。|'."\n" .'| 400 | InvalidParameter | The specified parameter Tags is invalid, {reason}.|指定的Tags参数错误,reason为具体原因。|'."\n" .'| 400 | Duplicate.TagKey | The Tag.N.Key contain duplicate key.|标签中存在重复的键,请保持键的唯一性。|'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the valid tag policy values of \'TagValue\' are [\'red\',\'green\',\'orange\',\'blue\',\'pink\',\'white\',\'black\',\'grey\'], but the value is \'xxx\'. | 标签键合规,但标签值不合规。导致资源创建失败。请输入标签策略中 TagValue 规定的标签值。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the valid tag policy values of \'TagKey\' are [\'colorful\'], but the value is "colorful". | 标签键大小写不合规。导致资源创建失败。请输入与标签策略中 TagKey 大小写完全一致的标签键。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the tag policy keys [\'color\'] are necessary. | 标签不合规,缺少标签键 color,导致资源创建失败。请输入标签策略中 color 规定的标签。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'TagResources'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:TagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#TemplateScratchId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C46FF5A8-C5F0-4024-8262-B16B639225A0\\"\\n}","type":"json"}]', ], 'UntagResources' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12721', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the tag. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- stack: stack'."\n" ."\n" .'- stackgroup: stack group'."\n" ."\n" .'- template: template'."\n" ."\n" .'- templatescratch: scenario', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'stack', 'title' => ''], ], [ 'name' => 'All', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to remove all tags from the resource. This parameter takes effect when TagKey is not specified in the request. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false (default)', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the resource.'."\n" ."\n" .'> If you set ResourceType to stackgroup, you must set ResourceId to the name of the stack group.', 'type' => 'array', 'items' => ['description' => 'The ID of the resource.'."\n" ."\n" .'> If you set ResourceType to stackgroup, you must set ResourceId to the name of the stack group.', 'type' => 'string', 'required' => false, 'example' => '46ec7b78-9d5e-4b21-aefd-448c90aa****', 'title' => ''], 'required' => true, 'example' => '46ec7b78-9d5e-4b21-aefd-448c90aa****', 'maxItems' => 50, 'title' => '', ], ], [ 'name' => 'TagKey', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tag keys of the resource. You can specify up to 20 tag keys.', 'type' => 'array', 'items' => ['description' => 'The tag key of the resource. You can specify up to 20 tag keys.', 'type' => 'string', 'required' => false, 'example' => 'FinanceDept', 'title' => ''], 'required' => false, 'example' => 'FinanceDept', 'maxItems' => 21, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'C46FF5A8-C5F0-4024-8262-B16B639225A0 ', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'UntagResources', 'summary' => 'Removes tags from resources and then deletes the tags.', 'description' => 'This topic provides an example on how to remove all tags from a stack that is deployed in the China (Hangzhou) region. In this example, the stack ID is `46ec7b78-9d5e-4b21-aefd-448c90aa****`.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | InvalidParameter |The specified parameter ResourceType is invalid, {reason}.|指定的资源类型参数错误,reason为具体原因。|'."\n" .'| 400 | InvalidParameter |The specified parameter ResourceIds is invalid, {reason}.|资源ID不存在或校验异常,reason为具体原因。|'."\n" .'| 400 | InvalidParameter |The specified parameter Tags is invalid, {reason}.|指定的Tags参数错误,reason为具体原因。|'."\n" .'| 400 | Duplicate.TagKey |The Tag.N.Key contain duplicate key.|标签中存在重复的键,请保持键的唯一性。|', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UntagResources'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UnTagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#TemplateScratchId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C46FF5A8-C5F0-4024-8262-B16B639225A0\\\\t\\"\\n}","type":"json"}]', ], 'UpdateStack' => [ 'summary' => 'Updates the resources in a stack.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '12722', 'abilityTreeNodes' => ['FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The stack ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token to ensure the idempotency of the request. The token must be globally unique.
'."\n" .'The token can be up to 64 characters long and can contain letters, digits, hyphens (-), and underscores (\\_).
'."\n" .'For more information, see [How to ensure idempotence](~~134212~~).

', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'StackPolicyDuringUpdateBody', 'in' => 'query', 'schema' => ['description' => 'The temporary override for the stack policy body. The policy body can be 1 to 16,384 bytes long.
'."\n" .'If you want to update protected resources, specify a temporary stack policy override during the update. If you do not specify a stack policy, the current policy that is associated with the stack is used.
'."\n" .'This parameter takes effect only when the change set type is `UPDATE`. You can specify only one of the following parameters:

'."\n" ."\n" .'- `StackPolicyBody`'."\n" ."\n" .'- `StackPolicyURL`'."\n" ."\n" .'- `StackPolicyDuringUpdateBody`'."\n" ."\n" .'- `StackPolicyDuringUpdateURL`', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"Statement": [{"Effect": "Allow", "Action": "Update:*", "Principal": "*", "Resource": "*"}]}', 'title' => ''], ], [ 'name' => 'TimeoutInMinutes', 'in' => 'query', 'schema' => ['description' => 'The timeout period for the stack update, in minutes.'."\n" ."\n" .'- Default value: 60.'."\n" ."\n" .'- Unit: minutes.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The template body. The template body can be 1 to 524,288 bytes long. If the template body is large, we recommend that you use the POST request method and pass the parameter in the request body to prevent request failures due to an excessively long URL.'."\n" ."\n" .'> You can specify only one of the `TemplateBody`, `TemplateURL`, and `TemplateId` parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], ], [ 'name' => 'StackPolicyURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the stack policy. The URL must point to a policy that is located on a web server (HTTP or HTTPS) or in an Alibaba Cloud Object Storage Service (OSS) bucket, for example, `oss://ros/stack-policy/demo` or `oss://ros/stack-policy/demo?RegionId=cn-hangzhou`. The policy file can be up to 16,384 bytes long. If you do not specify the OSS region in the URL, the region specified by the RegionId parameter is used.'."\n" ."\n" .'> You can specify only one of the `StackPolicyBody` and `StackPolicyURL` parameters.'."\n" ."\n" .'The URL can be up to 1,350 bytes long.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-stack-policy/demo', 'title' => ''], ], [ 'name' => 'StackPolicyDuringUpdateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the temporary stack policy override. The URL must point to a policy that is located on a web server (HTTP or HTTPS) or in an Alibaba Cloud OSS bucket, for example, `oss://ros/stack-policy/demo` or `oss://ros/stack-policy/demo?RegionId=cn-hangzhou`. The policy file can be up to 16,384 bytes long.'."\n" ."\n" .'> If you do not specify the OSS region in the URL, the region specified by the RegionId parameter is used.'."\n" ."\n" .'The URL can be up to 1,350 bytes long.'."\n" ."\n" .'If you want to update protected resources, you must specify a temporary stack policy override during the update. If you do not specify a stack policy, the current policy that is associated with the stack is used. This parameter takes effect only when the change set type is `UPDATE`. You can specify only one of the following parameters:'."\n" ."\n" .'- `StackPolicyBody`'."\n" ."\n" .'- `StackPolicyURL`'."\n" ."\n" .'- `StackPolicyDuringUpdateBody`'."\n" ."\n" .'- `StackPolicyDuringUpdateURL`', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-stack-policy/demo', 'title' => ''], ], [ 'name' => 'StackPolicyBody', 'in' => 'query', 'schema' => ['description' => 'The stack policy body. The policy body can be 1 to 16,384 bytes long.'."\n" ."\n" .'> You can specify only one of the `StackPolicyBody` and `StackPolicyURL` parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"Statement": [{"Action": "Update:*", "Resource": "*", "Effect": "Allow", "Principal": "*"}]}', 'title' => ''], ], [ 'name' => 'UsePreviousParameters', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to reuse the values of parameters that are not specified in the current request.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: The values of unspecified parameters are reused from the previous request.'."\n" ."\n" .'- false: The values of unspecified parameters are not reused from the previous request.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the stack is located. You can call the [DescribeRegions](~~131035~~) operation to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'DisableRollback', 'in' => 'query', 'schema' => ['description' => '(This parameter is deprecated and has no effect.)', 'type' => 'boolean', 'deprecated' => true, 'required' => false, 'docRequired' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The location of the file that contains the template body. The URL must point to a template (1 to 524,288 bytes) that is located on an HTTP or HTTPS web server or in an Alibaba Cloud OSS bucket. The URL of an OSS bucket is in a format such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. If an OSS region is not specified, the region defaults to the one specified by the RegionId parameter.'."\n" ."\n" .'> You must specify exactly one of the TemplateBody, TemplateURL, or TemplateId parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM role. ROS assumes this role to create the stack and uses the credentials of the role to make API calls on your behalf.
'."\n" .'ROS always uses this role for operations on the stack. If you have permissions to perform operations on the stack, ROS uses this role even if you do not have permissions to use the role. This ensures that the role is granted the minimum required permissions. For more information about how to use RAM roles, see [Use stack roles](~~2568025~~).
'."\n" .'If you do not specify this value, ROS uses the role that was previously associated with the stack. If no role is available, ROS uses temporary credentials that are generated from your user credentials.
'."\n" .'The maximum length of the RAM role name is 64 bytes.


', 'type' => 'string', 'required' => false, 'example' => 'test-role', 'title' => ''], ], [ 'name' => 'ReplacementOption', 'in' => 'query', 'schema' => ['description' => 'Whether to use a replacement update. When the properties of a resource do not support modification updates, you can use a replacement update to change the resource properties. A replacement update deletes the resource and then recreates it. The physical ID of the new resource will change.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Enabled: Allows replacement updates.'."\n" ."\n" .'- Disabled (default): Does not allow replacement updates.'."\n" ."\n" .'> Modification updates have a higher priority than replacement updates.', 'type' => 'string', 'required' => false, 'example' => 'Disabled', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the template. This parameter applies to shared and private templates.'."\n" ."\n" .'> You can specify only one of the `TemplateBody`, `TemplateURL`, and `TemplateId` parameters.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. This parameter takes effect only when you specify `TemplateId`.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters of the template.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter. If you do not specify the name and value of a parameter, ROS uses the default value that is specified in the template.
'."\n" .'You can specify a maximum of 200 parameters.
'."\n" ."\n" .'> `Parameters` is an optional parameter. If you specify `Parameters`, you must also specify `Parameters.N.ParameterKey` and `Parameters.N.ParameterValue`.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter. You can specify a maximum of 200 parameters.'."\n" ."\n" .'> `Parameters` is an optional parameter. If you specify `Parameters`, you must also specify `Parameters.N.ParameterKey` and `Parameters.N.ParameterValue`.', 'type' => 'string', 'required' => true, 'example' => '12', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the stack.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the stack.
'."\n" .'You can specify up to 20 tags.
'."\n" ."\n" .'> `Tags` is an optional parameter. If you specify `Tags`, you must specify `Tags.N.Key`. These tags are propagated to all taggable resources in the stack. For more information, see [Tag propagation](~~201421~~).', 'type' => 'string', 'required' => true, 'example' => 'usage', 'title' => ''], 'Value' => ['description' => 'The tag value of the stack.
'."\n" .'You can specify up to 20 tags.
'."\n" ."\n" .'> These tags are propagated to all taggable resources in the stack. For more information, see [Tag propagation](~~201421~~).', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'Parallelism', 'in' => 'query', 'schema' => ['description' => 'The maximum number of concurrent operations that can be performed on resources.'."\n" ."\n" .'By default, this parameter is empty. You can specify an integer that is greater than or equal to 0.'."\n" ."\n" .'> - If you set this parameter to a value greater than 0, the value is used.'."\n" .'>'."\n" .'> - If you set this parameter to 0, no limit is imposed on the number of concurrent operations for ROS-type stacks. For Terraform-type stacks, the default value (typically 10) is used.'."\n" .'>'."\n" .'> - If you do not specify this parameter, the value from the last operation is used. If this parameter was not specified in the last operation, no limit is imposed for ROS-type stacks, and the default value (typically 10) is used for Terraform-type stacks.'."\n" .'>'."\n" .'> - If you specify this parameter, the specified value is associated with the stack and affects subsequent operations on the stack.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run for the request. Valid values:'."\n" ."\n" .'- true: performs a dry run to check the request. The operation is not performed.'."\n" ."\n" .'- false (default): performs the operation.'."\n" ."\n" .'> If you update a stack without making any changes, the operation fails with a NotSupported error if DryRun is false. If DryRun is true, no error is reported.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DryRunOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The dry run options. The list can contain a maximum of one item.'."\n" ."\n" .'> This parameter takes effect only when `DryRun` is set to `true`.', 'type' => 'array', 'items' => ['description' => 'The dry run option. Valid values:'."\n" ."\n" .'- ParameterAnalysis.ConsiderCondition: We recommend that you use this option if you need to perform parameter analysis. Otherwise, when conditions are calculated, the parameter values that are used are the parameter values before the stack update.'."\n" ."\n" .'> This option is available only for ROS-type stacks.'."\n" ."\n" .'- ParameterAnalysis.Disabled: disables parameter analysis. If you specify this option, the `Parameters` fields are not returned in the `DryRunResult` response.', 'type' => 'string', 'required' => false, 'example' => 'ParameterAnalysis.ConsiderCondition', 'title' => ''], 'required' => false, 'maxItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'TaintResources', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'my_vpc', 'title' => ''], 'maxItems' => 100, 'description' => '', 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'StackId' => ['description' => 'The stack ID.', 'type' => 'string', 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], 'DryRunResult' => [ 'description' => 'The dry run result. This parameter is returned only when `DryRun` is set to `true`.', 'type' => 'object', 'properties' => [ 'ParametersAllowedToBeModified' => [ 'description' => 'The parameters that can be modified.', 'type' => 'array', 'items' => ['description' => 'A parameter that can be modified. If you update a stack without changing the template, modifying only the value of this parameter does not cause a validation error.', 'type' => 'string', 'example' => 'param1', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersConditionallyAllowedToBeModified' => [ 'description' => 'The parameters that can be modified under specific conditions.', 'type' => 'array', 'items' => ['description' => 'A parameter that can be modified under specific conditions. If you update a stack without changing the template, whether modifying only this parameter\'s value causes a validation error depends on its new value.', 'type' => 'string', 'example' => 'param2', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersUncertainlyAllowedToBeModified' => [ 'description' => 'The parameters for which it is uncertain whether they can be modified.', 'type' => 'array', 'items' => ['description' => 'A parameter for which it is uncertain whether it can be modified. If you update a stack without changing the template, whether modifying only this parameter\'s value causes a validation error is determined at runtime.', 'type' => 'string', 'example' => 'param3', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersNotAllowedToBeModified' => [ 'description' => 'The parameters that cannot be modified.', 'type' => 'array', 'items' => ['description' => 'A parameter that cannot be modified. If you update a stack without changing the template, modifying only this parameter\'s value always causes a validation error.', 'type' => 'string', 'example' => 'param4', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersCauseInterruptionIfModified' => [ 'description' => 'A list of parameters that always cause a resource interruption if modified.'."\n" ."\n" .'> - This feature is supported for only a limited number of resource types.'."\n" .'>'."\n" .'> - This applies only to ROS stack updates.', 'type' => 'array', 'items' => ['description' => 'A parameter that always causes a resource interruption if modified. If you update a stack without changing the template, modifying only this parameter\'s value always causes a resource interruption.', 'type' => 'string', 'example' => 'param1', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersConditionallyCauseInterruptionIfModified' => [ 'description' => 'A list of parameters that may cause a resource interruption if modified.'."\n" ."\n" .'> - This feature is supported for only a limited number of resource types.'."\n" .'>'."\n" .'> - This applies only to ROS stack updates.', 'type' => 'array', 'items' => ['description' => 'A parameter that may cause a resource interruption if modified. If you update a stack without changing the template, whether modifying only this parameter\'s value causes a resource interruption depends on its new value and the resource\'s update behavior.', 'type' => 'string', 'example' => 'param2', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersUncertainlyCauseInterruptionIfModified' => [ 'description' => 'A list of parameters for which it is uncertain whether a modification will cause a resource interruption.'."\n" ."\n" .'> - This feature is supported for only a limited number of resource types.'."\n" .'>'."\n" .'> - This applies only to ROS stack updates.', 'type' => 'array', 'items' => ['description' => 'A parameter for which it is uncertain whether a modification will cause a resource interruption. If you update a stack without changing the template, whether modifying only this parameter\'s value causes a resource interruption is determined at runtime.', 'type' => 'string', 'example' => 'param3', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersCauseReplacementIfModified' => [ 'description' => 'A list of parameters that always cause a resource replacement if modified.'."\n" ."\n" .'> - This parameter is returned only when `ReplacementOption` is set to `Enabled`.'."\n" .'>'."\n" .'> - This applies only to ROS stack updates.', 'type' => 'array', 'items' => ['description' => 'A parameter that always causes a resource replacement if modified. If you update a stack without changing the template, modifying only this parameter\'s value always causes a resource replacement.', 'type' => 'string', 'example' => 'param5', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersConditionallyCauseReplacementIfModified' => [ 'description' => 'A list of parameters that may cause a resource replacement if modified.'."\n" ."\n" .'> - This parameter is returned only when `ReplacementOption` is set to `Enabled`.'."\n" .'>'."\n" .'> - This applies only to ROS stack updates.', 'type' => 'array', 'items' => ['description' => 'A parameter that may cause a resource replacement if modified. If you update a stack without changing the template, whether modifying only this parameter\'s value causes a resource replacement depends on its new value.', 'type' => 'string', 'example' => 'param6', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersUncertainlyCauseReplacementIfModified' => [ 'description' => 'A list of parameters for which it is uncertain whether a modification will cause a resource replacement.'."\n" ."\n" .'> - This parameter is returned only when `ReplacementOption` is set to `Enabled`.'."\n" .'>'."\n" .'> - This applies only to ROS stack updates.', 'type' => 'array', 'items' => ['description' => 'A parameter for which it is uncertain whether a modification will cause a resource replacement. If you update a stack without changing the template, whether modifying only this parameter\'s value causes a resource replacement is determined at runtime.', 'type' => 'string', 'example' => 'param7', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'UpdateStack', 'description' => 'The `Parameters` and `UsePreviousParameters` request parameters are related. If a parameter defined in the template is not specified in `Parameters`:'."\n" ."\n" .'- If `UsePreviousParameters` is set to `false`, the parameter uses its default value from the template. If the parameter does not have a default value, you must specify it in `Parameters`.'."\n" ."\n" .'- If `UsePreviousParameters` is set to `true`, the parameter retains its value from the previous stack creation. If no value was specified at that time and the template provides a default, that default value is used.'."\n" ."\n" .'This example shows how to update the template for a stack with the ID `4a6c9851-3b0f-4f5f-b4ca-a14bf691****` in the China (Beijing) region to `{"ROSTemplateFormatVersion": "2015-09-01"}`.', 'requestParamsDescription' => 'For details on common request parameters, see [Common parameters](~~131957~~).', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | CircularDependency | Circular Dependency Found: {reason}. |模板包含循环引用。reason为具体原因。 |'."\n" .'| 400 | InvalidSchema | {reason}. | 模板格式不正确。reason为具体原因。 |'."\n" .'| 400 | InvalidTemplateAttribute | The Referenced Attribute ({resource} {name}) is incorrect. |模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |'."\n" .'| 400 | InvalidTemplatePropertyType | The specified value type of ({resource} {section}) is incorrect. |模板字段定义的资源类型不正确。resource为资源名,section为字段名。 |'."\n" .'| 400 | InvalidTemplateReference | The specified reference "{name}" (in {referencer}) is incorrect. |模板包含不正确的引用。name为引用名,referencer为引用者。 |'."\n" .'| 400 | InvalidTemplateSection | The template section is invalid: {section}. |模板包含无效的字段。section为字段名。 |'."\n" .'| 400 | InvalidTemplateVersion | The template version is invalid: {reason}. |模板版本不正确。reason为具体原因。 |'."\n" .'| 400 | StackPolicyValidationFailed | Action denied by stack policy: {reason}. |未通过资源栈策略校验。reason为具体原因。 |'."\n" .'| 400 | StackValidationFailed | {reason}. |资源栈校验失败。reason为具体原因。 |'."\n" .'| 400 | UnknownUserParameter | The Parameter ({name}) was not defined in template. |传递的参数在模板中未定义。name为参数名。 |'."\n" .'| 400 | UserParameterMissing | The Parameter {name} was not provided. |参数在模板中已定义,但未传递值。name为参数名。 |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 409 | ActionInProgress | Stack {name} already has an action ({action}) in progress. |资源栈在变更中。name为资源栈名称或ID,action为具体的变更操作。 |'."\n" .'| 404 | TemplateNotFound |The Tempalte ({ ID }) could not be found. |模板不存在。ID为模板ID。 |'."\n" .'| 404 | TemplateNotFound |The Template { ID } with version { version } could not be found. |模板或指定版本不存在。ID为模板ID,version为模板版本。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the valid tag policy values of \'TagValue\' are [\'red\',\'green\',\'orange\',\'blue\',\'pink\',\'white\',\'black\',\'grey\'], but the value is \'xxx\'. | 标签键合规,但标签值不合规。导致资源创建失败。请输入标签策略中 TagValue 规定的标签值。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the valid tag policy values of \'TagKey\' are [\'colorful\'], but the value is "colorful". | 标签键大小写不合规。导致资源创建失败。请输入与标签策略中 TagKey 大小写完全一致的标签键。 |'."\n" .'| 400 | Forbidden.TagPolicy | The operation is failure, because the tag policy keys [\'color\'] are necessary. | 标签不合规,缺少标签键 color,导致资源创建失败。请输入标签策略中 color 规定的标签。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStack'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"StackId\\": \\"4a6c9851-3b0f-4f5f-b4ca-a14bf691****\\",\\n \\"DryRunResult\\": {\\n \\"ParametersAllowedToBeModified\\": [\\n \\"param1\\"\\n ],\\n \\"ParametersConditionallyAllowedToBeModified\\": [\\n \\"param2\\"\\n ],\\n \\"ParametersUncertainlyAllowedToBeModified\\": [\\n \\"param3\\"\\n ],\\n \\"ParametersNotAllowedToBeModified\\": [\\n \\"param4\\"\\n ],\\n \\"ParametersCauseInterruptionIfModified\\": [\\n \\"param1\\"\\n ],\\n \\"ParametersConditionallyCauseInterruptionIfModified\\": [\\n \\"param2\\"\\n ],\\n \\"ParametersUncertainlyCauseInterruptionIfModified\\": [\\n \\"param3\\"\\n ],\\n \\"ParametersCauseReplacementIfModified\\": [\\n \\"param5\\"\\n ],\\n \\"ParametersConditionallyCauseReplacementIfModified\\": [\\n \\"param6\\"\\n ],\\n \\"ParametersUncertainlyCauseReplacementIfModified\\": [\\n \\"param7\\"\\n ]\\n }\\n}","type":"json"}]', ], 'UpdateStackGroup' => [ 'summary' => 'Updates an existing stack group.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '12723', 'abilityTreeNodes' => ['FEATUREros4U80G2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the stack group is located. You can call the [DescribeRegions](~~131035~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region.
The name can be up to 255 characters in length and must start with a digit or a letter. The name can contain digits, letters, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the stack group.'."\n" ."\n" .'The description must be 1 to 256 characters in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'My Stack Group', 'title' => ''], ], [ 'name' => 'AccountIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The IDs of the destination accounts in which to deploy stacks in self-managed permission mode. You can specify a maximum of 50 destination account IDs.', 'type' => 'array', 'items' => ['description' => 'The IDs of the destination accounts in which to deploy stacks in self-managed permission mode. You can specify a maximum of 50 destination account IDs.', 'type' => 'string', 'required' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'required' => false, 'example' => '["12****"]', 'title' => '', ], ], [ 'name' => 'RegionIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The IDs of the regions where you want to deploy the stacks. You can specify a maximum of 20 region IDs.', 'type' => 'array', 'items' => ['description' => 'The IDs of the regions where you want to deploy the stacks. You can specify a maximum of 20 region IDs.', 'type' => 'string', 'required' => false, 'example' => '["cn-hangzhou","cn-beijing"]', 'title' => ''], 'required' => false, 'example' => '["cn-hangzhou", "cn-beijing"]', 'title' => '', ], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure that contains the template body. The template body must be 1 to 524,288 bytes in length. If the length of the template body is large, pass the parameter in the request body using the HTTP POST and Body Param method to prevent request failures caused by an excessively long URL.'."\n" ."\n" .'> You can specify only one of the \\`TemplateBody\\`, \\`TemplateURL\\`, and \\`TemplateId\\` parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion": "2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The URL of the file that contains the template body. The URL must point to a template that is located on an HTTP or HTTPS web server or in an Alibaba Cloud Object Storage Service (OSS) bucket. The template body must be 1 to 524,288 bytes in length. For example, the URL of an OSS bucket can be oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. If you do not specify the region of the OSS bucket, the value of the \\`RegionId\\` parameter is used.'."\n" ."\n" .'> You can specify only one of the \\`TemplateBody\\`, \\`TemplateURL\\`, and \\`TemplateId\\` parameters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros-template/demo', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests.
The token can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).
For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'OperationDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the operation to update the stack group.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Update stack instances in hangzhou', 'title' => ''], ], [ 'name' => 'OperationPreferences', 'in' => 'query', 'style' => 'json', 'schema' => ['description' => 'The preferences for the stack group operation.'."\n" ."\n" .'The following parameters are included:'."\n" ."\n" .'- FailureToleranceCount'."\n" ."\n" .' The number of accounts in each region where stack operation failures are allowed. If the number of failed operations in a region exceeds this value, Resource Orchestration Service (ROS) stops the operations in that region. If the operation is stopped in one region, the operation is not initiated in other regions.'."\n" ."\n" .' The value must be an integer from 0 to 20.'."\n" ."\n" .' If you do not specify this parameter, 0 is used as the default value.'."\n" ."\n" .'- FailureTolerancePercentage'."\n" ."\n" .' The percentage of accounts in each region where stack operation failures are allowed. If the percentage of failed operations in a region exceeds this value, ROS stops the operations in that region.'."\n" ."\n" .' The value must be an integer from 0 to 100. If the percentage is not an integer, ROS rounds down the percentage to the nearest integer.'."\n" ."\n" .' If you do not specify this parameter, 0 is used as the default value.'."\n" ."\n" .'- MaxConcurrentCount'."\n" ."\n" .' The maximum number of accounts in each region where stacks are deployed at the same time.'."\n" ."\n" .' The value must be an integer from 1 to 20.'."\n" ."\n" .' If you do not specify this parameter, 1 is used as the default value.'."\n" ."\n" .'- MaxConcurrentPercentage'."\n" ."\n" .' The maximum percentage of accounts in each region where stacks are deployed at the same time.'."\n" ."\n" .' The value must be an integer from 1 to 100. If the percentage is not an integer, ROS rounds down the percentage to the nearest integer.'."\n" ."\n" .' If you do not specify this parameter, 1 is used as the default value.'."\n" ."\n" .'- RegionConcurrencyType'."\n" .' The concurrency type of deployment regions. Valid values:'."\n" ."\n" .' - SEQUENTIAL (default): Deploys stacks in the specified regions sequentially. At any given time, stacks are deployed in only one region.'."\n" ."\n" .' - PARALLEL: Deploys stacks in all the specified regions in parallel.'."\n" ."\n" .'Separate multiple parameters with commas (,).'."\n" ."\n" .'> - You can specify only one of \\`MaxConcurrentCount\\` and \\`MaxConcurrentPercentage\\`.'."\n" .'>'."\n" .'> - You can specify only one of \\`FailureToleranceCount\\` and \\`FailureTolerancePercentage\\`.', 'type' => 'object', 'required' => false, 'docRequired' => false, 'example' => '{"FailureToleranceCount": 1,"MaxConcurrentCount": 2}', 'title' => ''], ], [ 'name' => 'AdministrationRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM administrator role that is assumed by ROS. This parameter is required when you create a stack group that has self-managed permissions. If you do not specify a value, \\`AliyunROSStackGroupAdministrationRole\\` is used as the default value. ROS assumes this role to perform operations on the stacks in the stack group. ROS uses the credentials of this role to assume the execution role (\\`AliyunROSStackGroupExecutionRole\\`).'."\n" ."\n" .'The name must be 1 to 64 characters in length and can contain letters, digits, and hyphens (-).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'AliyunROSStackGroupAdministrationRole', 'title' => ''], ], [ 'name' => 'ExecutionRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM execution role that is assumed by the administrator role (\\`AliyunROSStackGroupAdministrationRole\\`). This parameter is required when you create a stack group that has self-managed permissions. If you do not specify a value, \\`AliyunROSStackGroupExecutionRole\\` is used as the default value. ROS assumes this role to perform operations on the stacks in the stack group.'."\n" ."\n" .'The name must be 1 to 64 characters in length and can contain letters, digits, and hyphens (-).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'AliyunROSStackGroupExecutionRole', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the template. This parameter applies to shared templates and private templates.'."\n" ."\n" .'> You can specify only one of the \\`TemplateBody\\`, \\`TemplateURL\\`, and \\`TemplateId\\` parameters.', 'type' => 'string', 'required' => false, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'TemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the template. If you do not specify this parameter, the latest version is used.'."\n" ."\n" .'> \\`TemplateVersion\\` takes effect only when \\`TemplateId\\` is specified.', 'type' => 'string', 'required' => false, 'example' => 'v1', 'title' => ''], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The parameters of the stack group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The key of the parameter. If you do not specify the key and value of a parameter, ROS uses the default name and value that are specified in the template.'."\n" ."\n" .'You can specify a maximum of 200 parameters.'."\n" ."\n" .'> The \\`Parameters\\` parameter is optional. If you specify \\`Parameters\\`, you must specify \\`Parameters.N.ParameterKey\\`.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter.'."\n" ."\n" .'You can specify a maximum of 200 parameters.'."\n" ."\n" .'> The \\`Parameters\\` parameter is optional. If you specify \\`Parameters\\`, you must specify \\`Parameters.N.ParameterValue\\`.', 'type' => 'string', 'required' => true, 'example' => '1', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'PermissionModel', 'in' => 'query', 'schema' => ['description' => 'The permission model.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- SELF\\_MANAGED (default): Self-managed permissions. If you use this permission model, you must create RAM roles in the administrator and member accounts so that the accounts can be associated with each other. Then, you can deploy stacks in the member accounts.'."\n" ."\n" .'- SERVICE\\_MANAGED: Service-managed permissions. If you use this permission model, ROS creates service-linked roles for the administrator and member accounts. The administrator account uses the service-linked roles to deploy stacks in the member accounts.'."\n" ."\n" .'> * If stack instances exist in the stack group, you cannot change the permission model.'."\n" .'>'."\n" .'> * If you use the service-managed permission model to deploy stacks, the current account must be the management account or a delegated administrator account of your resource directory, and trusted access must be enabled for the account. For more information, see [Set a delegated administrator account](~~308253~~) and [Enable trusted access](~~298229~~).', 'type' => 'string', 'required' => false, 'example' => 'SELF_MANAGED', 'title' => ''], ], [ 'name' => 'AutoDeployment', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The automatic deployment settings.'."\n" ."\n" .'> This parameter is required only when \\`PermissionModel\\` is set to \\`SERVICE\\_MANAGED\\`.', 'type' => 'object', 'properties' => [ 'Enabled' => ['description' => 'Specifies whether to enable automatic deployment.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: Enables automatic deployment. If you enable automatic deployment, ROS automatically deploys stacks to the new member accounts that are added to the folder. If a member account is removed from the folder, ROS automatically deletes the stacks from the account.'."\n" ."\n" .'- false: Disables automatic deployment. If you disable automatic deployment, the stacks remain unchanged when the member accounts in the folder change.', 'type' => 'boolean', 'docRequired' => true, 'required' => true, 'example' => 'true', 'title' => ''], 'RetainStacksOnAccountRemoval' => ['description' => 'Specifies whether to retain the stacks in the member accounts that are removed from the folder.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- true: Retains the stacks.'."\n" ."\n" .'- false: Deletes the stacks.'."\n" ."\n" .'> This parameter is required only when \\`Enabled\\` is set to true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], 'required' => false, 'example' => '{"Enabled": true, "RetainStacksOnAccountRemoval": true}', 'title' => '', ], ], [ 'name' => 'DeploymentTargets', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The deployment targets to which you want to deploy stacks in service-managed permission mode.', 'type' => 'object', 'properties' => [ 'RdFolderIds' => [ 'description' => 'The IDs of the folders in the resource directory.', 'type' => 'array', 'items' => ['description' => 'The IDs of the folders in the resource directory. You can specify a maximum of 20 folder IDs.'."\n" ."\n" .'You must specify at least one of the \\`RdFolderIds\\` and \\`AccountIds\\` parameters. The following section describes the parameters:'."\n" ."\n" .'- If you specify \\`RdFolderIds\\` but not \\`AccountIds\\`, stacks are deployed in all the member accounts in the specified folders. If you select the Root folder, stacks are deployed in all the member accounts in the resource directory.'."\n" ."\n" .'- If you specify \\`AccountIds\\` but not \\`RdFolderIds\\`, stacks are deployed in the specified member accounts.'."\n" ."\n" .'- If you specify both \\`RdFolderIds\\` and \\`AccountIds\\`, stacks are deployed in the specified member accounts that are in the specified folders.'."\n" ."\n" .'> You can view the folder IDs on the **Overview** page of the **Resource Management** console. For more information, see [View the basic information of a folder](~~111223~~).', 'type' => 'string', 'required' => false, 'example' => '["fd-4PvlVLOL8v"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'AccountIds' => [ 'description' => 'The IDs of the member accounts in the resource directory. You can specify a maximum of 30 member account IDs.'."\n" ."\n" .'> You can view the member account IDs on the **Overview** page of the **Resource Management** console. For more information, see [View the details of a member](~~111624~~).', 'type' => 'array', 'items' => ['description' => 'The IDs of the member accounts in the resource directory. You can specify a maximum of 30 member account IDs.'."\n" ."\n" .'> You can view the member account IDs on the **Overview** page of the **Resource Management** console. For more information, see [View the details of a member](~~111624~~).', 'type' => 'string', 'required' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'example' => '{"RdFolderIds": ["fd-4PvlVLOL8v"]}', 'title' => '', ], ], [ 'name' => 'Capabilities', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The options for the stack group. You can specify up to one option.', 'type' => 'array', 'items' => ['description' => 'The option for the stack group. Valid value: \\`ExpandModules\\`. This option expands the modules in the current account.'."\n" ."\n" .'> - This parameter takes effect only if the template contains modules.'."\n" .'>'."\n" .'> - By default, the modules are not expanded in the current account. The modules must exist in all the deployment destination accounts. If you expand the modules in the current account, the modules must exist in the current account.', 'type' => 'string', 'required' => false, 'example' => 'ExpandModules', 'title' => ''], 'required' => false, 'maxItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'DeploymentOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['description' => 'Valid values:'."\n" ."\n" .'- Deploy: Updates the existing instances in the accounts of the specified resource directory.'."\n" ."\n" .'- Configure: Modifies the deployment destination resource directory but does not update the existing instances.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], 'maxItems' => 1, 'description' => 'The deployment options for a stack group with service-managed permissions. You can specify up to one deployment option.', 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'OperationId' => ['description' => 'The ID of the operation.', 'type' => 'string', 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"OperationId\\": \\"6da106ca-1784-4a6f-a7e1-e723863d****\\"\\n}","type":"json"}]', 'title' => 'Update Stack Group', 'description' => 'This topic provides an example of how to update the template of the stack group `MyStackGroup` to `{"ROSTemplateFormatVersion": "2015-09-01"}`. The stack group is in the China (Hangzhou) region and uses self-managed permissions.', 'requestParamsDescription' => 'For more information about common parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => 'The IDs of the accounts where you want to deploy stacks using self-managed permissions. You can specify up to 20 account IDs.', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| CircularDependency | Circular Dependency Found: {reason}.| 400 |模板包含循环引用。reason为具体原因。 |'."\n" .'| InvalidSchema | {reason}. | 400 | 模板格式不正确。reason为具体原因。 |'."\n" .'| InvalidTemplateAttribute | The Referenced Attribute ({resource} {name}) is incorrect. | 400 |模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |'."\n" .'| InvalidTemplatePropertyType | The specified value type of ({resource} {section}) is incorrect. | 400 |模板资源定义的字段类型不正确。resource为资源名,section为字段名。 |'."\n" .'| InvalidTemplateReference | The specified reference "{name}" (in {referencer}) is incorrect. | 400 |模板包含不正确的引用。name为引用名,referencer为引用者。 |'."\n" .'| InvalidTemplateSection | The template section is invalid: {section}. | 400 |模板包含无效的字段。section为字段名。 |'."\n" .'| InvalidTemplateVersion | The template version is invalid: {reason}.| 400 |模板版本不正确。reason为具体原因。 |'."\n" .'| UnknownUserParameter | The Parameter ({name}) was not defined in template. | 400 |传递的参数在模板中未定义。name为参数名。 |'."\n" .'| UserParameterMissing | The Parameter {name} was not provided. | 400 |参数在模板中已定义,但未传递值。name为参数名。 |'."\n" .'| StackGroupOperationInProgress | Another Operation on StackGroup ({name})s is in progress. | 409 | 资源栈组存在进行中的操作。name为资源栈组名称。 |'."\n" .'| TemplateNotFound |The Tempalte ({ ID }) could not be found. | 404 |模板不存在。ID为模板ID。 |'."\n" .'| TemplateNotFound |The Template { ID } with version { version } could not be found. | 404 |模板或指定版本不存在。ID为模板ID,version为模板版本。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStackGroup'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], ], 'UpdateStackInstances' => [ 'summary' => 'Updates stack instances for one or more accounts in specified regions.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATURErosTBD793'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack group. Call [DescribeRegions](~~131035~~) to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StackGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the stack group. The name must be unique within a region.
The name can be up to 255 characters in length and must start with a letter or a number. It can contain letters, numbers, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'MyStackGroup', 'title' => ''], ], [ 'name' => 'AccountIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The IDs of the destination accounts for which you want to deploy stacks with self-managed permissions. You can specify up to 30 account IDs.'."\n" ."\n" .'> This parameter is required when you update stacks with self-managed permissions.', 'type' => 'array', 'items' => ['description' => 'The IDs of the destination accounts for which you want to deploy stacks with self-managed permissions. You can specify up to 30 account IDs.'."\n" ."\n" .'> This parameter is required when you update stacks with self-managed permissions.', 'type' => 'string', 'required' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'required' => false, 'docRequired' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => '', ], ], [ 'name' => 'RegionIds', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The list of regions where you want to perform the operation. You can specify up to 20 regions.', 'type' => 'array', 'items' => ['description' => 'The list of regions where you want to perform the operation. You can specify up to 20 regions.', 'type' => 'string', 'required' => false, 'example' => '["cn-hangzhou","cn-beijing"]', 'title' => ''], 'required' => true, 'docRequired' => true, 'example' => '["cn-hangzhou", "cn-beijing"]', 'title' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. The client token is generated by the client and must be globally unique.
The token can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).
For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'OperationDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the update operation.'."\n" ."\n" .'The description must be 1 to 256 characters in length.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Update stack instances in hangzhou and beijing', 'title' => ''], ], [ 'name' => 'OperationPreferences', 'in' => 'query', 'style' => 'json', 'schema' => ['description' => 'The operation settings for updating the stacks.'."\n" ."\n" .'This includes the following parameters:'."\n" ."\n" .'- {"FailureToleranceCount": N}'."\n" ."\n" .' The number of accounts in which the stack operation can fail in a region. If the number of failures in a region exceeds this value, Resource Orchestration Service (ROS) stops the operation in that region. If the operation is stopped in one region, it does not continue in other regions.'."\n" ."\n" .' N must be an integer from 0 to 20.'."\n" ."\n" .' If you do not specify FailureToleranceCount, the default value is 0.'."\n" ."\n" .'- {"FailureTolerancePercentage": N}'."\n" ."\n" .' The percentage of accounts in which the stack operation can fail in a region. If the percentage of failures in a region exceeds this value, ROS stops the operation in that region.'."\n" ."\n" .' N must be an integer from 0 to 100. If the percentage is not an integer, ROS rounds it down to the nearest integer.'."\n" ."\n" .' If you do not specify FailureTolerancePercentage, the default value is 0.'."\n" ."\n" .'- {"MaxConcurrentCount": N}'."\n" ."\n" .' The maximum number of accounts in which stacks can be deployed at the same time in a region.'."\n" ."\n" .' N must be an integer from 1 to 20.'."\n" ."\n" .' If you do not specify MaxConcurrentCount, the default value is 1.'."\n" ."\n" .'- {"MaxConcurrentPercentage": N}'."\n" ."\n" .' The percentage of accounts in which stacks can be deployed at the same time in a region.'."\n" ."\n" .' The value must be an integer from 1 to 100. If the percentage is not an integer, ROS rounds it down to the nearest integer.'."\n" ."\n" .' If you do not specify MaxConcurrentPercentage, the default value is 1.'."\n" ."\n" .'- {"RegionConcurrencyType": N}'."\n" .' The concurrency type for deploying stacks in different regions. Valid values:'."\n" ."\n" .' - SEQUENTIAL (Default): Deploys stacks in the specified regions one by one in sequence. At any one time, stacks are deployed in only one region.'."\n" ."\n" .' - PARALLEL: Deploys stacks in all specified regions in parallel.'."\n" ."\n" .'Separate multiple parameters with commas (,).'."\n" ."\n" .'> - You cannot specify both MaxConcurrentCount and MaxConcurrentPercentage.'."\n" .'>'."\n" .'> - You cannot specify both FailureToleranceCount and FailureTolerancePercentage.', 'type' => 'object', 'required' => false, 'docRequired' => false, 'example' => '{"FailureToleranceCount": 1,"MaxConcurrentCount": 2}', 'title' => ''], ], [ 'name' => 'TimeoutInMinutes', 'in' => 'query', 'schema' => ['description' => 'The timeout period for the update operation.'."\n" ."\n" .'- Default value: 60.'."\n" ."\n" .'- Unit: minutes.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'maximum' => '1440', 'minimum' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'ParameterOverrides', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of parameters to overwrite.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The name of the parameter to overwrite. If you do not specify this parameter, ROS uses the parameter name that you specified when you created the stack group.'."\n" ."\n" .'The value of N can be up to 200.'."\n" ."\n" .'> - The ParameterOverrides parameter is optional.'."\n" .'>'."\n" .'> - If you specify ParameterOverrides, you must specify both ParameterOverrides.N.ParameterKey and ParameterOverrides.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => 'Amount', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter to overwrite. If you do not specify the name and value of a parameter, ROS uses the parameter that you specified when you created the stack group.'."\n" ."\n" .'The value of N can be up to 200.'."\n" ."\n" .'> - The ParameterOverrides parameter is optional.'."\n" .'>'."\n" .'> - If you specify ParameterOverrides, you must specify both ParameterOverrides.N.ParameterKey and ParameterOverrides.N.ParameterValue.', 'type' => 'string', 'required' => true, 'example' => '1', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 200, 'title' => '', 'example' => '', ], ], [ 'name' => 'DeploymentTargets', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The deployment targets for the stacks that are deployed in service-managed mode.'."\n" ."\n" .'> This parameter is required when you update stacks in service-managed mode.', 'type' => 'object', 'properties' => [ 'RdFolderIds' => [ 'description' => 'The IDs of the folders in the resource directory.', 'type' => 'array', 'items' => ['description' => 'The IDs of the folders in the resource directory. You can specify up to 20 folder IDs.'."\n" ."\n" .'You must specify \\`RdFolderIds\\` or \\`AccountIds\\`.'."\n" ."\n" .'- If you specify \\`RdFolderIds\\` but not \\`AccountIds\\`, stacks are deployed in all member accounts in the specified folders. If you specify the root folder, stacks are deployed in all member accounts in your resource directory.'."\n" ."\n" .'- If you specify \\`AccountIds\\` but not \\`RdFolderIds\\`, stacks are deployed in the specified member accounts.'."\n" ."\n" .'- If you specify both parameters, the accounts in \\`AccountIds\\` must be in the folders specified by \\`RdFolderIds\\`. Stacks are deployed in the specified member accounts.'."\n" ."\n" .'> You can view the folder IDs on the **Overview** page in the **Resource Management** console. For more information, see [View the basic information of a folder](~~111223~~).', 'type' => 'string', 'required' => false, 'example' => '["fd-4PvlVLOL8v"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'AccountIds' => [ 'description' => 'The IDs of the member accounts in the resource directory. You can specify up to 50 member account IDs.'."\n" ."\n" .'> You can view the member account IDs on the **Overview** page in the **Resource Management** console. For more information, see [View the details of a member](~~111624~~).', 'type' => 'array', 'items' => ['description' => 'The IDs of the member accounts in the resource directory. You can specify up to 50 member account IDs.'."\n" ."\n" .'> You can view the member account IDs on the **Overview** page in the **Resource Management** console. For more information, see [View the details of a member](~~111624~~).', 'type' => 'string', 'required' => false, 'example' => '["151266687691****","141261387191****"]', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '14A07460-EBE7-47CA-9757-12CC4761D47A', 'title' => ''], 'OperationId' => ['description' => 'The operation ID.', 'type' => 'string', 'example' => '6da106ca-1784-4a6f-a7e1-e723863d****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"14A07460-EBE7-47CA-9757-12CC4761D47A\\",\\n \\"OperationId\\": \\"6da106ca-1784-4a6f-a7e1-e723863d****\\"\\n}","type":"json"}]', 'title' => 'UpdateStackInstances', 'description' => 'This topic provides an example of how to update stacks for the stack group `MyStackGroup`, which is in the China (Hangzhou) region and uses self-managed permissions. The stacks are updated for the Alibaba Cloud accounts `151266687691****` and `141261387191****` in the China (Hangzhou) and China (Beijing) regions.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => ' | 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidParameter |The specified parameter {name} is invalid, {reason}. | 400 |无效参数,name为参数名,reason为原因。 |'."\n" .'| StackGroupNotFound |The StackGroup ({name}) could not be found. | 404 |资源栈组不存在。name为资源栈组名称。 |'."\n" .'| StackGroupOperationInProgress |Another Operation on StackGroup ({name}) is in progress. | 409 |资源栈组存在进行中的操作。name为资源栈组名称。 |'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStackInstances'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], ], ], 'UpdateStackTemplateByResources' => [ 'path' => '/V2/UpdateStackTemplateByResources', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATURErosU14OAJ', 'FEATURErosZVIFJW'], ], 'parameters' => [ [ 'name' => 'StackId', 'in' => 'query', 'schema' => ['description' => 'The ID of the stack.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '4a6c9851-3b0f-4f5f-b4ca-a14bf691****', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to only preview the corrected template in this request. Default value: false. Valid values:'."\n" ."\n" .'- true: returns the content of the corrected template and does not correct the template. After Resource Orchestration Service (ROS) compares the corrected template with the original template, ROS determines whether to execute the correction.'."\n" ."\n" .'- false: corrects the template to eliminate drift.'."\n" ."\n" .'> We recommend that you set the DryRun parameter to true to preview the corrected template. If the template content meets expectations, set the DryRun parameter to false to execute the correction.', 'type' => 'boolean', 'required' => false, 'docRequired' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack. You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that it is unique among different requests.'."\n" ."\n" .'The token can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'TemplateFormat', 'in' => 'query', 'schema' => ['description' => 'The format of the returned template. Default value: JSON. Valid values:'."\n" ."\n" .'- JSON'."\n" ."\n" .'- YAML', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'JSON', 'title' => ''], ], [ 'name' => 'LogicalResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The logical ID of resource.', 'type' => 'array', 'items' => ['description' => 'The logical ID of resource N, which is used to filter resources. Template correction takes effect only for resources in the list. By default, all resources that have drifted are corrected.'."\n" ."\n" .'If the list of corrected resources contains resources in the DELETED state, ROS may adjust the resources that are not in the list but reference the deleted resources in the list to ensure the correctness of the new template.', 'type' => 'string', 'required' => false, 'example' => 'WebServer', 'title' => ''], 'required' => false, 'example' => 'Vpc', 'maxItems' => 200, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'NewTemplateBody' => ['description' => 'The template content after correction.', 'type' => 'string', 'example' => '{\\"ROSTemplateFormatVersion\\": \\"2015-09-01\\", \\"Resources\\": {\\"Vpc\\": {\\"Type\\": \\"ALIYUN::ECS::VPC\\", \\"Properties\\": {\\"VpcName\\": \\"test\\", \\"CidrBlock\\": \\"192.168.0.0/16\\", \\"Description\\": \\"test2\\"}}}, \\"Outputs\\": {\\"VpcId\\": {\\"Value\\": {\\"Fn::GetAtt\\": [\\"Vpc\\", \\"VpcId\\"]}}}}', 'title' => ''], 'OldTemplateBody' => ['description' => 'The template content before correction.', 'type' => 'string', 'example' => '{\\"ROSTemplateFormatVersion\\": \\"2015-09-01\\", \\"Resources\\": {\\"Vpc\\": {\\"Type\\": \\"ALIYUN::ECS::VPC\\", \\"Properties\\": {\\"VpcName\\": \\"test\\", \\"CidrBlock\\": \\"192.168.0.0/16\\", \\"Description\\": \\"test1\\"}}}, \\"Outputs\\": {\\"VpcId\\": {\\"Value\\": {\\"Fn::GetAtt\\": [\\"Vpc\\", \\"VpcId\\"]}}}}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [], 'title' => 'UpdateStackTemplateByResources', 'summary' => 'Eliminates stack drifts by performing drift detection.', 'description' => 'Limits: You can eliminate only drift on stacks that have drifted. You must call the [DetectStackDrift](~~155094~~) operation to perform drift detection on a stack, call the [GetStackDriftDetectionStatus](~~155097~~) operation to query the drift status of the stack to make sure that the stack has drifted, and then call the UpdateStackTemplateByResources operation to eliminate drift.'."\n" ."\n" .'In this topic, drift is eliminated for a stack whose ID is `4a6c9851-3b0f-4f5f-b4ca-a14bf691****`. The stack is deployed in the China (Hangzhou) region.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => '| HTTP status code | Error code | Error message | Description |'."\n" .'| ---------------- | ------------------------------- | -------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| 400 | StackDriftDetectionNotAvailable | There is no complete drift detection for stack ({ID}). | The error message returned because no drift detection has been completed on the stack. ID indicates the stack ID. |'."\n" .'| 400 | StackAlreadyInSync | This is not need to correct stack drifts, stack ({ID}) is already in sync. | The error message returned because no drift exists and the template correction is not needed. ID indicates the stack ID. |'."\n" .'| 400 | CorrectStackDriftsFailure | {reason} | The error message returned because the stack cannot be corrected. reason indicates the specific reason. |'."\n" .'| 404 | StackNotFound | The Stack ({name}) could not be found. | The error message returned because the specified stack does not exist. name indicates the name or ID of the stack. |'."\n" .'| 404 | ResourceNotFound | The Resource ({name}) could not be found in Stack {stack}. | The error message returned because the specified resource does not exist in the specified stack. name indicates the resource name, and stack indicates the stack name or ID. |', 'extraInfo' => '| HTTP| 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 400 | StackDriftDetectionNotAvailable |There is no complete drift detection for stack ({ID}). |资源栈没有成功完成过的偏差。ID为资源栈ID。|'."\n" .'| 400 | StackAlreadyInSync |This is not need to correct stack drifts, stack ({ID}) is already in sync. |没有必要对资源栈模板进行修正,因为没有偏差。ID为资源栈ID。|'."\n" .'| 400 | CorrectStackDriftsFailure |{reason} |无法对资源栈进行修正。reason为原因。 |'."\n" .'| 404 | StackNotFound |The Stack ({name}) could not be found. |资源栈不存在。name为资源栈名称或ID。 |'."\n" .'| 404 | ResourceNotFound|The Resource ({name}) could not be found in Stack {stack}. |资源栈中不存某资源。name为资源名,stack为资源栈名称或ID。|', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStackTemplateByResources'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStackTemplateByResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"NewTemplateBody\\": \\"{\\\\\\\\\\\\\\"ROSTemplateFormatVersion\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"2015-09-01\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Resources\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Vpc\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Type\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"ALIYUN::ECS::VPC\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Properties\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"VpcName\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"test\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"CidrBlock\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"192.168.0.0/16\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Description\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"test2\\\\\\\\\\\\\\"}}}, \\\\\\\\\\\\\\"Outputs\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"VpcId\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Value\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Fn::GetAtt\\\\\\\\\\\\\\": [\\\\\\\\\\\\\\"Vpc\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"VpcId\\\\\\\\\\\\\\"]}}}}\\",\\n \\"OldTemplateBody\\": \\"{\\\\\\\\\\\\\\"ROSTemplateFormatVersion\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"2015-09-01\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Resources\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Vpc\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Type\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"ALIYUN::ECS::VPC\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Properties\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"VpcName\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"test\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"CidrBlock\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"192.168.0.0/16\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"Description\\\\\\\\\\\\\\": \\\\\\\\\\\\\\"test1\\\\\\\\\\\\\\"}}}, \\\\\\\\\\\\\\"Outputs\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"VpcId\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Value\\\\\\\\\\\\\\": {\\\\\\\\\\\\\\"Fn::GetAtt\\\\\\\\\\\\\\": [\\\\\\\\\\\\\\"Vpc\\\\\\\\\\\\\\", \\\\\\\\\\\\\\"VpcId\\\\\\\\\\\\\\"]}}}}\\"\\n}","type":"json"}]', ], 'UpdateTemplate' => [ 'summary' => 'Update Template', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12726', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], ], 'parameters' => [ [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The location of the file containing the template body. The URL must point to a template located on a web server (HTTP or HTTPS) or in an Alibaba Cloud OSS bucket (e.g., oss\\://ros/template/demo, oss\\://ros/template/demo?RegionId=cn-hangzhou), with a maximum size of 524,288 bytes.'."\n" ."\n" .'> If the OSS region is not specified, it defaults to the same as the `RegionId` parameter in the request.'."\n" ."\n" .'You can only specify one of `TemplateBody` or `TemplateURL`.
'."\n" .'The maximum length of the URL is 1,024 bytes.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/template/demo', 'title' => ''], ], [ 'name' => 'TemplateName', 'in' => 'query', 'schema' => ['description' => 'The name of the template.
'."\n" .'The length should not exceed 255 characters (utf-8 encoding), and it must start with a number, letter, or Chinese character. It can include numbers, letters, Chinese characters, hyphens (-), and underscores (\\_).', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'MyTemplate', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the template. The maximum length is 256 characters.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'It is a demo.', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure of the template body. The length should be between 1 and 524,288 bytes. If the content is long, it is recommended to use HTTP POST + Body Param to pass the parameter in the request body to avoid request failure due to an overly long URL.'."\n" ."\n" .'> You must and can only specify one of `TemplateBody`, `TemplateURL`, `TemplateId`, or `TemplateScratchId`.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'TemplateId', 'in' => 'query', 'schema' => ['description' => 'The template ID. Supports both shared and private templates.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], ], [ 'name' => 'ValidationOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'Validation options.'."\n" ."\n" .'By default, no options are enabled, and strict validation is performed.', 'type' => 'array', 'items' => ['description' => 'Validation options. Values:'."\n" ."\n" .'- BasicValidation: Only performs basic structural validation on the template content.', 'type' => 'string', 'required' => false, 'example' => 'BasicValidation', 'title' => ''], 'required' => false, 'maxItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'RotateStrategy', 'in' => 'query', 'schema' => ['description' => 'Template version rotation strategy. Values:'."\n" ."\n" .'- None (default): No rotation. An error occurs when the version limit is reached.'."\n" ."\n" .'- DeleteOldestNonSharedVersionWhenLimitExceeded: Rotates and deletes non-shared template versions.'."\n" ."\n" .'> * If all versions of the template are shared, they cannot be rotated and deleted.'."\n" .'>'."\n" .'> * The current latest version will not be rotated and deleted.'."\n" .'>'."\n" .'> * Regardless of whether rotation deletion is used, the template version number cannot exceed v65000.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''], ], [ 'name' => 'IsDraft', 'in' => 'query', 'schema' => ['description' => 'Whether to update the Draft (draft) version. Values:'."\n" ."\n" .'- false (default): If template content is provided, a new version is created, and the Draft version is cleared. Otherwise, the current latest version is modified.'."\n" ."\n" .'- true: Modifies the Draft version. The Draft version can only be retrieved via the GetTemplate interface. The ListTemplateVersions interface will not return it. The TemplateVersion parameter in other interfaces cannot specify Draft.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => '8C5D90E1-66B6-496C-9371-3807F8DA80A8', 'title' => ''], 'TemplateId' => ['description' => 'Template ID.', 'type' => 'string', 'example' => '5ecd1e10-b0e9-4389-a565-e4c15efc****', 'title' => ''], 'TemplateVersion' => ['description' => 'The template version affected by this operation.', 'type' => 'string', 'example' => 'v2', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'Update Template', 'description' => 'When updating a template, please note:'."\n" ."\n" .'- If you specify `TemplateBody` or `TemplateURL`, the template version will be incremented by 1 after a successful update. For example, the version changes from v1 to v2.'."\n" ."\n" .'- If neither `TemplateBody` nor `TemplateURL` is specified, the template version remains unchanged.'."\n" ."\n" .'- A template can have up to 100 versions. If the version limit is reached, the template update will fail, and you need to recreate the template.', 'requestParamsDescription' => 'For details on common request parameters, see [Common Parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| HttpCode | 错误码 | 错误信息 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| 404 | TemplateNotFound |The Tempalte ({ ID }) could not be found. |模板不存在。 |'."\n" .'| 400 | InvalidSchema |{reason}. |模板格式不正确。reason为具体原因。 |'."\n" .'| 400 | InvalidTemplateAttribute |The Referenced Attribute ({resource} {name}) is incorrect. |模板包含不正确的资源属性(输出)引用。resource为资源名,name为属性名。 |'."\n" .'| 400 | InvalidTemplatePropertyType |The specified value type of ({resource} {section}) is incorrect. |模板资源定义中的字段类型不正确。resource为资源名,section为字段名。 |'."\n" .'| 400 | InvalidTemplateReference |The specified reference "{name}" (in {referencer}) is incorrect. |模板包含不正确的引用。name为引用名,referencer为引用者。 |'."\n" .'| 400 | InvalidTemplateSection |The template section is invalid: {section}. |模板包含无效的字段。section为字段名。 |'."\n" .'| 400 | InvalidTemplateVersion |The template version is invalid: {reason}. |模板版本不正确。reason为具体原因。 |'."\n" .'| 400 | TemplateBeingProcessed |Template { ID } is being processed, retry later.|模板正在处理中,稍后再试。ID为模板ID。|'."\n" ."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateTemplate'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#templateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"8C5D90E1-66B6-496C-9371-3807F8DA80A8\\",\\n \\"TemplateId\\": \\"5ecd1e10-b0e9-4389-a565-e4c15efc****\\",\\n \\"TemplateVersion\\": \\"v2\\"\\n}","type":"json"}]', ], 'UpdateTemplateScratch' => [ 'summary' => 'Updates a scenario.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATURErosUSKZAD', 'FEATURErosHDIJ7A', 'FEATURErosSKHQLM'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the scenario.'."\n" ."\n" .'You can call the [DescribeRegions](~~131035~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateScratchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource scenario.'."\n" ."\n" .'The valid values of the ParameterKey and ParameterValue request parameters vary based on the IDs of different types of resource scenarios. For more information, see the "Additional information about request parameters" section of this topic.'."\n" ."\n" .'> You can call the [ListTemplateScratches](~~610832~~) operation to query the ID of a resource scenario.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ts-7f7a704cf71c49a6****', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the scenario.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'Copy VPC resources.', 'title' => ''], ], [ 'name' => 'SourceResources', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The source resources.'."\n" ."\n" .'> You must specify only one of the following parameters: SourceResources, SourceTag, and SourceResourceGroup.', 'type' => 'array', 'items' => [ 'description' => 'The source resource.', 'type' => 'object', 'properties' => [ 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => true, 'example' => 'vpc-bp1m6fww66xbntjyc****', 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'required' => true, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SourceTag', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The source tag.'."\n" ."\n" .'> You must specify only one of the following parameters: SourceResources, SourceTag, and SourceResourceGroup.', 'type' => 'object', 'properties' => [ 'ResourceTags' => ['description' => 'The source tags. A tag contains a tag key and a tag value.'."\n" ."\n" .'If you want to specify only the tag key, you must leave the tag value empty. Example: {"TagKey": ""}.'."\n" ."\n" .'If you set TemplateScratchType to ArchitectureDetection, you can add up to 5 source tags. In other cases, you can add up to 10 source tags.', 'type' => 'object', 'required' => true, 'example' => '{"a": "b"}', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource types for filtering resources.', 'type' => 'array', 'items' => ['description' => 'The resource type for filtering resources. If you specify the resource types, ROS scans only the resources that are of the specified types and have the specified tags. If you do not specify the resource types, ROS scans all resources that have the specified tags.'."\n" ."\n" .'You can specify up to 20 resource types.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SourceResourceGroup', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The source resource group.'."\n" ."\n" .'> You must specify only one of the following parameters: SourceResources, SourceTag, and SourceResourceGroup.', 'type' => 'object', 'properties' => [ 'ResourceGroupId' => ['description' => 'The ID of the source resource group.', 'type' => 'string', 'required' => true, 'example' => 'rg-acfmzawhxxc****', 'title' => ''], 'ResourceTypeFilter' => [ 'description' => 'The resource types for filtering resources.', 'type' => 'array', 'items' => ['description' => 'The resource type for filtering resources. If you specify the resource types, ROS scans only the resources that are of the specified types and belong to the specified resource group. If you do not specify the resource types, ROS scans all resources that belong to the specified resource group.'."\n" ."\n" .'You can specify up to 20 resource types.', 'type' => 'string', 'required' => false, 'example' => 'ALIYUN::ECS::VPC', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'PreferenceParameters', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The preference parameters of the resource scenario.', 'type' => 'array', 'items' => [ 'description' => 'The preference parameter of the scenario.', 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The parameter name.'."\n" ."\n" .'For more information about the valid values of ParameterKey, see the "**Additional information about request parameters**" section of this topic.'."\n" ."\n" .'> - PreferenceParameters is optional. If you specify PreferenceParameters, you must specify both ParameterKey and ParameterValue.'."\n" .'>'."\n" .'> - If you set TemplateScratchType to ResourceImport, you must set ParameterKey to DeletionPolicy.', 'type' => 'string', 'required' => true, 'example' => 'DeletionPolicy', 'title' => ''], 'ParameterValue' => ['description' => 'The parameter value. The value of ParameterValue varies based on the value of ParameterKey.'."\n" ."\n" .'For more information about the valid values of ParameterKey, see the "**Additional information about request parameters**" section of this topic.'."\n" ."\n" .'> PreferenceParameters is optional. If you specify PreferenceParameters, you must specify both ParameterKey and ParameterValue.', 'type' => 'string', 'required' => true, 'example' => 'Retain', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'docRequired' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'LogicalIdStrategy', 'in' => 'query', 'schema' => ['description' => 'The policy based on which the logical ID is generated. Valid values:'."\n" ."\n" .'- LongTypePrefixAndIndexSuffix: long-type prefix + index-type suffix'."\n" ."\n" .'- LongTypePrefixAndHashSuffix: long-type prefix + hash-type suffix'."\n" ."\n" .'- ShortTypePrefixAndHashSuffix: short-type prefix + hash-type suffix'."\n" ."\n" .'> If you set TemplateScratchType to ArchitectureDetection, the default value of LogicalIdStrategy is LongTypePrefixAndHashSuffix. In other cases, the default value of LogicalIdStrategy is LongTypePrefixAndIndexSuffix.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'LongTypePrefixAndIndexSuffix', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length.'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'ExecutionMode', 'in' => 'query', 'schema' => ['description' => 'The execution mode. Valid values:'."\n" ."\n" .'- Async (default)'."\n" ."\n" .'- Sync'."\n" ."\n" .'> If you have a wide scope of resources, Sync takes longer. If you set ExecutionMode to Sync, we recommend that you specify ClientToken to prevent the execution timeout.', 'type' => 'string', 'required' => false, 'example' => 'Sync', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4ph6aiy****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '221DA822-B8CF-50DF-A9D2-BA197BF97BD5', 'title' => ''], 'TemplateScratchId' => ['description' => 'The ID of the scenario.', 'type' => 'string', 'example' => 'ts-7f7a704cf71c49a6****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'UpdateTemplateScratch', 'description' => '### [](#)Resource replication scenario'."\n" ."\n" .'Resource Orchestration Service (ROS) allows you to update a resource replication scenario. The updates that you make to a resource replication scenario do not affect the stack that is generated by using the resource scenario. You can call the [GenerateTemplateByScratch](~~610829~~) operation to generate a template for the resource scenario.'."\n" ."\n" .'### [](#)Resource migration scenario'."\n" ."\n" .'- If you want to update a resource migration scenario in which the migrated source resources are retained, you can delete the source resources to manage the updated resource migration scenario. You can also call the [GenerateTemplateByScratch](~~610829~~) operation to generate a template for the resource scenario.'."\n" ."\n" .' \\*\\*'."\n" ."\n" .' **Note** Make sure that the source resources that you want to delete from a resource migration scenario are associated only with the resource scenario. Otherwise, the source resources fail to be deleted.'."\n" ."\n" .'- If you want to update a resource migration scenario in which the migrated source resources are deleted, you can only call the [GenerateTemplateByScratch](~~610829~~) operation to generate a template for the resource scenario.'."\n" ."\n" .'### [](#)Resource management scenario'."\n" ."\n" .'If you want to update a resource management scenario after you use the resource scenario to manage resources, you can only call the [GenerateTemplateByScratch](~~610829~~) operation to generate a template for the resource scenario.'."\n" ."\n" .'### [](#)Resource detection scenario'."\n" ."\n" .'After you update a resource detection scenario, ROS obtains the most recent data from Resource Center and renders the architecture diagram.'."\n" ."\n" .'This topic provides an example on how to update a resource scenario. In this example, the ID of a virtual private cloud (VPC) in a resource scenario whose ID is `ts-7f7a704cf71c49a6****` is updated to `vpc-bp1m6fww66xbntjyc****`.', 'requestParamsDescription' => '### Additional information about request parameters'."\n" ."\n" .'For more information about common request parameters, see [Common parameters](~~131957~~).'."\n" ."\n" .'The valid values of the ParameterKey and ParameterValue request parameters vary based on resource scenario types.'."\n" ."\n" .'#### Resource replication scenario'."\n" ."\n" .'The following table describes the valid values of the ParameterKey and ParameterValue request parameters when you set TemplateScratchId to the ID of a resource replication scenario.'."\n" ."\n" .'| ParameterKey | ParameterValue |'."\n" .'| ----------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| DeletionPolicy | The deletion policy for resources. Valid values:Retain: retains resources when you delete the stack to which the resources are replicated.Delete: deletes resources by default when you delete the stack to which the resources are replicated. If you retain specific resources when the Delete Stack dialog box appears, the resources are retained. |'."\n" .'| RegionId | The ID of the destination region to which you want to replicate resources. If you leave this parameter empty, the region of the source resources is used for the replicated resources.Example: cn-shanghai. |'."\n" .'| ZoneId | The ID of the destination zone to which you want to replicate resources. If you replicate resources in the same region and you leave this parameter empty, the zone of the source resources is used for the replicated resources. If you replicate resources across regions and you leave this parameter empty, the system filters the zones that are supported by all resources.Example: cn-shanghai-b. |'."\n" .'| VpcId | The ID of the destination VPC to which you want to replicate resources. If you replicate resources in the same region and you leave this parameter empty, the VPC of the source resources is used for the replicated resources. If you replicate resources across regions and you leave this parameter empty, the system automatically creates a VPC in the destination region.Example: vpc-bp1hye0s8b69xokfu****. |'."\n" .'| VSwitchId | The ID of the destination vSwitch to which you want to replicate resources. If you replicate resources in the same region and you leave this parameter empty, the vSwitch of the source resources is used for the replicated resources. If you replicate resources across regions and you leave this parameter empty, the system automatically creates a vSwitch in the destination region.Example: vsw-bp11ufkwqwggtm1cj****. |'."\n" .'| InstanceDataReplication | Specifies whether to replicate Elastic Compute Service (ECS) instance data. Valid values:true: replicates ECS instance data. If you replicate the data in the same region, the system creates a custom image for the source instance and creates an instance based on the image. If you replicate the data across regions, the system creates a custom image for the source instance, replicates the image to the destination region, and then creates an instance based on the image.false: does not replicate ECS instance data. |'."\n" ."\n" .'**Note** If you set ParameterKey to InstanceDataReplication and ParameterValue to true, we recommend that you replicate resources after the source instance is stopped. This ensures data consistency.'."\n" ."\n" .'#### Resource management scenario'."\n" ."\n" .'The following table describes the valid values of the ParameterKey and ParameterValue request parameters when you set TemplateScratchId to the ID of a resource management scenario.'."\n" ."\n" .'**Note** For a resource management scenario, you must set ParameterKey to DeletionPolicy.'."\n" ."\n" .'| ParameterKey | ParameterValue |'."\n" .'| -------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |'."\n" .'| DeletionPolicy | The deletion policy for resources. Valid values:Retain: retains resources when you delete the stack that you use to manage the resources.Delete: deletes resources by default when you delete the stack that you use to manage the resources. If you retain specific resources when the Delete Stack dialog box appears, the resources are retained. |'."\n" ."\n" .'#### Resource detection scenario'."\n" ."\n" .'The following table describes the valid values of the ParameterKey and ParameterValue request parameters when you set TemplateScratchId to the ID of a resource detection scenario.'."\n" ."\n" .'| ParameterKey | ParameterValue |'."\n" .'| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |'."\n" .'| RegionIds | One or more region IDs. Separate multiple region IDs with commas (,). If you leave this parameter empty, the region of the resource scenario is used. You cannot specify both RegionIds and SourceResources. |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateTemplateScratch'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"221DA822-B8CF-50DF-A9D2-BA197BF97BD5\\",\\n \\"TemplateScratchId\\": \\"ts-7f7a704cf71c49a6****\\"\\n}","type":"json"}]', ], 'ValidateTemplate' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '12727', 'abilityTreeNodes' => ['FEATURErosU14OAJ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'TemplateURL', 'in' => 'query', 'schema' => ['description' => 'The location of the file that contains the template body. The URL must point to a template that is located on an HTTP web server or in an Alibaba Cloud OSS bucket, such as oss\\://ros/template/demo or oss\\://ros/template/demo?RegionId=cn-hangzhou. The template can be up to 524,288 bytes in size.'."\n" ."\n" .'> If you do not specify the region of the OSS bucket, the value of the RegionId parameter is used.'."\n" ."\n" .'You can specify either TemplateBody or TemplateURL, but not both.
The URL can be up to 1,024 bytes in length.
', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'oss://ros/template/demo', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the stack template. You can call the [DescribeRegions](~~131035~~) operation to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateBody', 'in' => 'formData', 'schema' => ['description' => 'The structure of the template body. The template body can be 1 to 524,288 bytes in length.
If the template body is long, use a POST request and place the parameter in the request body. This prevents a request failure caused by an excessively long URL.
You can specify either TemplateBody or TemplateURL, but not both.

', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => '{"ROSTemplateFormatVersion":"2015-09-01"}', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. The client generates the value, which must be unique.'."\n" ."\n" .'The token can be up to 64 characters in length and can contain letters, digits, hyphens (-), and underscores (\\_).'."\n" ."\n" .'For more information, see [How to ensure idempotence](~~134212~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'ValidationOption', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable additional validation for the template. Valid values:'."\n" ."\n" .'- None (default): No additional validation is enabled.'."\n" ."\n" .'- EnableTerraformValidation: For a Terraform template, the `terraform validate` command of the Terraform command-line interface (CLI) is used to enable additional validation.'."\n" ."\n" .'- EnableFastTerraformValidation: For a Terraform template, a command that is similar to the `terraform validate` command of the Terraform CLI is used to enable additional validation.'."\n" ."\n" .'> Compared with EnableTerraformValidation, EnableFastTerraformValidation is faster but less comprehensive.', 'type' => 'string', 'required' => false, 'example' => 'None', 'title' => ''], ], [ 'name' => 'UpdateInfoOptions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of options for the update information. The list can contain up to two options.', 'type' => 'array', 'items' => [ 'description' => 'The option for the update information. This option is used to control the generation of information about the stack update. Valid values:'."\n" ."\n" .'- Disabled: No information about the stack update is generated.'."\n" ."\n" .'- ConsiderCondition: The impact of conditions is considered when information about the stack update is generated. Use this option. Otherwise, the conditions are evaluated, and the parameters that are involved in the conditions are set to their default values or null.'."\n" ."\n" .'- EnableReplacement: The impact of a replacement update is considered when information about the stack update is generated.', 'enumValueTitles' => ['ConsiderCondition' => 'ConsiderCondition', 'EnableReplacement' => 'EnableReplacement', 'Disabled' => 'Disabled'], 'type' => 'string', 'required' => false, 'example' => 'ConsiderCondition', 'title' => '', ], 'required' => false, 'maxItems' => 2, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description of the stack template.', 'type' => 'string', 'example' => 'No description', 'title' => ''], 'Parameters' => [ 'description' => 'The list of input parameters.', 'type' => 'array', 'items' => ['description' => 'The input parameter.
The input parameters define the parameters that you must specify when you create a stack from the template. These parameters are used to specify the details of each stack creation, such as the username, password, and the ECS instance type that is related to the environment.
', 'type' => 'object', 'example' => '[{"Description": "", "Label": "param_integer", "NoEcho": "false", "ParameterKey": "param_integer", "Type": "Number"},{ "Description": "", "Label": "param_float", "NoEcho": "false", "ParameterKey": "param_float", "Type": "Number"}]', 'title' => ''], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B288A0BE-D927-4888-B0F7-B35EF84B6E6F', 'title' => ''], 'Outputs' => [ 'description' => 'The list of template outputs.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'OutputKey' => ['description' => 'The name of the template output.', 'type' => 'string', 'example' => 'instance_id', 'title' => ''], 'Description' => ['description' => 'The description of the template output.', 'type' => 'string', 'example' => 'The instance ID of my ECS.', 'title' => ''], 'Label' => ['description' => 'The alias of the template output.', 'type' => 'string', 'example' => 'Instance ID', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ResourceTypes' => [ 'description' => 'The information about the resource types that are used in the template.', 'type' => 'object', 'properties' => [ 'Resources' => [ 'description' => 'The list of regular resource types. Duplicates are removed.', 'type' => 'array', 'items' => ['description' => 'The regular resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::InstanceGroup', 'title' => ''], 'title' => '', 'example' => '', ], 'DataSources' => [ 'description' => 'The list of data source resource types. Duplicates are removed.', 'type' => 'array', 'items' => ['description' => 'The data source resource type.', 'type' => 'string', 'example' => 'DATASOURCE::VPC::Vpcs', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'Resources' => [ 'description' => 'The list of regular resources that are defined in the template.'."\n" ."\n" .'> - For ROS templates, resources whose definitions contain the `Count` field are not expanded.'."\n" .'>'."\n" .'> - For Terraform templates, resources whose definitions contain `count` or `for_each` are not expanded.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The regular resource type.', 'type' => 'string', 'example' => 'ALIYUN::ECS::InstanceGroup', 'title' => ''], 'ResourcePath' => ['description' => 'The path of the regular resource. The path is usually the same as the resource name.', 'type' => 'string', 'example' => 'server', 'title' => ''], 'LogicalResourceIdPattern' => ['description' => 'The string pattern for the logical ID of the regular resource.'."\n" ."\n" .'For ROS templates, the following two cases exist:'."\n" ."\n" .'- The resource definition does not contain the `Count` field: If the resource name defined in the template is `server`, the value of this parameter is `server`, and the value of `ResourcePath` is `server`.'."\n" ."\n" .'- The resource definition contains the `Count` field: If the resource name defined in the template is `server`, the value of this parameter is `server[*]`, and the value of `ResourcePath` is `server`.'."\n" ."\n" .'For resources and [modules](https://www.terraform.io/language/modules) in Terraform templates, the following two cases exist:'."\n" ."\n" .'- The definition does not contain [`count`](https://www.terraform.io/language/meta-arguments/count) or [`for_each`](https://www.terraform.io/language/meta-arguments/for_each): If the name is `server`, the value of this parameter is `server`, and the value of `ResourcePath` is `server`.'."\n" ."\n" .'- The definition contains [`count`](https://www.terraform.io/language/meta-arguments/count) or [`for_each`](https://www.terraform.io/language/meta-arguments/for_each): If the name is `server`, the value of this parameter is `server[*]`, and the value of `ResourcePath` is `server`.'."\n" ."\n" .'The following examples show the values for Terraform templates:'."\n" ."\n" .'- Resources in the root module:'."\n" ."\n" .' - `server`: `count` and `for_each` are not used. The value of `ResourcePath` is `server`.'."\n" ."\n" .' - `server[*]`: `count` or `for_each` is used. The value of `ResourcePath` is `server`.'."\n" ."\n" .'- Resources in a child module:'."\n" ."\n" .' - `app.server`: The `app` module does not use `count` or `for_each`, and the `server` resource does not use `count` or `for_each`. The value of `ResourcePath` is `app.server`.'."\n" ."\n" .' - `app.server[*]`: The `app` module does not use `count` or `for_each`, but the `server` resource uses `count` or `for_each`. The value of `ResourcePath` is `app.server`.'."\n" ."\n" .' - `app[*].server`: The `app` module uses `count` or `for_each`, but the `server` resource does not use `count` or `for_each`. The value of `ResourcePath` is `app.server`.'."\n" ."\n" .' - `app[*].server[*]`: The `app` module uses `count` or `for_each`, and the `server` resource uses `count` or `for_each`. The value of `ResourcePath` is `app.server`.'."\n" ."\n" .' - `app.app_group[*].server`: The `app` module does not use `count` or `for_each`, the `app_group` module uses `count` or `for_each` (the `app_group` module is a child module of the `app` module), and the `server` resource does not use `count` or `for_each`. The value of `ResourcePath` is `app.app_group.server`.', 'type' => 'string', 'example' => 'server', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'UpdateInfo' => [ 'description' => 'The information about the stack update. This parameter is not returned if Disabled is specified for UpdateInfoOptions.', 'type' => 'object', 'properties' => [ 'ParametersAllowedToBeModified' => [ 'description' => 'The list of parameters that can be modified.', 'type' => 'array', 'items' => ['description' => 'A parameter that can be modified. When you update a stack, if the template remains unchanged, you can change the value of this parameter without causing a validation error.', 'type' => 'string', 'example' => 'param1', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersCauseInterruptionIfModified' => [ 'description' => 'The list of parameters that cause resource interruptions if they are modified.'."\n" ."\n" .'> - This parameter is supported for only a few resource types.'."\n" .'>'."\n" .'> - This parameter is applicable only to ROS stacks.', 'type' => 'array', 'items' => ['description' => 'A parameter that causes a resource interruption if it is modified. When you update a stack, if the template remains unchanged, changing the value of this parameter will cause a resource interruption.', 'type' => 'string', 'example' => 'param1', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersConditionallyAllowedToBeModified' => [ 'description' => 'The list of parameters that may be allowed to be modified.', 'type' => 'array', 'items' => ['description' => 'A parameter that may be allowed to be modified. When you update a stack, if the template remains unchanged, whether a validation error is caused by a change to the value of this parameter depends on the new value.', 'type' => 'string', 'example' => 'param2', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersConditionallyCauseInterruptionIfModified' => [ 'description' => 'The list of parameters that may cause resource interruptions if they are modified.'."\n" ."\n" .'> - This parameter is supported for only a few resource types.'."\n" .'>'."\n" .'> - This parameter is applicable only to ROS stacks.', 'type' => 'array', 'items' => ['description' => 'A parameter that may cause a resource interruption if it is modified. When you update a stack, if the template remains unchanged, changing the value of this parameter may cause a resource interruption. This depends on the new value and the update behavior of the resource.', 'type' => 'string', 'example' => 'param2', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersNotAllowedToBeModified' => [ 'description' => 'The list of parameters that cannot be modified.', 'type' => 'array', 'items' => ['description' => 'A parameter that cannot be modified. When you update a stack, if the template remains unchanged, changing the value of this parameter will cause a validation error.', 'type' => 'string', 'example' => 'param3', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersUncertainlyAllowedToBeModified' => [ 'description' => 'The list of parameters whose modification permissions are uncertain.', 'type' => 'array', 'items' => ['description' => 'A parameter whose modification permission is uncertain. When you update a stack, if the template remains unchanged, whether a validation error is caused by a change to the value of this parameter can be determined only at runtime.', 'type' => 'string', 'example' => 'param4', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersUncertainlyCauseInterruptionIfModified' => [ 'description' => 'The list of parameters that cause resource interruptions under uncertain conditions if they are modified.'."\n" ."\n" .'> - This parameter is supported for only a few resource types.'."\n" .'>'."\n" .'> - This parameter is applicable only to ROS stacks.', 'type' => 'array', 'items' => ['description' => 'A parameter that causes a resource interruption under uncertain conditions if it is modified. When you update a stack, if the template remains unchanged, whether a resource interruption is caused by a change to the value of this parameter can be determined only at runtime.', 'type' => 'string', 'example' => 'param4', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersCauseReplacementIfModified' => [ 'description' => 'The list of parameters that cause replacement updates if they are modified.'."\n" ."\n" .'> - This parameter is returned only if EnableReplacement is specified for UpdateInfoOptions.'."\n" .'>'."\n" .'> - This parameter is applicable only to ROS stacks.', 'type' => 'array', 'items' => ['description' => 'A parameter that causes a replacement update if it is modified. When you update a stack, if the template remains unchanged, changing the value of this parameter will cause a replacement update.', 'type' => 'string', 'example' => 'param5', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersConditionallyCauseReplacementIfModified' => [ 'description' => 'The list of parameters that may cause replacement updates if they are modified.'."\n" ."\n" .'> - This parameter is returned only if EnableReplacement is specified for UpdateInfoOptions.'."\n" .'>'."\n" .'> - This parameter is applicable only to ROS stacks.', 'type' => 'array', 'items' => ['description' => 'A parameter that may cause a replacement update if it is modified. When you update a stack, if the template remains unchanged, changing the value of this parameter may cause a replacement update. This depends on the new value.', 'type' => 'string', 'example' => 'param6', 'title' => ''], 'title' => '', 'example' => '', ], 'ParametersUncertainlyCauseReplacementIfModified' => [ 'description' => 'The list of parameters that cause replacement updates under uncertain conditions if they are modified.'."\n" ."\n" .'> - This parameter is returned only if EnableReplacement is specified for UpdateInfoOptions.'."\n" .'>'."\n" .'> - This parameter is applicable only to ROS stacks.', 'type' => 'array', 'items' => ['description' => 'A parameter that causes a replacement update under uncertain conditions if it is modified. When you update a stack, if the template remains unchanged, whether a replacement update is caused by a change to the value of this parameter can be determined only at runtime.', 'type' => 'string', 'example' => 'param7', 'title' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'ValidateTemplate', 'summary' => 'Validates a template that is used to create a stack by specifying template URL or body.', 'description' => 'This API operation validates only templates and does not involve user data. RAM authentication is not required.'."\n" ."\n" .'This topic provides an example of how to validate a stack template. In this example, the `TemplateURL` of the template file is `oss://ros/template/demo`.', 'requestParamsDescription' => 'For more information about common request parameters, see [Common parameters](~~131957~~).', 'responseParamsDescription' => ' ', 'extraInfo' => '| 错误代码 | 错误信息 | HTTP状态码 | 描述 |'."\n" .'| ------------- | ------------- | ------------- | ------------- |'."\n" .'| InvalidTemplate |{reason}. | 400 |模板不正确,reason为具体原因。 |'."\n" .'| IInvalidParameter |{reason}. | 400 |模板参数不正确,reason为具体原因。 |', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ValidateTemplate'], ], 'product' => ['code' => 'ros', 'title' => '资源编排'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Description\\": \\"No description\\",\\n \\"Parameters\\": [\\n [\\n {\\n \\"Description\\": \\"\\",\\n \\"Label\\": \\"param_integer\\",\\n \\"NoEcho\\": \\"false\\",\\n \\"ParameterKey\\": \\"param_integer\\",\\n \\"Type\\": \\"Number\\"\\n },\\n {\\n \\"Description\\": \\"\\",\\n \\"Label\\": \\"param_float\\",\\n \\"NoEcho\\": \\"false\\",\\n \\"ParameterKey\\": \\"param_float\\",\\n \\"Type\\": \\"Number\\"\\n }\\n ]\\n ],\\n \\"RequestId\\": \\"B288A0BE-D927-4888-B0F7-B35EF84B6E6F\\",\\n \\"Outputs\\": [\\n {\\n \\"OutputKey\\": \\"instance_id\\",\\n \\"Description\\": \\"The instance ID of my ECS.\\",\\n \\"Label\\": \\"Instance ID\\"\\n }\\n ],\\n \\"ResourceTypes\\": {\\n \\"Resources\\": [\\n \\"ALIYUN::ECS::InstanceGroup\\"\\n ],\\n \\"DataSources\\": [\\n \\"DATASOURCE::VPC::Vpcs\\"\\n ]\\n },\\n \\"Resources\\": [\\n {\\n \\"ResourceType\\": \\"ALIYUN::ECS::InstanceGroup\\",\\n \\"ResourcePath\\": \\"server\\",\\n \\"LogicalResourceIdPattern\\": \\"server\\"\\n }\\n ],\\n \\"UpdateInfo\\": {\\n \\"ParametersAllowedToBeModified\\": [\\n \\"param1\\"\\n ],\\n \\"ParametersCauseInterruptionIfModified\\": [\\n \\"param1\\"\\n ],\\n \\"ParametersConditionallyAllowedToBeModified\\": [\\n \\"param2\\"\\n ],\\n \\"ParametersConditionallyCauseInterruptionIfModified\\": [\\n \\"param2\\"\\n ],\\n \\"ParametersNotAllowedToBeModified\\": [\\n \\"param3\\"\\n ],\\n \\"ParametersUncertainlyAllowedToBeModified\\": [\\n \\"param4\\"\\n ],\\n \\"ParametersUncertainlyCauseInterruptionIfModified\\": [\\n \\"param4\\"\\n ],\\n \\"ParametersCauseReplacementIfModified\\": [\\n \\"param5\\"\\n ],\\n \\"ParametersConditionallyCauseReplacementIfModified\\": [\\n \\"param6\\"\\n ],\\n \\"ParametersUncertainlyCauseReplacementIfModified\\": [\\n \\"param7\\"\\n ]\\n }\\n}","type":"json"}]', ], ], 'endpoints' => [ ['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-zhengzhou-jva', 'regionName' => 'Zhengzhou (China Unicom Joint Venture)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros-intl.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-huhehaote', 'regionName' => 'China (Hohhot)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-wulanchabu', 'regionName' => 'China (Ulanqab)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-nanjing', 'regionName' => 'China (Nanjing - Local Region)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros-intl.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-fuzhou', 'regionName' => 'China (Fuzhou - Local Region)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros-intl.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-heyuan', 'regionName' => 'China (Heyuan)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-guangzhou', 'regionName' => 'China (Guangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-chengdu', 'regionName' => 'China (Chengdu)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-wuhan-lr', 'regionName' => 'China (Wuhan - Local Region)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => ''], ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-northeast-1', 'regionName' => 'Japan (Tokyo)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-northeast-2', 'regionName' => 'South Korea (Seoul)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros-intl.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-southeast-2', 'regionName' => 'Australia (Sydney) Closed', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-southeast-3', 'regionName' => 'Malaysia (Kuala Lumpur)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-southeast-5', 'regionName' => 'Indonesia (Jakarta)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-southeast-6', 'regionName' => 'Philippines (Manila)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros-intl.vpc-proxy.aliyuncs.com'], ['regionId' => 'ap-southeast-7', 'regionName' => 'Thailand (Bangkok)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros-intl.vpc-proxy.aliyuncs.com'], ['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'eu-west-1', 'regionName' => 'UK (London)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'na-south-1', 'regionName' => 'Mexico', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => ''], ['regionId' => 'us-southeast-1', 'regionName' => 'US(Atlanta)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => ''], ['regionId' => 'ap-south-1', 'regionName' => 'India (Mumbai) Closed', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'me-east-1', 'regionName' => 'UAE (Dubai)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => ''], ['regionId' => 'me-central-1', 'regionName' => 'Saudi Arabia (Riyadh)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros-intl.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-hangzhou-finance', 'regionName' => 'China East 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => ''], ['regionId' => 'cn-shanghai-finance-1', 'regionName' => 'China East 2 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ['regionId' => 'cn-shenzhen-finance-1', 'regionName' => 'China South 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'ros.aliyuncs.com', 'endpoint' => 'ros.aliyuncs.com', 'vpc' => 'ros.vpc-proxy.aliyuncs.com'], ], 'errorCodes' => [ ['code' => 'AccountTypeNotSupported', 'message' => 'The specified account type is not supported.', 'http_code' => 403, 'description' => 'The account type is not supported.'], ['code' => 'ActionInProgress', 'message' => 'The specified stack {name} has an action {action} in progress.', 'http_code' => 400, 'description' => 'The stack is being modified. name indicates the stack name or ID. action indicates the operation.'], ['code' => 'AssumeRoleFailure', 'message' => 'Fail to assume role %s: %s', 'http_code' => 400, 'description' => 'Failed to assume the role.'], ['code' => 'ChangeSetExists', 'message' => 'The ChangeSet {name} of Stack {stack} already exists.', 'http_code' => 409, 'description' => 'The name is used by an existing change set. name indicates the change set name. stack indicates the name or ID of the associated stack.'], ['code' => 'ChangeSetNotFound', 'message' => 'The change set {ID} does not exist.', 'http_code' => 404, 'description' => 'The change set does not exist. ID indicates the change set ID.'], ['code' => 'ChangeSetNotFound', 'message' => 'The change set {name} of stack {stack} does not exist.', 'http_code' => 404, 'description' => 'The change set does not exist. name indicates the name or ID of the change set. stack indicates the name or ID of the stack.'], ['code' => 'CircularDependency', 'message' => 'The template contains circular dependency. {reason}.', 'http_code' => 400, 'description' => 'The template contains circular references. reason indicates the cause.'], ['code' => 'Forbidden', 'message' => 'You are not authorized to complete this action.', 'http_code' => 403, 'description' => 'You are not authorized to complete this action.'], ['code' => 'GetTemplateRecommendParametersError', 'message' => '%(msg)s', 'http_code' => 400, 'description' => ''], ['code' => 'Invalid', 'message' => 'Data supplied was not valid: {reason}', 'http_code' => 400, 'description' => 'A data error occurred. reason indicates the cause of the error.'], ['code' => 'InvalidIdempotenceParameter', 'message' => 'The specified parameters are different from before.', 'http_code' => 400, 'description' => 'The tokens that are used to ensure the idempotence are the same, but the parameters are different.'], ['code' => 'InvalidOperation.DeletionProtection', 'message' => 'Fail to delete %(resource_type)s (%(resource_id)s), as deletion protection is enabled.', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidParameter', 'message' => 'The specified parameter {name} is invalid. {reason}.', 'http_code' => 400, 'description' => 'Invalid parameter. name indicates the parameter name. reason indicates the cause.'], ['code' => 'InvalidParameter', 'message' => 'The specified parameter {name} is invalid.', 'http_code' => 400, 'description' => 'Invalid parameter. name indicates the parameter name.'], ['code' => 'InvalidParameter.Format', 'message' => 'Specified parameter format is not valid.', 'http_code' => 400, 'description' => 'The return value is in the incorrect format. The return value must be in the XML or JSON format. The default format is XML.'], ['code' => 'InvalidSchema', 'message' => '{reason}.', 'http_code' => 400, 'description' => 'The template format is incorrect. reason indicates the cause.'], ['code' => 'InvalidTemplate', 'message' => '%(reason)s', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidTemplateAttribute', 'message' => 'The referenced attribute {resource} {name} is invalid.', 'http_code' => 400, 'description' => 'The template contains an incorrect resource property (output) reference. resource indicates the resource name. name indicates the property name.'], ['code' => 'InvalidTemplatePropertyType', 'message' => 'The specified value type of {resource} {section} is invalid.', 'http_code' => 400, 'description' => 'The field type of a resource defined in the template is incorrect. resource indicates the resource name. section indicates the field name.'], ['code' => 'InvalidTemplateReference', 'message' => 'The specified reference "{name}" (in {referencer}) is incorrect.', 'http_code' => 400, 'description' => 'The template contains an incorrect reference. name indicates the name of the referenced object. referencer indicates the entity that references the object.'], ['code' => 'InvalidTemplateSection', 'message' => 'The template contains invalid fields: {section}.', 'http_code' => 400, 'description' => 'The template contains an invalid field. section indicates the field name.'], ['code' => 'InvalidTemplateVersion', 'message' => 'The template version is invalid. {reason}.', 'http_code' => 400, 'description' => 'The template version is incorrect. reason indicates the cause.'], ['code' => 'InvalidValue', 'message' => '{reason}.', 'http_code' => 400, 'description' => 'Invalid value. reason indicates the cause.'], ['code' => 'LastTokenProcessing', 'message' => 'The last token request is being processed. Please try again later.', 'http_code' => 400, 'description' => 'A token request is being processed. Try again later.'], ['code' => 'MissingParameter', 'message' => 'You must specify the parameter {name}. {reason}.', 'http_code' => 400, 'description' => 'A parameter is missed. name indicates the parameter name. reason indicates the cause.'], ['code' => 'MissingParameter', 'message' => 'One of the parameters {names} must be specified.', 'http_code' => 400, 'description' => 'Parameters are missed. You must specify one of the parameters. names indicates the list of the parameters.'], ['code' => 'MissingParameter', 'message' => 'You must specify the parameter {name}', 'http_code' => 400, 'description' => 'A parameter is missed. name indicates the parameter name.'], ['code' => 'MultipleParameter', 'message' => 'Only one of the input parameters {names} can be specified.', 'http_code' => 400, 'description' => 'Excess parameters are specified. You can specify only one parameter. names indicates the list of related parameters.'], ['code' => 'NotFound', 'message' => '{reason}.', 'http_code' => 404, 'description' => 'The request contains content that does not exist. reason indicates the cause.'], ['code' => 'NotSupported', 'message' => '{feature} is not supported.', 'http_code' => 400, 'description' => 'The feature or operation is not supported.'], ['code' => 'RequestLimitExceeded', 'message' => 'The request exceeds the limit: {reason}.', 'http_code' => 400, 'description' => 'The request contains content that exceeds the limit. reason indicates the cause. Some limits can be changed if you adjust the quotas.'], ['code' => 'ResourceGroupIdNotFound', 'message' => 'The ResourceGroupId (%s) could not be found in (%s).', 'http_code' => 400, 'description' => 'The resource group ID does not exist.'], ['code' => 'ResourceNoStock', 'message' => 'The creation(%(creation_tip)s) of resource %(resource_type)s is not in stock.', 'http_code' => 400, 'description' => ''], ['code' => 'ResourceNotAvailable', 'message' => 'The specified resource {name} is unavailable.', 'http_code' => 404, 'description' => 'A resource is unavailable. name indicates the resource name.'], ['code' => 'ResourceNotFound', 'message' => 'The specified resource {name} does not exist in stack {stack}.', 'http_code' => 404, 'description' => 'A resource does not exist in the stack. name indicates the resource name. stack indicates the stack name or ID.'], ['code' => 'ResourceQuotaExceeded', 'message' => 'The creation of resource %(resource_type)s exceeds the quota. Details: creation(%(creation)s) + usage(%(usage)s) > quota(%(limitation)s).', 'http_code' => 400, 'description' => ''], ['code' => 'ResourceQuotaValidationFailed', 'message' => '%(reason)s', 'http_code' => 400, 'description' => ''], ['code' => 'ResourceTypeNotFound', 'message' => 'The resource type {name} does not exist.', 'http_code' => 404, 'description' => 'The resource type does not exist. name indicates the name of the resource type.'], ['code' => 'ServiceManagedPermissionAccountNotSupported', 'message' => 'For safety reason, the DeploymentTargets of StackGroup with SERVICE_MANAGED permission model can not contain current account.', 'http_code' => 400, 'description' => ''], ['code' => 'ServiceManagedPermissionServiceAccessEnabledRequired', 'message' => 'You must enable service access to operate a service managed StackGroup.', 'http_code' => 400, 'description' => ''], ['code' => 'ServiceProvisionFetchingFailed', 'message' => 'Failed to fetch role %(role)s of service %s. Reason: %s.', 'http_code' => 400, 'description' => 'Failed to query the role of the specified service.'], ['code' => 'StackDriftDetectionNotAvailable', 'message' => 'There is no complete drift detection for stack (%s).', 'http_code' => 400, 'description' => 'No drift detection is complete on the specified stack.'], ['code' => 'StackExists', 'message' => 'The specified stack {name} already exists.', 'http_code' => 409, 'description' => 'The name is used by an existing stack. name indicates the stack name.'], ['code' => 'StackGroupExists', 'message' => 'The StackGroup ({name}) already exists.', 'http_code' => 409, 'description' => 'The name is used by an existing stack group. name indicates the stack group name.'], ['code' => 'StackGroupNotEmpty', 'message' => 'The StackGroup ({name}) is not empty.', 'http_code' => 400, 'description' => 'The stack group contains a stack instance. name indicates the stack group name.'], ['code' => 'StackGroupNotFound', 'message' => 'The StackGroup ({name}) could not be found.', 'http_code' => 404, 'description' => 'The stack group does not exist. name indicates the stack group name or ID.'], ['code' => 'StackGroupOperationInProgress', 'message' => 'Another Operation on StackGroup ({name}) is in progress.', 'http_code' => 409, 'description' => 'An operation is being performed on the stack group. name indicates the stack group name.'], ['code' => 'StackGroupOperationNotFound', 'message' => 'The StackGroupOperation ({OperationId}) could not be found.', 'http_code' => 404, 'description' => 'The stack group operation does not exist. OperationId indicates the operation ID.'], ['code' => 'StackInstanceExists', 'message' => 'The StackInstance ({instance}) already exists.', 'http_code' => 409, 'description' => 'The stack group contains a stack instance within the specified execution account and region. instance indicates the stack instance within the specified execution account and region.'], ['code' => 'StackInstanceNotFound', 'message' => 'The StackInstance could not be found.', 'http_code' => 404, 'description' => 'The stack instance does not exist.'], ['code' => 'StackNotFound', 'message' => 'The specified stack {name} does not exist.', 'http_code' => 404, 'description' => 'The stack does not exist. name indicates the stack name or ID.'], ['code' => 'StackPolicyValidationFailed', 'message' => 'Failed to be verified by stack policy. {reason}.', 'http_code' => 400, 'description' => 'Failed to pass the stack policy verification. reason indicates the cause.'], ['code' => 'StackValidationFailed', 'message' => '{reason}.', 'http_code' => 400, 'description' => 'Failed to pass the stack verification. reason indicates the cause.'], ['code' => 'TemplateBeingShared', 'message' => 'The Template %s is being shared, cancel all sharing before deletion.', 'http_code' => 400, 'description' => 'The template is being shared and cannot be deleted.'], ['code' => 'TemplateNotFound', 'message' => 'The specified template {ID} does not exist.', 'http_code' => 404, 'description' => 'The template does not exist.'], ['code' => 'TemplateScratchNotFound', 'message' => 'The TemplateScratch %s could not be found.', 'http_code' => 404, 'description' => 'The specified scenario does not exist.'], ['code' => 'TemplateScratchResourceEmpty', 'message' => 'No resources were found for template scratch.', 'http_code' => 400, 'description' => ''], ['code' => 'TerraformStackNotSupported', 'message' => 'Terraform stack does not support %s.', 'http_code' => 400, 'description' => 'Terraform stacks do not support the specified feature.'], ['code' => 'UnknownError', 'message' => 'An error occurred while processing your request.', 'http_code' => 400, 'description' => 'An unknown error occurred on the client. The error is not caused by the server.'], ['code' => 'UnknownUserParameter', 'message' => 'The specified parameter {name} is not defined in the template.', 'http_code' => 400, 'description' => 'The passed parameter is not defined in the template. name indicates the parameter name.'], ['code' => 'UserParameterMissing', 'message' => 'The parameter {name} is not provided.', 'http_code' => 400, 'description' => 'The parameter is defined in the template, but no value is passed. name indicates the parameter name.'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackDriftDetectionStatus'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagResources'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UntagResources'], ['threshold' => '5', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteDiagnostic'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetChangeSet'], ['threshold' => '100', 'countWindow' => 1, 'regionId' => '*', 'api' => 'MoveResourceGroup'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackGroupOperations'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ValidateTemplate'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetFeatureDetails'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackResource'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplateSummary'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStack'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTemplateScratches'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ImportStacksToStackGroup'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetectStackGroupDrift'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackGroupOperation'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTemplateVersions'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateStack'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackGroups'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteStack'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ContinueCreateStack'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetResourceType'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplateEstimateCost'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStackTemplateByResources'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateStackInstances'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'PreviewStack'], ['threshold' => '30', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetTemplateParameterConstraints'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateChangeSet'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetStackPolicy'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStackInstances'], ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplate'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackEvents'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteStackGroup'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetectStackDrift'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetResourceType'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateStackGroup'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListDiagnostics'], ['threshold' => '5', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateDiagnostic'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GenerateTemplatePolicy'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateTemplateScratch'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetAITask'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackResourceDrifts'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelUpdateStack'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagKeys'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackResources'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListChangeSets'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackInstance'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackGroup'], ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStacks'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetTemplatePermission'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteTemplate'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTagValues'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateTemplate'], ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListTemplates'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetTemplateScratch'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'RegisterResourceType'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListResourceTypes'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListResourceTypeVersions'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateTemplateScratch'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteStackInstances'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelStackOperation'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAITasks'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListResourceTypeRegistrations'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRegions'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetResourceTypeTemplate'], ['threshold' => '5', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateAITask'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SetDeletionProtection'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateTemplate'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackGroupOperationResults'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetDiagnostic'], ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackInstances'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetectStackResourceDrift'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GenerateTemplateByScratch'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteChangeSet'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'SignalResource'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExecuteChangeSet'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetServiceProvisions'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStack'], ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListAITaskEvents'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'UpdateStackGroup'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetStackPolicy'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ListStackOperationRisks'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'TagResources'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteTemplateScratch'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeregisterResourceType'], ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'StopStackGroupOperation'], ], 'product' => ['code' => 'ros', 'title' => 'ROS'], ], 'ram' => [ 'productCode' => 'ROS', 'productName' => 'Resource Orchestration Service', 'ramCodes' => ['ros'], 'ramLevel' => 'RESOURCE', 'ramConditions' => [], 'ramActions' => [ [ 'apiName' => 'GetStackPolicy', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'ListStackInstances', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], [ 'apiName' => 'ListStackGroupOperationResults', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackGroupOperationResults', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], [ 'apiName' => 'ListTagResources', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#TemplateScratchId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], [ 'apiName' => 'GetStackGroup', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ], ], ], [ 'apiName' => 'TagResources', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:TagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#TemplateScratchId}'], ], ], ], [ 'apiName' => 'UpdateStack', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'DeleteStackInstances', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], [ 'apiName' => 'ImportStacksToStackGroup', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:ImportStacksToStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ], ], ], [ 'apiName' => 'GetTemplateSummary', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateSummary', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], [ 'apiName' => 'ListStackOperationRisks', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackOperationRisks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'DeregisterResourceType', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeregisterResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DetectStackResourceDrift', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DetectStackResourceDrift', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'CancelStackOperation', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:CancelStackOperation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], [ 'apiName' => 'GetStackGroupOperation', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackGroupOperation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], [ 'apiName' => 'DeleteStack', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'SetResourceType', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetResourceTypeTemplate', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetResourceTypeTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetChangeSet', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'ListResourceTypes', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListResourceTypes', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetTemplateScratch', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], [ 'apiName' => 'ListResourceTypeVersions', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListResourceTypeVersions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetStackDriftDetectionStatus', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackDriftDetectionStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'CreateStackGroup', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'ExecuteChangeSet', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:ExecuteChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'SetTemplatePermission', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetTemplatePermission', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'ListSummaries', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListSummaries', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateTemplate', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/*'], ], ], ], [ 'apiName' => 'DetectStackGroupDrift', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DetectStackGroupDrift', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack_group/{#StackGroupName}'], ], ], ], [ 'apiName' => 'DeleteTemplateScratch', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], [ 'apiName' => 'SetDeletionProtection', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetDeletionProtection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'GetServiceProvisions', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GetServiceProvisions', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GenerateTemplateByScratch', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GenerateTemplateByScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], [ 'apiName' => 'ListTemplates', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListTemplates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/*'], ], ], ], [ 'apiName' => 'ListStacks', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStacks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/*'], ], ], ], [ 'apiName' => 'UntagResources', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UnTagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#TemplateScratchId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ], ], ], [ 'apiName' => 'GenerateTemplatePolicy', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GenerateTemplatePolicy', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'GetDiagnostic', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:GetDiagnostic', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListResourceTypeRegistrations', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListResourceTypeRegistrations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateAITask', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateAITask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'SetStackPolicy', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SetStackPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'ListTagKeys', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTagKeys', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListChangeSets', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListChangeSets', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'CreateStack', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/*'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'CreateDiagnostic', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateDiagnostic', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListStackResources', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'UpdateTemplateScratch', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#templatescratchId}'], ], ], ], [ 'apiName' => 'CancelUpdateStack', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:CancelUpdateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'ListTagValues', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTagValues', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListDiagnostics', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListDiagnostics', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetStack', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'PreviewStack', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:PreviewStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'CreateTemplateScratch', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateTemplateScratch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/*'], ], ], ], [ 'apiName' => 'StopStackGroupOperation', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:StopStackGroupOperation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], [ 'apiName' => 'ListStackGroupOperations', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackGroupOperations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ], ], ], [ 'apiName' => 'UpdateStackInstances', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], [ 'apiName' => 'DeleteStackGroup', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ], ], ], [ 'apiName' => 'GetTemplateParameterConstraints', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateParameterConstraints', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListTemplateVersions', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTemplateVersions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:*:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'ContinueCreateStack', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:ContinueCreateStack', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListStackResourceDrifts', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackResourceDrifts', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'RegisterResourceType', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:RegisterResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateStackInstances', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateStackInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], [ 'apiName' => 'GetStackInstance', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackInstance', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ], ], ], [ 'apiName' => 'ListStackEvents', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackEvents', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'GetServiceAccess', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetServiceAccess', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListAITasks', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListAITasks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetAITask', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetAITask', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DeleteTemplate', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#templateId}'], ], ], ], [ 'apiName' => 'GetTemplate', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'template', 'arn' => 'acs:ros:*:{#accountId}:template/{#templateId}'], ], ], ], [ 'apiName' => 'EnableServiceAccess', 'description' => '', 'operationType' => 'none', 'ramAction' => [ 'action' => 'ros:EnableServiceAccess', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetStackResource', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetStackResource', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'MoveResourceGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:MoveResourceGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DeleteChangeSet', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'GetResourceType', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetResourceType', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'EnableServices', 'description' => '', 'operationType' => 'none', 'ramAction' => [ 'action' => 'ros:EnableServices', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'GetTemplateEstimateCost', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:GetTemplateEstimateCost', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'ListTemplateScratches', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListTemplateScratches', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/*'], ], ], ], [ 'apiName' => 'UpdateStackTemplateByResources', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStackTemplateByResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'SignalResource', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:SignalResource', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'UpdateTemplate', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#templateId}'], ], ], ], [ 'apiName' => 'UpdateStackGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ros:UpdateStackGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], [ 'apiName' => 'ListStackGroups', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ros:ListStackGroups', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/*'], ], ], ], [ 'apiName' => 'ListAITaskEvents', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ros:ListAITaskEvents', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DeleteDiagnostic', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DeleteDiagnostic', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DetectStackDrift', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ros:DetectStackDrift', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ], ], ], [ 'apiName' => 'CreateChangeSet', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ros:CreateChangeSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ROS', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ['validationType' => 'conditional', 'product' => 'ROS', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ], ], ], ], 'resourceTypes' => [ ['validationType' => 'always', 'resourceType' => 'stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#stackId}'], ['validationType' => 'always', 'resourceType' => 'StackInstance', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackinstance/{#StackGroupName}/{#StackInstanceAccountId}/{#StackInstanceRegionId}'], ['validationType' => 'always', 'resourceType' => 'StackGroupOperation', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroupoperation/{#OperationId}'], ['validationType' => 'conditional', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#TemplateId}'], ['validationType' => 'conditional', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/{#StackGroupName}'], ['validationType' => 'conditional', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/{#TemplateScratchId}'], ['validationType' => 'conditional', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/{#StackId}'], ['validationType' => 'always', 'resourceType' => 'Template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/*'], ['validationType' => 'always', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack_group/{#StackGroupName}'], ['validationType' => 'always', 'resourceType' => 'Stack', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stack/*'], ['validationType' => 'always', 'resourceType' => 'tag', 'arn' => 'acs:ros:{#regionId}:{#accountId}:tag/*'], ['validationType' => 'always', 'resourceType' => 'TemplateScratch', 'arn' => 'acs:ros:{#regionId}:{#accountId}:templatescratch/*'], ['validationType' => 'always', 'resourceType' => 'Template', 'arn' => 'acs:ros:*:{#accountId}:template/{#TemplateId}'], ['validationType' => 'always', 'resourceType' => 'template', 'arn' => 'acs:ros:{#regionId}:{#accountId}:template/{#templateId}'], ['validationType' => 'conditional', 'resourceType' => 'template', 'arn' => 'acs:ros:*:{#accountId}:template/{#templateId}'], ['validationType' => 'always', 'resourceType' => 'StackGroup', 'arn' => 'acs:ros:{#regionId}:{#accountId}:stackgroup/*'], ], ], ];