All Products
Search
Document Center

App Streaming:CreateAppInstanceGroup

Last Updated:Dec 17, 2025

Creates a delivery group.

Operation description

Before you call this operation, make sure that you fully understand the billing methods and prices of App Streaming.

A delivery group is a logical group that is used to deliver cloud applications to end users, including the images, resource management policies, and user groups on which the cloud applications rely. For more information, see Publish delivery groups.

Debugging

You can run this interface directly in OpenAPI Explorer, saving you the trouble of calculating signatures. After running successfully, OpenAPI Explorer can automatically generate SDK code samples.

Authorization information

The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:

  • Operation: the value that you can use in the Action element to specify the operation on a resource.
  • Access level: the access level of each operation. The levels are read, write, and list.
  • Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
    • For mandatory resource types, indicate with a prefix of * .
    • If the permissions cannot be granted at the resource level, All Resources is used in the Resource type column of the operation.
  • Condition Key: the condition key that is defined by the cloud service.
  • Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
OperationAccess levelResource typeCondition keyAssociated operation
appstreaming:CreateAppInstanceGroupcreate
*All Resources
*
    none
none

Request parameters

ParameterTypeRequiredDescriptionExample
AppCenterImageIdstringYes

The image ID of the application. To obtain the image ID, log on to the App Streaming console. In the left-side navigation pane, choose Maintenance > Custom Images or Maintenance > System Images.

img-8z4nztpaqvay4****
ProductTypestringYes

The product type.

Valid value:

  • CloudApp: App Streaming
CloudApp
AppInstanceGroupNamestringNo

The name of the delivery group.

UsersarrayNo

The users that you want to add to the assigned user list of the delivery group.

stringNo

The user that you want to add to the assigned user list of the delivery group. The name of the user is in the Users.N=<username> format, where N is an integer greater than 0.

Users.1=username1 Users.2=username2
UserInfoobjectNo

The information about the user that you want to add to the assigned user list of the delivery group. This parameter is required if you configure Users.

TypestringNo

The account type of the user.

Valid value:

  • Simple: convenience account
Simple
ChargeTypestringYes

The billing method.

Valid values:

  • PostPaid: pay-as-you-go
  • PrePaid: subscription
PrePaid
PromotionIdstringNo

The promotion ID. You can call the GetResourcePrice operation to obtain the ID.

17440009****
AutoPaybooleanNo

Specifies whether to enable automatic payment.

Valid values:

  • true
  • false: manual payment. This is the default value.
false
AutoRenewbooleanNo

Specifies whether to enable auto-renewal.

Valid values:

  • true
  • false: manual payment. This is the default value.
false
PeriodintegerYes

The subscription duration of resources. This parameter is required if you set ChargeType to PrePaid. The unit of this parameter is specified by PeriodUnit.

  • Valid value if you set PeriodUnit to Week:

    • 1
  • Valid values if you set PeriodUnit to Month:

    • 1
    • 2
    • 3
    • 6
  • Valid values if you set PeriodUnit to Year:

    • 1
    • 2
    • 3
Note If you set ChargeType to PostPaid, set this parameter to 1.
1
PeriodUnitstringYes

The unit of the subscription duration. This parameter is available if you set ChargeType to PrePaid.

Note The value of this parameter is case-insensitive. For example, Week is valid and week is invalid. If you specify an invalid value combination for Period and PeriodUnit, such as 2 Week, the operation can still be called. However, an error occurs when you place the order.
Note If you set ChargeType to PostPaid, set this parameter to Month.

Valid values:

  • Month
  • Year
  • Week
Week
SessionTimeoutintegerYes

The period of time during which the application can be recycled. The recycling period is the period of time between the time when the end user disconnects from the application and the time when processes exit the application. If you do not want to recycle the application, set this parameter to -1. Valid values:-1 and 3 to 300. The value must be an integer. Default value: 15. Unit: minutes.

15
BizRegionIdstringYes

