Creates stacks for specified accounts in specified regions.

Before you call this operation, make sure that a stack group is created. For more information, see CreateStackGroup.

This topic provides an example on how to create stacks in a stack group. In this example, stacks are created in a stack group named MyStackGroup. The stacks are created within the 151266687691**** and 141261387191**** Alibaba Cloud accounts in the China (Hangzhou) and China (Beijing) regions. The stack group is granted self-managed permissions and created in the China (Hangzhou) region.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes CreateStackInstances

The operation that you want to perform. Set the value to CreateStackInstances.

RegionId String Yes cn-hangzhou

The ID of the region to which the stack group belongs. You can call the DescribeRegions operation to query the most recent region list.

StackGroupName String Yes MyStackGroup

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 can contain digits, letters, hyphens (-), and underscores (_). The name must start with a digit or a letter.

AccountIds Array of String No ["151266687691****", "141261387191****"]

The IDs of the accounts within which you want to use the self-managed permission model to deploy stacks. You can specify up to 20 account IDs.

Note You must specify only one of the AccountIds and DeploymentTargets parameters.
RegionIds Array of String Yes ["cn-hangzhou","cn-beijing"]

The IDs of the regions in which you want to create the stacks. You can specify up to 20 region IDs.

ClientToken String No 123e4567-e89b-12d3-a456-42665544****

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.

The token can be up to 64 characters in length, and can contain letters, digits, hyphens (-), and underscores (_).

For more information, see Ensure idempotence.

OperationDescription String No Create stack instances in hangzhou and beijing

The description of the stack creation operation.

The description must be 1 to 256 characters in length.

OperationPreferences Map No {"FailureToleranceCount": 1, "MaxConcurrentCount": 2}

The custom preferences on how Resource Orchestration Service (ROS) creates the stacks.

The following parameters are included:

  • {"FailureToleranceCount": N}

    The number of accounts within which stack operation failures can occur in each region. If the value of this parameter is exceeded in a region, ROS stops the operation in the region. If the operation is stopped in one region, the operation is no longer performed in other regions.

    Valid values of N: 0 to 20.

    If you do not specify the FailureToleranceCount parameter, the default value 0 is used.

  • {"FailureTolerancePercentage": N}

    The percentage of the number of accounts within which stack operation failures can 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.

    Valid values of N: 0 to 100. If the numeric value in the percentage is not an integer, ROS rounds the value down to the nearest integer.

    If you do not specify the FailureTolerancePercentage parameter, the default value 0 is used.

  • {"MaxConcurrentCount": N}

    The maximum number of accounts within which stacks are deployed at the same time in each region.

    Valid values of N: 1 to 20.

    If you do not specify the MaxConcurrentCount parameter, the default value 1 is used.

  • {"MaxConcurrentPercentage": N}

    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.

    Valid values: 1 to 100. If the numeric value in the percentage is not an integer, ROS rounds the value down to the nearest integer.

    If you do not specify the MaxConcurrentPercentage parameter, the default value 1 is used.

  • {"RegionConcurrencyType": N}

    The mode that you want to use to deploy stacks across regions. Default value: SEQUENTIAL. Valid values:

    • SEQUENTIAL: deploys stacks in each specified region based on the specified sequence of regions. ROS deploys stacks in one region at a time.
    • PARALLEL: deploys stacks in parallel across all specified regions.

Separate multiple parameters with commas (,).

Note
  • You can specify one of the MaxConcurrentCount and MaxConcurrentPercentage parameters.
  • You can specify one of the FailureToleranceCount and FailureTolerancePercentage parameters.
TimeoutInMinutes Long No 10

The timeout period that is allowed to create the stack.

  • Default value: 60.
  • Unit: minutes.
DisableRollback Boolean No false

Specifies whether to disable rollback when the stacks fail to be created.

Default value: false. Valid values:

  • true
  • false
ParameterOverrides.N.ParameterKey String Yes Amount

The name of parameter N that you want to use to override a specific parameter. If you do not specify the name of parameter N, ROS uses the name that you specify when you create the stack group.

Maximum value of N: 200.

Note
  • The ParameterOverrides parameter is optional.
  • If you specify the ParameterOverrides parameter, you must specify the ParameterOverrides.N.ParameterKey and ParameterOverrides.N.ParameterValue parameters.
ParameterOverrides.N.ParameterValue String Yes 1

The value of parameter N that you want to use to override a specific parameter. If you do not specify the name and value of parameter N, ROS uses the name and value that you specify when you create the stack group.

Maximum value of N: 200.

Note
  • The ParameterOverrides parameter is optional.
  • If you specify the ParameterOverrides parameter, you must specify the ParameterOverrides.N.ParameterKey and ParameterOverrides.N.ParameterValue parameters.
DeploymentTargets Object No

The folders in which you want to use the service-managed permission model to deploy stacks.

Note You must specify only one of the AccountIds and DeploymentTargets parameters.
RdFolderIds Array of String Yes ["fd-4PvlVLOL8v"]

The IDs of the folders in the resource directory. You can add up to five folder IDs.

You can create stacks within all members in the specified folders. If you create stacks in the Root folder, the stacks are created within all members in the resource directory.

Note To view the folder IDs, go to the Overview page in the Resource Management console. For more information, see View the basic information of a folder.

For more information about common request parameters, see Common parameters.

Response parameters

Parameter Type Example Description
RequestId String 14A07460-EBE7-47CA-9757-12CC4761D47A

The ID of the request.

OperationId String 6da106ca-1784-4a6f-a7e1-e723863d****

The ID of the operation.

Examples

Sample requests

http(s)://ros.aliyuncs.com/?Action=CreateStackInstances
&AccountIds=["151266687691****","141261387191****"]
&RegionId=cn-hangzhou
&RegionIds=["cn-hangzhou","cn-beijing"]
&StackGroupName=MyStackGroup
&<Common request parameters>

Sample success responses

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<CreateStackInstancesResponse>
        <RequestId>14A07460-EBE7-47CA-9757-12CC4761D47A</RequestId>
        <OperationId>6da106ca-1784-4a6f-a7e1-e723863d****</OperationId>
</CreateStackInstancesResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "14A07460-EBE7-47CA-9757-12CC4761D47A",
  "OperationId" : "6da106ca-1784-4a6f-a7e1-e723863d****"
}

Error codes

For a list of error codes, see Service error codes.

Error code

Error message

HTTP status code

Description

StackInstanceExists

The StackInstance ({instance}) already exists.

409

The error message returned because the stack already exists within the specified account in the specified region. instance indicates the name of the stack.

StackGroupOperationInProgress

Another Operation on StackGroup ({name}) is in progress.

409

The error message returned because an operation is being performed on the stack group. name indicates the name of the stack group.