The ID of the region where the delivery group resides. For information about the supported regions, see Limits .

Valid values:

  • cn-shanghai: China (Shanghai)
  • cn-hangzhou: China (Hangzhou)
cn-hangzhou
ChargeResourceModestringYes

The sales mode.

Valid value:

  • Node: by resource
Node
NodePoolobjectNo

The node pool object.

NodeInstanceTypestringNo

The ID of the resource type that you want to purchase. You can call the ListNodeInstanceType operation to obtain the ID.

Valid values:

  • appstreaming.vgpu.8c16g.4g: WUYING - Graphics_8 vCPUs, 16 GiB Memory, 4 GiB GPU Memory
  • appstreaming.general.8c16g: WUYING - General_8 vCPUs, 16 GiB Memory
  • appstreaming.general.4c8g: WUYING - General_4 vCPUs, 8 GiB Memory
  • appstreaming.vgpu.14c93g.12g: WUYING - Graphics_14 vCPUs, 93 GiB Memory, 12 GiB GPU Memory.
  • appstreaming.vgpu.8c31g.16g: WUYING - Graphics_8 vCPUs, 31 GiB Memory, 16 GiB GPU Memory
appstreaming.general.4c8g
NodeAmountintegerNo

The number of resources that you want to purchase. Valid values: 1 to 100.

Note
  • This parameter is required if the resources are subscription resources.

  • If the resources are pay-as-you-go resources, this parameter is required only if you set StrategyType to NODE_FIXED or NODE_SCALING_BY_USAGE.

1
NodeCapacityintegerNo

The maximum number of sessions to which a resource can connect at the same time. If a resource connects to a large number of sessions at the same time, the user experience can be compromised. The value range varies based on the resource type. The following items describe the value ranges of different resource types:

  • appstreaming.general.4c8g: 1 to 2
  • appstreaming.general.8c16g: 1 to 4
  • appstreaming.vgpu.8c16g.4g: 1 to 4
  • appstreaming.vgpu.8c31g.16g: 1 to 4
  • appstreaming.vgpu.14c93g.12g: 1 to 6
2
StrategyTypestringNo

The scaling policy of resources.

Note
  • NODE_FIXED: fixed number of resources. This value is applicable to pay-as-you-go resources and subscription resources.

  • NODE_SCALING_BY_USAGE: auto scaling. This value is applicable to pay-as-you-go resources and subscription resources.

  • NODE_SCALING_BY_SCHEDULE: scheduled scaling. This value is applicable only to pay-as-you-go resources.

Valid values:

  • NODE_FIXED: fixed number of resources
  • NODE_SCALING_BY_SCHEDULE: scheduled scaling
  • NODE_SCALING_BY_USAGE: auto scaling
NODE_FIXED
MaxScalingAmountintegerNo

The maximum number of resources that can be created for scale-out. This parameter is required if you set StrategyType to NODE_SCALING_BY_USAGE.

10
MaxIdleAppInstanceAmountintegerNo

Maximum number of idle sessions. When this value is specified, auto-scaling is triggered only if the session utilization exceeds ScalingUsageThreshold and the current number of idle sessions in the delivery group is less than MaxIdleAppInstanceAmount. Otherwise, it is considered that sufficient idle sessions are available, and no auto-scaling will occur. This parameter allows flexible control over elastic scaling behavior and helps reduce usage costs.

3
ScalingStepintegerNo

The number of resources that are created each time resources are scaled out. Valid values: 1 to 10. This parameter is required if you set StrategyType to NODE_SCALING_BY_USAGE.

2
ScalingUsageThresholdstringNo

The upper limit of session usage. If the session usage exceeds the specified upper limit, auto scaling is automatically triggered. The session usage is calculated by using the following formula: Session usage = Number of current sessions/(Total number of resources × Number of concurrent sessions) × 100%. This parameter is required if you set StrategyType to NODE_SCALING_BY_USAGE. Valid values: 0 to 100. Default value: 85.

85
ScalingDownAfterIdleMinutesintegerNo

The maximum retention period of a resource to which no session is connected. If no session is connected to a resource, the resource is automatically scaled in after the specified retention period elapses. Valid values: 5 to 120. Default value: 5. Unit: minutes. If one of the following situations occurs, the resource is not scaled in.

  • If automatic scale-out is triggered after the resource is scaled in, the scale-in is not executed. This prevents repeated scale-in and scale-out.
  • If automatic scale-out is triggered due to an increase in the number of sessions during the specified period of time, the resource is not scaled in and the countdown restarts.
5
StrategyEnableDatestringNo

The effective date of the scaling policy. Format: yyyy-MM-dd. The date must be the same as or later than the current date. This parameter is required if you set StrategyType to NODE_SCALING_BY_SCHEDULE.

2022-08-01
StrategyDisableDatestringNo

The expiration date of the scaling policy. Format: yyyy-MM-dd. The interval between the expiration date and the effective date must be from 7 days to 1 year. This parameter is required if you set StrategyType to NODE_SCALING_BY_SCHEDULE.

2022-09-08
WarmUpbooleanNo

Specifies whether to enable the warmup policy for resources. This parameter is required if you set StrategyType to NODE_SCALING_BY_SCHEDULE.

false
RecurrenceSchedulesarray<object>No

The schedules of the scaling policy. This parameter is required if you set StrategyType to NODE_SCALING_BY_SCHEDULE.

objectNo
RecurrenceTypestringNo

The schedule type of the scaling policy. This parameter must be configured together with RecurrenceValues.``

Valid value:

  • Weekly: The scaling policy is executed on specific days each week.
weekly
RecurrenceValuesarrayNo

The days of each week on which the scaling policy is executed.

integerNo

The day of each week on which the scaling policy is executed.

Valid values:

  • 1: Monday
  • 2: Tuesday
  • 3: Wednesday
  • 4: Thursday
  • 5: Friday
  • 6: Saturday
  • 7: Sunday
1
TimerPeriodsarray<object>No

The time periods during which the scaling policy can be executed. The time periods must meet the following requirements:

  • Up to three time periods can be added.
  • Time periods cannot be overlapped.
  • The interval between two consecutive time periods must be greater than or equal to 5 minutes.
  • Each time period must be greater than or equal to 15 minutes.
  • The total length of the time periods that you specify cannot be greater than a day.
objectNo
StartTimestringNo

The start time of the time period. Format: HH:mm.

12:00
EndTimestringNo

The end time of the time period. Format: HH:mm.

15:00
AmountintegerNo

The number of resources.

2
NetworkobjectNo

The network settings.

Note If you want to use this parameter, submit a ticket.
StrategyTypestringNo

The type of the network policy.

Valid values:

  • Mixed: the hybrid mode. In this mode, a device is deployed in one virtual private cloud (VPC). Two NICs are provided and an independent public IP address is configured for the device.
  • Shared: the shared mode. In this mode, a single NIC is provided for a device and the network is accessed by using NAT Gateway.
Shared
Routesarray<object>No

The route settings. This parameter is available only if you set StrategyType to Mixed.

objectNo
DestinationstringNo

The destination. The value is a CIDR block.

139.196.XX.XX/32
ModestringNo

The network egress mode.

Valid value:

  • Shared: accesses the network by using NAT Gateway.
Shared
IpExpireMinutesintegerNo

The validity period of the public IP address. If the specified value is exceeded, the IP address is updated at next logon. Minimum value: 60. Unit: minutes.

60
OfficeSiteIdstringNo

Office Network ID.

cn-hongkong+dir-842567****
VSwitchIdsarrayNo

List of virtual switch IDs.

  • Valid only for custom office networks.
stringNo

Virtual Switch ID

vsw-m5ef1sjhf7bbvqvvy****
DomainRulesarray<object>No

The domain name rules.

objectNo
DomainstringNo

The domain name.

www.example.com
PolicystringNo

The policy used for the domain name.

Valid values:

  • allow
  • block
block
StoragePolicyobjectNo

The storage policy.

StorageTypeListarrayNo

The storage types.

stringNo

The storage type.

Valid values:

  • OFF
  • PDS: Photo and Drive Service
PDS
UserProfileobjectNo

User data roaming configuration.

UserProfileSwitchbooleanNo

User data roaming toggle.

Enumeration Value:
  • false: Disable.
  • true: Enable.
false
RemoteStorageTypestringNo

Remote storage type used for user data roaming.

Enumeration Value:
  • NAS: NAS.
NAS
RemoteStoragePathstringNo

Remote storage path for user data roaming.

  • If left empty, the default value is the delivery group ID.
  • For cross-delivery-group (within the same VPC) user data roaming, the same value must be configured for all participating delivery groups.
ID20250101
PreOpenAppIdstringNo

The ID of the pre-open application.

cag-b2ron*******
VideoPolicyobjectNo

Display policy.

FrameRateintegerNo

Frame rate (FPS).

Enumeration Value:
  • 30: 30 FPS.
  • 60: 60 FPS.
60
TerminalResolutionAdaptivebooleanNo

Whether to use adaptive resolution.

  • true: The session resolution follows changes in the terminal's display area. In this case, SessionResolutionWidth and SessionResolutionHeight represent the maximum values for resolution adjustment.

  • false: The session resolution does not follow changes in the terminal's display area. In this case, the resolution is fixed to the values of SessionResolutionWidth and SessionResolutionHeight.

false
SessionResolutionWidthintegerNo

Resolution width, in pixels.

1920
SessionResolutionHeightintegerNo

Resolution height, in pixels.

1080
StreamingModestringNo

Streaming mode. Combined with the Webrtc parameter, it indicates the protocol type.

  • When Webrtc=true and StreamingMode=video, it indicates a WebRTC stream.
  • When Webrtc=false and StreamingMode=video, it indicates a video stream.
  • When Webrtc=false and StreamingMode=mix, it indicates a mixed stream.
Enumeration Value:
  • video: Video stream.
  • mix: Mixed stream.
video
WebrtcbooleanNo

Whether to enable WebRTC. Combined with the StreamingMode parameter, it indicates the protocol type.

  • When Webrtc=true and StreamingMode=video, it indicates a WebRTC stream.
  • When Webrtc=false and StreamingMode=video, it indicates a video stream.
  • When Webrtc=false and StreamingMode=mix, it indicates a mixed stream.
true
RuntimePolicyobjectNo

The runtime policy.

SessionTypestringNo

The session type.

Valid values:

  • CONSOLE: console session
  • NORMAL: Remote Desktop Protocol (RDP)-based O&M session
NORMAL
DebugModestringNo

Specifies whether to enable the debugging mode. If you want to call the GetDebugAppInstance and CreateImageFromAppInstanceGroup operations, you must set this parameter to ON.

Valid values:

  • OFF
  • ON
OFF
SessionUserGenerationModestringNo

The generation mode of the session users. Valid value:

  • wyid. In this case, you must set sessionPreOpen to false.
wyid
SessionPreOpenstringNo

Session pre-launch toggle.

  • If not specified, the default value is true.
Enumeration Value:
  • true: Enable.
  • false: Disable.
false
PerSessionPerAppbooleanNo

Only one application is allowed to be opened within a single session.

  • When enabled, launching multiple applications from the delivery group will allocate a separate session for each application, resulting in higher session consumption.
Enumeration Value:
  • true: Enable.
  • false: Disable.
false
PersistentAppInstanceScheduleModestringNo

Persistent session scheduling mode.

Enumeration Value:
  • DYNAMIC: Dynamic scheduling - The same persistent session can be scheduled to different nodes..
  • FIX_NODE: Fixed node scheduling - The same persistent session can only be scheduled to a fixed node..
DYNAMIC
SecurityPolicyobjectNo

The security policy.

ResetAfterUnbindbooleanNo

Specifies whether to reset after unbinding from a delivery group.

Valid values:

  • true
  • false
true
SkipUserAuthCheckbooleanNo

Specifies whether to skip user permission verification.

Valid values:

  • true
  • false: This is the default value.
false
UserDefinePolicyobjectNo

The custom policy.

CustomConfigstringNo

The content of the custom policy. The content must meet the specifications of image versions. To use this parameter, submit a ticket to apply to enable the whitelist feature.

[{"target":"agent","config":{"abc":"xxx"}}]
AppPolicyIdstringNo

Policy ID.

pg-0clfzcy0adpcf****
ClusterIdstringNo

Cluster ID.

cls-d39iq73l5c0a8****
SubPayTypestringNo

Payment method subtype.

Enumeration Value:
  • postPaid: Postpaid [Pay-as-you-go].
  • monthPackage: Package plan [Cloud Browser only].
  • prePaid: Prepaid [Subscription - Monthly/Yearly].
postPaid
AppPackageTypestringNo

Package type.

browser.package.5.250.appstreaming.general.basic
AuthModestringNo

The authentication mode of the delivery group.

Enumeration Value:
  • App: Application authorization.
  • AppInstanceGroup: Delivery group authorization.
  • Session: Persistent session authorization.
App
UserGroupIdsarrayNo

List of authorized user group IDs.

stringNo

Authorized user group ID.

Response parameters

ParameterTypeDescriptionExample
object

The response parameters.

RequestIdstring

The request ID.

1CBAFFAB-B697-4049-A9B1-67E1FC5F****
AppInstanceGroupModelobject

The delivery group.

AppInstanceGroupIdstring

The ID of the delivery group.

aig-9ciijz60n4xsv****
OrderIdstring

The order ID.

12345****
NodePoolIdstring

The ID of the resource group. This parameter is returned if a resource group was created.

rg-ew7va2g1wl3vm****

Examples

Sample success responses

JSONformat

{
  "RequestId": "1CBAFFAB-B697-4049-A9B1-67E1FC5F****",
  "AppInstanceGroupModel": {
    "AppInstanceGroupId": "aig-9ciijz60n4xsv****",
    "OrderId": "12345****",
    "NodePoolId": "rg-ew7va2g1wl3vm****"
  }
}

Error codes

HTTP status codeError codeError messageDescription
400StockError.NoStockThe selected specification is out of stock. Please try again later or select other specifications.The selected specification is out of stock. Please try again later or select other specifications.
500StockError.InvalidResourceRequestYour request cannot be processed currently due to an error. Please try again later.The inventory check failed and the system is temporarily unable to process your request. Please try again later.

For a list of error codes, visit the Service error codes.

Change history

Change timeSummary of changesOperation
2025-11-27The Error code has changed. The request parameters of the API has changedView Change Details
2025-03-27The Error code has changed. The request parameters of the API has changedView Change Details
2025-02-27The Error code has changedView Change Details
2025-02-24The internal configuration of the API is changed, but the call is not affectedView Change Details
2025-02-21The request parameters of the API has changedView Change Details
2025-01-15The request parameters of the API has changedView Change Details
2024-10-22The internal configuration of the API is changed, but the call is not affectedView Change Details
2024-09-12The internal configuration of the API is changed, but the call is not affectedView Change Details
2024-07-19The request parameters of the API has changedView Change Details
2024-05-11The request parameters of the API has changedView Change Details
2023-08-21The internal configuration of the API is changed, but the call is not affectedView Change Details
2023-04-28The request parameters of the API has changedView Change Details
2023-04-14The request parameters of the API has changedView Change Details
2023-03-14The request parameters of the API has changedView Change Details
2022-08-01The internal configuration of the API is changed, but the call is not affectedView Change Details