diff options
Diffstat (limited to 'data/en_us/appstream-center/2021-09-01')
| -rw-r--r-- | data/en_us/appstream-center/2021-09-01/api-docs.php | 12409 |
1 files changed, 12409 insertions, 0 deletions
diff --git a/data/en_us/appstream-center/2021-09-01/api-docs.php b/data/en_us/appstream-center/2021-09-01/api-docs.php new file mode 100644 index 0000000..f2cc553 --- /dev/null +++ b/data/en_us/appstream-center/2021-09-01/api-docs.php @@ -0,0 +1,12409 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'appstream-center', + 'version' => '2021-09-01', + ], + 'directories' => [ + [ + 'id' => 166315, + 'title' => 'Regions', + 'type' => 'directory', + 'children' => [ + 'ListRegions', + ], + ], + [ + 'id' => 166366, + 'title' => 'Resources', + 'type' => 'directory', + 'children' => [ + 'ListNodes', + 'ModifyNodePoolAmount', + 'ListNodeInstanceType', + 'GetResourcePrice', + 'GetResourceRenewPrice', + ], + ], + [ + 'id' => 286385, + 'title' => 'Images', + 'type' => 'directory', + 'children' => [ + 'ListImage', + 'CreateImageByInstance', + 'StartTaskForDistributeImage', + 'DeleteImage', + ], + ], + [ + 'id' => 166320, + 'title' => 'Delivery Groups', + 'type' => 'directory', + 'children' => [ + 'CreateAppInstanceGroup', + 'GetAppInstanceGroup', + 'ListAppInstanceGroup', + 'PageListAppInstanceGroupUser', + 'RenewAppInstanceGroup', + 'UpdateAppInstanceGroupImage', + 'ModifyAppInstanceGroupAttribute', + 'ModifyNodePoolAttribute', + 'AuthorizeInstanceGroup', + 'LogOffAllSessionsInAppInstanceGroup', + 'DeleteAppInstanceGroup', + 'ModifyAppPolicy', + 'ListAuthorizedUserGroups', + ], + ], + [ + 'id' => 182244, + 'title' => 'App Instances', + 'type' => 'directory', + 'children' => [ + 'ListAppInstances', + 'DeleteAppInstances', + 'ListPersistentAppInstances', + ], + ], + [ + 'id' => 180891, + 'title' => 'Connections', + 'type' => 'directory', + 'children' => [ + 'GetConnectionTicket', + 'Unbind', + 'ListBindInfo', + ], + ], + [ + 'id' => 182247, + 'title' => 'Debugging', + 'type' => 'directory', + 'children' => [ + 'CreateImageFromAppInstanceGroup', + 'GetDebugAppInstance', + ], + ], + [ + 'id' => 170452, + 'title' => 'OTA', + 'type' => 'directory', + 'children' => [ + 'ListOtaTask', + 'GetOtaTaskByTaskId', + 'ApproveOtaTask', + ], + ], + [ + 'id' => 178496, + 'title' => 'Tenant Account', + 'type' => 'directory', + 'children' => [ + 'ListTenantConfig', + 'ModifyTenantConfig', + ], + ], + [ + 'id' => 203812, + 'title' => 'Resource Tags', + 'type' => 'directory', + 'children' => [ + 'ListTagCloudResources', + 'TagCloudResources', + 'UntagCloudResources', + ], + ], + [ + 'id' => 263171, + 'title' => 'Workstations', + 'type' => 'directory', + 'children' => [ + 'DescribeWuyingServerEipInfo', + 'CreateWuyingServer', + 'ListWuyingServer', + 'StartWuyingServer', + 'StopWuyingServer', + 'RestartWuyingServer', + 'ModifyWuyingServerAttribute', + 'UpdateWuyingServerImage', + 'RenewWuyingServer', + 'DeleteWuyingServer', + ], + ], + [ + 'id' => 313380, + 'title' => 'Other', + 'type' => 'directory', + 'children' => [ + 'ModifyBrowserInstanceGroup', + ], + ], + ], + 'components' => [ + 'schemas' => [], + ], + 'apis' => [ + 'ListRegions' => [ + 'summary' => 'Queries the regions that are supported by App Streaming.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'BizSource', + 'in' => 'query', + 'schema' => [ + 'description' => '> This parameter is not publicly available.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'null', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'RegionModels' => [ + 'description' => 'The region IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'regionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'cn-hangzhou', + ], + ], + 'example' => 'cn-hangzhou', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"RegionModels\\": [\\n {\\n \\"regionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListRegions', + 'description' => '> All supported regions instead of available regions are returned by this operation. For more information, see [Supported regions](~~426036~~).'."\n", + ], + 'ListNodes' => [ + 'summary' => 'Queries resource nodes.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '265984', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingEP3FXS', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Valid values: 1 to 200.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The page number. Pages start from page 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-53fvrq1oanz6c****', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'PerPageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'ToPage' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Count' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'NodeModels' => [ + 'description' => 'The resource nodes.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'NodeId' => [ + 'description' => 'The ID of the resource node.'."\n" + ."\n" + .'> This parameter is returned only if the ChargeResourceMode parameter of the delivery group to which the resource node belongs is set to Node.'."\n", + 'type' => 'string', + 'example' => 'i-bp13********', + ], + 'ChargeType' => [ + 'description' => 'The billing method of the resource node.'."\n" + ."\n" + .'> This parameter is returned only if the ChargeResourceMode parameter of the delivery group to which the resource node belongs is set to Node.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PostPaid: pay-as-you-go'."\n" + .'* Prepaid: subscription'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PostPaid' => '', + 'PrePaid' => '', + ], + 'example' => 'PostPaid', + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"PerPageSize\\": 10,\\n \\"ToPage\\": 1,\\n \\"Count\\": 100,\\n \\"NodeModels\\": [\\n {\\n \\"NodeId\\": \\"i-bp13********\\",\\n \\"ChargeType\\": \\"PostPaid\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListNodes', + ], + 'ModifyNodePoolAmount' => [ + 'summary' => 'Changes the number of nodes in a subscription delivery group.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '263378', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingU1TTUH', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'title' => '产品类型。', + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '交付组ID。', + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'NodePool', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '节点池相关变配参数', + 'description' => 'The parameters related to the configuration change of the node pool.'."\n", + 'type' => 'object', + 'properties' => [ + 'NodeAmount' => [ + 'title' => '升级后固定节点的数量', + 'description' => 'The total number of subscription nodes after the change.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + 'PrePaidNodeAmountModifyMode' => [ + 'title' => '预付费节点修改模式。EXPAND_FROM_POST_PAID_EXPLICIT:指定按量节点转换。', + 'description' => 'The change mode of subscription nodes.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* EXPAND_FROM_POST_PAID_EXPLICIT: changes from specified pay-as-you-go nodes'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'EXPAND_FROM_POST_PAID_EXPLICIT' => '', + ], + 'example' => 'EXPAND_FROM_POST_PAID_EXPLICIT', + ], + 'PrePaidNodeAmountModifyNodeIds' => [ + 'title' => '待修改计费类型节点列表。', + 'description' => 'The nodes for which you want to change the billing method.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The node for which you want to change the billing method.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'i-fgssxxx', + ], + 'required' => false, + ], + ], + 'required' => true, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'OrderId' => [ + 'description' => 'The order ID.'."\n", + 'type' => 'string', + 'example' => '23429322113****', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Data\\": {\\n \\"OrderId\\": \\"23429322113****\\"\\n }\\n}","type":"json"}]', + 'title' => 'ModifyNodePoolAmount', + ], + 'ListNodeInstanceType' => [ + 'summary' => 'Queries the resource types that are available for purchase when you create a delivery group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries to return on each page. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '10', + ], + ], + [ + 'name' => 'OsType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The operating system that is supported.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Windows: the Windows operating system'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Windows' => '', + ], + 'example' => 'Windows', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region where the resource resides. For information about the supported regions, see [Limits](~~426036~~).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cn-shanghai: China (Shanghai)'."\n" + .'* cn-hangzhou: China (Hangzhou)'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'cn-shanghai' => '', + 'cn-hangzhou' => '', + ], + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'Language', + 'in' => 'query', + 'schema' => [ + 'description' => 'The language that you want to use.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* en-US: English (US)'."\n" + .'* zh-CN: Simplified Chinese'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'en-US' => '', + 'zh-CN' => '', + ], + 'example' => 'zh-CN', + ], + ], + [ + 'name' => 'NodeInstanceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The resource type that you want to query. If you do not configure this parameter, all resource types are returned.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'appstreaming.vgpu.4c8g.2g', + ], + ], + [ + 'name' => 'NodeInstanceTypeFamily', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'Cpu', + 'in' => 'query', + 'schema' => [ + 'type' => 'number', + 'format' => 'float', + ], + ], + [ + 'name' => 'Gpu', + 'in' => 'query', + 'schema' => [ + 'type' => 'number', + 'format' => 'float', + ], + ], + [ + 'name' => 'Memory', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + [ + 'name' => 'GpuMemory', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + [ + 'name' => 'SortType', + 'in' => 'query', + 'schema' => [ + 'title' => 'DESC/ASC', + 'type' => 'string', + ], + ], + [ + 'name' => 'OrderBy', + 'in' => 'query', + 'schema' => [ + 'title' => 'CPU/Memory', + 'type' => 'string', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'PageSize' => [ + 'description' => 'The number of entries on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNumber' => [ + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NodeInstanceTypeModels' => [ + 'description' => 'The resource types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'NodeInstanceType' => [ + 'description' => 'The ID of the resource type.'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'appstreaming.vgpu.4c8g.2g', + ], + 'NodeInstanceTypeFamily' => [ + 'description' => 'The resource type family.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* appstreaming.general: WUYING - General'."\n" + .'* appstreaming.vgpu: WUYING - Graphics'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'appstreaming.general' => '', + 'appstreaming.vgpu' => '', + ], + 'example' => 'appstreaming.vgpu', + ], + 'Cpu' => [ + 'description' => 'The number of vCPUs.'."\n", + 'type' => 'string', + 'example' => '4', + ], + 'Gpu' => [ + 'description' => 'The number of GPUs.'."\n", + 'type' => 'string', + 'example' => '2', + ], + 'Memory' => [ + 'description' => 'The memory size. Unit: MB.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8192', + ], + 'GpuMemory' => [ + 'description' => 'The GPU size. Unit: MB.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '8192', + ], + 'MaxCapacity' => [ + 'description' => '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, 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:'."\n" + ."\n" + .'* appstreaming.general.4c8g: 1 to 2'."\n" + .'* appstreaming.general.8c16g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c16g.4g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c31g.16g: 1 to 4'."\n" + .'* appstreaming.vgpu.14c93g.12g: 1 to 6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'NodeTypeName' => [ + 'description' => 'The name of the resource type.'."\n", + 'type' => 'string', + 'example' => 'WUYING - General - 4 vCPUs 8 GB Memory'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TotalCount\\": 6,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"NodeInstanceTypeModels\\": [\\n {\\n \\"NodeInstanceType\\": \\"appstreaming.vgpu.4c8g.2g\\",\\n \\"NodeInstanceTypeFamily\\": \\"appstreaming.vgpu\\",\\n \\"Cpu\\": \\"4\\",\\n \\"Gpu\\": \\"2\\",\\n \\"Memory\\": 8192,\\n \\"GpuMemory\\": 8192,\\n \\"MaxCapacity\\": 4,\\n \\"NodeTypeName\\": \\"无影-通用型_4核8G\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListNodeInstanceType', + ], + 'GetResourcePrice' => [ + 'summary' => 'Queries resource prices.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'NodeInstanceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource type that you purchase. You can call the [ListNodeInstanceType](~~428502~~) to obtain the ID.'."\n" + ."\n" + .'You must specify one of AppInstanceType and NodeInstanceType. If you specify both of the parameters, the value of NodeInstanceType takes effect.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* appstreaming.vgpu.8c16g.4g: WUYING - Graphics - 8 vCPUs, 16 GiB Memory, 4 GiB GPU Memory'."\n" + .'* appstreaming.general.8c16g: WUYING - General - 8 vCPUs, 16 GiB Memory'."\n" + .'* appstreaming.general.4c8g: WUYING - General - 4 vCPUs, 8 GiB Memory'."\n" + .'* appstreaming.vgpu.14c93g.12g: WUYING - Graphics - 14 vCPUs, 93 GiB Memory, 12 GiB GPU Memory.'."\n" + .'* appstreaming.vgpu.8c31g.16g: WUYING - Graphics - 8 vCPUs, 31 GiB Memory, 16 GiB GPU Memory'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'appstreaming.vgpu.8c16g.4g' => '', + 'appstreaming.general.8c16g' => '', + 'appstreaming.general.4c8g' => '', + 'appstreaming.vgpu.14c93g.12g' => '', + 'appstreaming.vgpu.8c31g.16g' => '', + ], + 'example' => 'appstreaming.vgpu.4c8g.2g', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'ChargeType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The billing method.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PostPaid: pay-as-you-go'."\n" + .'* PrePaid: subscription'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'PostPaid' => '', + 'PrePaid' => '', + ], + 'example' => 'PrePaid', + ], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => [ + 'description' => 'The subscription duration of resources. This parameter must be configured together with `PeriodUnit`.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unit of the subscription duration. This parameter must be configured together with `Period`. The following items describe valid values for the combinations of `Period` and `PeriodUnit`:'."\n" + ."\n" + .'* 1 Week'."\n" + .'* 1 Month'."\n" + .'* 2 Month'."\n" + .'* 3 Month'."\n" + .'* 6 Month'."\n" + .'* 1 Year'."\n" + .'* 2 Year'."\n" + .'* 3 Year'."\n" + ."\n" + .'> The value of this parameter is case-insensitive. For example, `Week` is valid and `week` is invalid. If you specify a value combination other than the preceding combinations, such as `2 Week`, the operation can still be called. However, an error occurs when you place the order.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Month' => '', + 'Year' => '', + 'Week' => '', + ], + 'example' => 'Week', + ], + ], + [ + 'name' => 'Amount', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of resources to purchase.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region where the delivery group resides. For information about the supported regions, see [Limits](~~426036~~).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cn-shanghai: China (Shanghai).'."\n" + .'* cn-hangzhou: China (Hangzhou)'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'cn-shanghai' => '', + 'cn-hangzhou' => '', + ], + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'AppInstanceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type ID of the sessions that you purchase. You can call the `ListAppInstanceType` operation to obtain the ID.'."\n" + ."\n" + .'You must specify one of AppInstanceType and NodeInstanceType. If you specify both of the parameters, the value of NodeInstanceType takes effect.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'appstreaming.general', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ProductType', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'The parameter ProductType is invalid.', + ], + 'PriceModel' => [ + 'description' => 'The price object.'."\n" + ."\n" + .'This parameter is returned only if a value is specified for NodeInstanceType.'."\n", + 'type' => 'object', + 'properties' => [ + 'Price' => [ + 'description' => 'The price details.'."\n", + 'type' => 'object', + 'properties' => [ + 'OriginalPrice' => [ + 'description' => 'The original price.'."\n", + 'type' => 'string', + 'example' => '11.00', + ], + 'DiscountPrice' => [ + 'description' => 'The discount. The actual price is calculated based on the following formula: Actual price = Original price - Discount.'."\n", + 'type' => 'string', + 'example' => '1.00', + ], + 'TradePrice' => [ + 'description' => 'The actual price. The actual price is calculated based on the following formula: Actual price = Original price - Discount.'."\n", + 'type' => 'string', + 'example' => '10.00', + ], + 'Currency' => [ + 'description' => 'The currency type.'."\n", + 'type' => 'string', + 'example' => 'CNY', + ], + 'Promotions' => [ + 'description' => 'The coupon metadata.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'OptionCode' => [ + 'description' => 'The coupon code.'."\n", + 'type' => 'string', + 'example' => 'coupon****', + ], + 'PromotionId' => [ + 'description' => 'The coupon ID.'."\n", + 'type' => 'string', + 'example' => '17440009****', + ], + 'PromotionName' => [ + 'description' => 'The coupon name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'PromotionDesc' => [ + 'description' => 'The coupon description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Selected' => [ + 'description' => 'Indicates whether the coupon was used.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + ], + ], + ], + ], + 'Rules' => [ + 'description' => 'The price calculation rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RuleId' => [ + 'description' => 'The ID of the price calculation rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '102002100393****', + ], + 'Description' => [ + 'description' => 'The description of the price calculation rule.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + ], + 'PriceList' => [ + 'description' => 'The price objects.'."\n" + ."\n" + .'This parameter is returned only if a value is specified for AppInstanceType.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'PriceType' => [ + 'description' => 'The price type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Connected: in use'."\n" + .'* Standby: pending for use.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Connected' => '', + 'Standby' => '', + ], + 'example' => 'Standby', + ], + 'Price' => [ + 'description' => 'The price details.'."\n", + 'type' => 'object', + 'properties' => [ + 'OriginalPrice' => [ + 'description' => 'The original price.'."\n", + 'type' => 'string', + 'example' => '6700', + ], + 'DiscountPrice' => [ + 'description' => 'The discount. The actual price is calculated based on the following formula: Actual price = Original price - Discount.'."\n", + 'type' => 'string', + 'example' => '999.0', + ], + 'TradePrice' => [ + 'description' => 'The actual price. The actual price is calculated based on the following formula: Actual price = Original price - Discount.'."\n", + 'type' => 'string', + 'example' => '5278.0', + ], + 'Currency' => [ + 'description' => 'The currency type.'."\n", + 'type' => 'string', + 'example' => 'CNY', + ], + 'Promotions' => [ + 'description' => 'The coupon metadata.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'OptionCode' => [ + 'description' => 'The coupon code.'."\n", + 'type' => 'string', + 'example' => 'coupon****', + ], + 'PromotionId' => [ + 'description' => 'The coupon ID.'."\n", + 'type' => 'string', + 'example' => '1847709****', + ], + 'PromotionName' => [ + 'description' => 'The coupon name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'PromotionDesc' => [ + 'description' => 'The coupon description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Selected' => [ + 'description' => 'Indicates whether the coupon was used.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + ], + ], + ], + ], + 'Rules' => [ + 'description' => 'The price calculation rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RuleId' => [ + 'description' => 'The ID of the price calculation rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '260904273633****', + ], + 'Description' => [ + 'description' => 'The description of the price calculation rule.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Code\\": \\"InvalidParameter.ProductType\\",\\n \\"Message\\": \\"The parameter ProductType is invalid.\\",\\n \\"PriceModel\\": {\\n \\"Price\\": {\\n \\"OriginalPrice\\": \\"11.00\\",\\n \\"DiscountPrice\\": \\"1.00\\",\\n \\"TradePrice\\": \\"10.00\\",\\n \\"Currency\\": \\"CNY\\",\\n \\"Promotions\\": [\\n {\\n \\"OptionCode\\": \\"coupon****\\",\\n \\"PromotionId\\": \\"17440009****\\",\\n \\"PromotionName\\": \\"**优惠\\",\\n \\"PromotionDesc\\": \\"**活动期间的优惠\\",\\n \\"Selected\\": true\\n }\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleId\\": 0,\\n \\"Description\\": \\"用户优惠\\"\\n }\\n ]\\n },\\n \\"PriceList\\": [\\n {\\n \\"PriceType\\": \\"Standby\\",\\n \\"Price\\": {\\n \\"OriginalPrice\\": \\"6700\\",\\n \\"DiscountPrice\\": \\"999.0\\",\\n \\"TradePrice\\": \\"5278.0\\",\\n \\"Currency\\": \\"CNY\\",\\n \\"Promotions\\": [\\n {\\n \\"OptionCode\\": \\"coupon****\\",\\n \\"PromotionId\\": \\"1847709****\\",\\n \\"PromotionName\\": \\"**优惠\\",\\n \\"PromotionDesc\\": \\"**活动期间的优惠\\",\\n \\"Selected\\": true\\n }\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleId\\": 0,\\n \\"Description\\": \\"用户优惠。\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'GetResourcePrice', + ], + 'GetResourceRenewPrice' => [ + 'summary' => 'Queries the renewal prices of App Streaming resources.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => [ + 'description' => 'The subscription duration of resources. This parameter must be configured together with `PeriodUnit`.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unit of the subscription duration. This parameter must be configured together with `Period`. The following items describe valid values for the combinations of `Period` and `PeriodUnit`:'."\n" + ."\n" + .'* 1 Week'."\n" + .'* 1 Month'."\n" + .'* 2 Month'."\n" + .'* 3 Month'."\n" + .'* 6 Month'."\n" + .'* 1 Year'."\n" + .'* 2 Year'."\n" + .'* 3 Year'."\n" + ."\n" + .'> The value of this parameter is case-insensitive. For example, `Week` is valid and `week` is invalid. If you specify a value combination other than the preceding combinations, such as `2 Week`, the operation can still be called. However, an error occurs when you place the order.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Month' => '', + 'Year' => '', + 'Week' => '', + ], + 'example' => 'Week', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group. You can call the [ListAppInstanceGroup](~~428506~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Data' => [ + 'description' => 'The price object.'."\n", + 'type' => 'object', + 'properties' => [ + 'Price' => [ + 'description' => 'The price details.'."\n", + 'type' => 'object', + 'properties' => [ + 'OriginalPrice' => [ + 'description' => 'The original price.'."\n", + 'type' => 'string', + 'example' => '11'."\n", + ], + 'DiscountPrice' => [ + 'description' => 'The discount. The actual price is calculated based on the following formula: Actual price = Original price - Discount.'."\n", + 'type' => 'string', + 'example' => '1', + ], + 'TradePrice' => [ + 'description' => 'The actual price. The actual price is calculated based on the following formula: Actual price = Original price - Discount.'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Currency' => [ + 'description' => 'The currency type.'."\n", + 'type' => 'string', + 'example' => 'CNY', + ], + 'Promotions' => [ + 'description' => 'The coupon description.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'OptionCode' => [ + 'description' => 'The coupon code.'."\n", + 'type' => 'string', + 'example' => 'coupon****', + ], + 'PromotionId' => [ + 'description' => 'The coupon ID.'."\n", + 'type' => 'string', + 'example' => '139965*****', + ], + 'PromotionName' => [ + 'description' => 'The coupon name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'PromotionDesc' => [ + 'description' => 'The coupon description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'Selected' => [ + 'description' => 'Indicates whether the coupon was used.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + ], + ], + ], + ], + 'Rules' => [ + 'description' => 'The price calculation rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RuleId' => [ + 'description' => 'The ID of the price calculation rule.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20002****', + ], + 'Description' => [ + 'description' => 'The description of the price calculation rule.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Data\\": {\\n \\"Price\\": {\\n \\"OriginalPrice\\": \\"11\\\\n\\",\\n \\"DiscountPrice\\": \\"1\\",\\n \\"TradePrice\\": \\"10\\",\\n \\"Currency\\": \\"CNY\\",\\n \\"Promotions\\": [\\n {\\n \\"OptionCode\\": \\"coupon****\\",\\n \\"PromotionId\\": \\"139965*****\\",\\n \\"PromotionName\\": \\"**活动\\",\\n \\"PromotionDesc\\": \\"**活动\\",\\n \\"Selected\\": true\\n }\\n ]\\n },\\n \\"Rules\\": [\\n {\\n \\"RuleId\\": 0,\\n \\"Description\\": \\"**活动\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'GetResourceRenewPrice', + ], + 'ListImage' => [ + 'summary' => 'Queries the image information about an ECS instance.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '213313', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingSH8DGI', + 'FEATUREappstreamingDG81PX', + ], + ], + 'parameters' => [ + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像id', + 'description' => 'The image ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'img-bp13mu****', + ], + ], + [ + 'name' => 'ImageName', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像名称', + 'description' => 'The image name. Fuzzy match is supported.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'DemoImage', + ], + ], + [ + 'name' => 'Status', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像状态:INIT/CREATING/AVAILABLE/CREATE_FAILED', + 'description' => 'The status of the image. You can query images in the specified status. By default, all images in the Not Deleted state are queried.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AVAILABLE: The image is available.'."\n" + .'* INIT: The image is being initialized.'."\n" + .'* CREATE_FAILED: The image failed to be created.'."\n" + .'* CREATING: The image is being created.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'AVAILABLE' => '', + 'INIT' => '', + 'CREATE_FAILED' => '', + 'CREATING' => '', + ], + 'example' => 'INIT', + ], + ], + [ + 'name' => 'ImageType', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像类型', + 'description' => 'The type of the images.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* User: a custom image.'."\n" + .'* Shared: a shared image.'."\n" + .'* System: a system image.'."\n" + .'* Community: a community image.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'User' => '', + 'Shared' => '', + 'System' => '', + 'Community' => '', + ], + 'example' => 'User', + ], + ], + [ + 'name' => 'PackageType', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像封装类型', + 'description' => 'The image encapsulation type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Ecs_Container: ECS and Docker image'."\n" + .'* Ecs: ECS image'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Ecs_Container' => '', + 'Ecs' => '', + ], + 'example' => 'Ecs', + ], + ], + [ + 'name' => 'OsType', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像操作系统类型', + 'description' => 'The OS type of the image.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Linux'."\n" + .'* Unknown'."\n" + .'* Windows'."\n" + .'* Android'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Linux' => 'Linux', + 'Unknown' => '', + 'Windows' => 'Windows', + 'Android' => 'Android', + ], + 'example' => 'Windows', + ], + ], + [ + 'name' => 'BizType', + 'in' => 'formData', + 'schema' => [ + 'title' => '业务类型', + 'description' => 'The service type. This parameter is not available publicly.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* 1 (default)'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + 1 => '', + ], + 'example' => '1', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'title' => '产品类型', + 'description' => 'The product type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudDesktop: Elastic Desktop Service'."\n" + .'* CloudApp: App Streaming'."\n" + .'* WuyingServer: Workstation'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CloudDesktop' => '', + 'CloudApp' => '', + 'WuyingServer' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'ProtocolType', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像协议类型', + 'description' => 'The protocol type of the image.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* HDX: the High-definition Experience (HDX) protocol'."\n" + .'* ASP: the Alibaba Cloud-developed ASP protocol'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'HDX' => '', + 'ASP' => '', + ], + 'example' => 'ASP', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. Maximum value: 100. Default value: 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The current page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'ProductTypeList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of products that are supported when the image supports multiple products.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudDesktop: Elastic Desktop Service'."\n" + .'* CloudApp: App Streaming'."\n" + .'* WuyingServer: Workstation'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CloudDesktop' => '', + 'CloudApp' => '', + 'WuyingServer' => '', + ], + 'example' => 'CloudApp', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'BizTypeList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of all service types. It is not available publicly.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The service type. Specify this parameter based on the service you actually use.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* 1 (default)'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + 1 => '', + ], + 'example' => '1', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'FeatureList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The features supported by the image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The feature supported by the image.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* FotaChannel: supports FOTA channels.'."\n" + .'* Builder: supports image builder.'."\n" + .'* MultiSession: supports multiple sessions.'."\n" + .'* GPU: supports GPU.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'FotaChannel' => '', + 'Builder' => '', + 'MultiSession' => '', + 'GPU' => '', + ], + 'example' => 'GPU', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'LanguageType', + 'in' => 'formData', + 'schema' => [ + 'title' => 'zh-CN,zh-HK,en-US,ja-JP,CN,EN,JP,CN-HK', + 'description' => 'The language.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* en-US: English.'."\n" + .'* zh-HK: Chinese, Traditional (Hong Kong, China).'."\n" + .'* zh-CN: Simplified Chinese.'."\n" + .'* ja-JP: Japanese.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'en-US' => '', + 'zh-HK' => '', + 'zh-CN' => '', + 'ja-JP' => '', + ], + 'example' => 'zh-CN', + ], + ], + [ + 'name' => 'ResourceInstanceType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Find images with certain fixed specifications.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eds.enterprise_office.2c4g', + ], + ], + [ + 'name' => 'FotaVersion', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The image version.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2.0.3-xxxx', + ], + ], + [ + 'name' => 'PlatformName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the operating system platform.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Ubuntu'."\n" + .'* Debian'."\n" + .'* Windows Server 2022'."\n" + .'* Windows Server 2019'."\n" + .'* Windows Server 2016'."\n" + .'* Windows 11'."\n" + .'* Windows 10'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Ubuntu' => '', + 'Debian' => '', + 'Windows Server 2022' => '', + 'Windows Server 2019' => '', + 'Windows Server 2016' => '', + 'Windows 11' => '', + 'Windows 10' => '', + ], + 'example' => 'Windows Server 2019', + ], + ], + [ + 'name' => 'BizRegionIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The regions that are supported. The EDS images are centralized. Use this parameter to query the regions where the image is deployed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'TagList', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The tags to query.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => 'The key of the custom tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'env', + ], + 'Value' => [ + 'description' => 'The value of the custom tag.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + 'required' => false, + 'description' => '', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'PlatformNameList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of supported platform types. For valid values, refer to PlatformName above.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the image platform.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Windows 11', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'ImageBaseInfoModel', + 'description' => 'The information about the image.'."\n", + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + 'title' => '每页展示数据条数。', + ], + 'PageNumber' => [ + 'description' => 'The page number returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + 'title' => '返回数据的页数。', + ], + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'GmtCreate' => [ + 'title' => '创建时间', + 'description' => 'The creation time.'."\n", + 'type' => 'string', + 'example' => '2025-04-25 15:13:57', + ], + 'GmtModified' => [ + 'title' => '更新时间', + 'description' => 'The update time.'."\n", + 'type' => 'string', + 'example' => '2025-04-25 15:13:57', + ], + 'AliUid' => [ + 'title' => '租户ID,0是系统镜像', + 'description' => 'The tenant ID.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123456789', + ], + 'ImageId' => [ + 'title' => '系统镜像id有含义,自定义镜像自动生成', + 'description' => 'System image IDs follow a descriptive, human-readable format, while custom image IDs are automatically generated by the system.'."\n", + 'type' => 'string', + 'example' => 'imgc-xxxx', + ], + 'ImageName' => [ + 'title' => '镜像名称', + 'description' => 'The image name.'."\n", + 'type' => 'string', + 'example' => 'DemoImage', + ], + 'ImageType' => [ + 'title' => '镜像类型', + 'description' => 'The type of the image.'."\n", + 'type' => 'string', + 'example' => 'User', + ], + 'PackageType' => [ + 'title' => '镜像封装类型 ECS/VHD/Container/ECS_APP', + 'description' => 'The image encapsulation type.'."\n", + 'type' => 'string', + 'example' => 'ECS', + ], + 'Description' => [ + 'title' => '镜像描述', + 'description' => 'The description of the image.'."\n", + 'type' => 'string', + 'example' => '描述', + ], + 'OsType' => [ + 'title' => '镜像类型', + 'description' => 'The type of the image.'."\n", + 'type' => 'string', + 'example' => 'Windows', + ], + 'ProtocolType' => [ + 'title' => '协议类型 ASP/HDX/ALL', + 'description' => 'The protocol type.'."\n", + 'type' => 'string', + 'example' => 'ASP', + ], + 'BizType' => [ + 'title' => '业务线', + 'description' => 'The service type.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'ProductType' => [ + 'title' => '产品线', + 'description' => 'The product type.'."\n", + 'type' => 'string', + 'example' => 'CloudApp', + ], + 'VersionId' => [ + 'title' => '镜像版本', + 'description' => 'The version of the image.'."\n", + 'type' => 'string', + 'example' => 'iv-xxx', + ], + 'OnlineVersionId' => [ + 'title' => '当前镜像最新版本', + 'description' => 'This image tag currently points to the specified sub-version of the parent image. (An image consists of multiple sub-versions.)'."\n", + 'type' => 'string', + 'example' => 'iv-xxxx', + ], + 'LatestVersionId' => [ + 'title' => '该镜像的最新版本', + 'description' => 'The latest sub-version of the image. (An image consists of multiple sub-versions.)'."\n", + 'type' => 'string', + 'example' => 'iv-xxx', + ], + 'Status' => [ + 'title' => '状态 ImageStatusEnum', + 'description' => 'The state of the image.'."\n", + 'type' => 'string', + 'example' => 'INIT', + ], + 'ParentImageId' => [ + 'title' => '父镜像ID,只表示继承关系,系统镜像无父镜像', + 'description' => 'The ID of the parent image from which this image is derived. Note: This field is only applicable to custom images, as system images do not have a parent.'."\n", + 'type' => 'string', + 'example' => 'imgc-xxx', + ], + 'ParentImageVersion' => [ + 'title' => '父镜像版本', + 'description' => 'The version of the parent image.'."\n", + 'type' => 'string', + 'example' => 'iv-xxx', + ], + 'BaseImageId' => [ + 'title' => '基础镜像ID', + 'description' => 'The base image ID.'."\n", + 'type' => 'string', + 'example' => 'imgc-xxx', + ], + 'BaseImageVersion' => [ + 'title' => '基础镜像版本', + 'description' => 'The version of the base image.'."\n", + 'type' => 'string', + 'example' => 'iv-xxx', + ], + 'FotaVersion' => [ + 'title' => 'fota版本', + 'description' => 'The FOTA version.'."\n", + 'type' => 'string', + 'example' => '2.3.0-xxx', + ], + 'Language' => [ + 'title' => '镜像语言', + 'description' => 'The image language. When the packaging type is VHD or Container, the image inherits its properties from the ECS-type image within the same image bundle.'."\n", + 'type' => 'string', + 'example' => 'zh-CN', + ], + 'Platform' => [ + 'title' => '镜像平台类型整型值', + 'description' => 'The operating system platform of the image.'."\n" + ."\n" + .'> When the packaging type is VHD or Container, the image inherits its properties from the ECS-type image within the same image bundle.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => 'Windows', + ], + 'OnlineVersion' => [ + 'title' => '当前版本是否是生效版本', + 'description' => 'Indicates whether the current version is the active version.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'SystemDiskSize' => [ + 'description' => 'The size of the system disk. Unit: GiB.'."\n" + ."\n" + .'> The system disk must be at least as large as the image.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '40', + 'title' => '系统盘大小。单位:GiB', + ], + 'DataDiskSize' => [ + 'description' => 'The size of the data disk. Unit: GiB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + 'title' => '数据盘大小。单位:GiB', + ], + 'AppList' => [ + 'description' => 'The application configuration.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'description' => 'The ID of the application.'."\n", + 'type' => 'string', + 'example' => 'ca-xxx', + 'title' => '应用ID', + ], + 'AppName' => [ + 'description' => 'The name of the application.'."\n", + 'type' => 'string', + 'example' => '应用名称', + 'title' => '应用名称', + ], + ], + 'description' => '', + 'title' => '应用配置', + ], + 'title' => '应用配置列表', + ], + 'FeatureList' => [ + 'description' => 'The image feature tags.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The image feature tag.'."\n", + 'type' => 'string', + 'example' => 'Builder', + 'title' => '镜像特征标记', + ], + 'title' => '镜像特征标记', + ], + 'ImageCreateMode' => [ + 'description' => 'The image creation type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* BY_SNAPSHOT_ID: The image is created from the snapshot or contains only a system disk.'."\n" + .'* BUILDER_MANUAL: The image is manually generated.'."\n" + .'* INSTANCE_AUTO: The image is automatically generated based on an instance.'."\n" + .'* BY_INSTANCE_ID: The image is created from an instance or contains both a system disk and data disks.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'BY_SNAPSHOT_ID' => '', + 'BUILDER_MANUAL' => '', + 'INSTANCE_AUTO' => '', + 'BY_INSTANCE_ID' => '', + ], + 'example' => 'BUILDER_MANUAL', + 'title' => '镜像创建类型', + ], + 'ImageRegionList' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The region.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + 'title' => '地域对象', + ], + 'title' => '地域对象', + ], + 'Distro' => [ + 'description' => 'The name of the release.'."\n", + 'type' => 'string', + 'example' => 'Ubuntu 22.04 64位', + 'title' => '发行版名字', + ], + 'VersionName' => [ + 'description' => 'The version number.'."\n", + 'type' => 'string', + 'example' => 'v0.1.0', + 'title' => '版本名称', + ], + 'ResourceInstanceCategory' => [ + 'description' => 'The types of resources that are supported by the images.'."\n", + 'type' => 'string', + 'example' => '["eds.cpu.category"]', + 'title' => '镜像支持资源类型', + ], + 'PlatformName' => [ + 'description' => 'The name of the operating system platform.'."\n", + 'type' => 'string', + 'example' => 'Windows Server 2022', + 'title' => '镜像平台类型', + ], + 'SupportedLanguageList' => [ + 'description' => 'The supported languages.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The supported language.'."\n", + 'type' => 'string', + 'example' => 'zh-CN', + 'title' => '支持语言', + ], + 'title' => '支持语言列表', + ], + 'VolumeEncryptionEnabled' => [ + 'description' => 'Specifies whether to enable disk encryption.'."\n", + 'type' => 'boolean', + 'example' => 'true', + 'title' => '是否开启磁盘加密', + ], + 'VolumeEncryptionKey' => [ + 'description' => 'The ID of the Key Management Service (KMS) key that is used to encrypt the disk.'."\n", + 'type' => 'string', + 'example' => 'a7b3c0c8-xxxx', + 'title' => '开启磁盘加密的情况下使用的KMS的密钥ID', + ], + 'SessionType' => [ + 'description' => 'The type of the session.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* SINGLE_SESSION'."\n" + .'* MULTIPLE_SESSION'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'SINGLE_SESSION' => '', + 'MULTIPLE_SESSION' => '', + ], + 'example' => 'SINGLE_SESSION', + 'title' => '会话类型', + ], + 'ImageRegionDistributeList' => [ + 'title' => '叠层有效地域信息', + 'description' => 'Layered supported regions information.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ImageId' => [ + 'title' => '系统镜像id有含义,自定义镜像自动生成', + 'description' => 'System image IDs follow a descriptive, human-readable format, while custom image IDs are automatically generated by the system.'."\n", + 'type' => 'string', + 'example' => 'imgc-xxx', + ], + 'RegionId' => [ + 'title' => '支持地域', + 'description' => 'The supported region.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'Status' => [ + 'title' => '状态', + 'description' => 'The status.'."\n", + 'type' => 'string', + 'example' => 'INIT', + ], + 'VersionId' => [ + 'title' => '镜像版本', + 'description' => 'The version of the image.'."\n", + 'type' => 'string', + 'example' => 'iv-xxx', + ], + 'Progress' => [ + 'title' => '进度百分比', + 'description' => 'The progress.'."\n", + 'type' => 'string', + 'example' => '70%', + ], + ], + 'description' => '', + 'title' => '镜像地域列表', + ], + ], + 'FotaChannel' => [ + 'description' => '> This parameter is not available for public use.'."\n", + 'type' => 'string', + 'example' => '镜像支持的fota渠道,暂未启用', + 'title' => '> 此参数暂未对外开放使用。', + ], + 'CompatibleMode' => [ + 'description' => 'Specifies whether to use the compatibility mode.'."\n", + 'type' => 'boolean', + 'example' => 'true', + 'title' => '是否为兼容模式。', + ], + 'DriverList' => [ + 'description' => 'The information about each driver.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The drivers.'."\n", + 'type' => 'string', + 'example' => '["00be80de-xxxx-xxxx-xxxx-xxxxxxxxxxxx"]', + 'title' => '驱动ID', + ], + 'title' => '驱动列表。', + ], + 'Scene' => [ + 'title' => '镜像使用的场景', + 'type' => 'string', + 'example' => 'AIGC', + ], + 'Rating' => [ + 'title' => '镜像评分值,满分100', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '95', + ], + 'ImageIconUrl' => [ + 'title' => '镜像图标URL', + 'type' => 'string', + ], + 'EnvironmentId' => [ + 'title' => '镜像使用环境ID', + 'type' => 'string', + 'example' => 'env-164c321f405ca84143e4b730dbe4', + ], + 'TagList' => [ + 'title' => '标签列表', + 'type' => 'array', + 'items' => [ + 'title' => '标签列表', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'type' => 'string', + 'example' => '1630348213973321', + ], + 'Value' => [ + 'title' => '标签值。', + 'type' => 'string', + 'example' => 'inner', + ], + ], + ], + ], + 'SnapshotList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SnapshotId' => [ + 'type' => 'string', + ], + 'VersionId' => [ + 'type' => 'string', + ], + 'DiskType' => [ + 'type' => 'string', + ], + 'DiskSubType' => [ + 'type' => 'string', + ], + 'BindType' => [ + 'type' => 'string', + ], + 'DiskCategory' => [ + 'type' => 'string', + ], + 'Size' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + ], + ], + ], + 'title' => '返回对象。', + ], + 'title' => '返回对象。', + ], + 'Count' => [ + 'description' => 'The total number of entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '22', + 'title' => '总条数。', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true: The request is successful.'."\n" + .'* false: The request failed.'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + 'title' => '是否调用成功。', + ], + 'Code' => [ + 'description' => 'The HTTP status code that is returned.'."\n", + 'type' => 'string', + 'example' => '200', + 'title' => '错误码。', + ], + 'Message' => [ + 'description' => 'The message that is returned for the request.'."\n", + 'type' => 'string', + 'example' => 'success', + 'title' => '接口请求返回的信息。', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '8737D130-BFD0-5D51-96F6-C08EB1139A25', + 'title' => '请求ID。', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error.', + ], + [ + 'errorCode' => 'InvalidBizType', + 'errorMessage' => 'The bizType parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'Forbidden.NoPermission', + 'errorMessage' => 'You are not authorized to access this page.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"Data\\": [\\n {\\n \\"GmtCreate\\": \\"2025-04-25 15:13:57\\",\\n \\"GmtModified\\": \\"2025-04-25 15:13:57\\",\\n \\"AliUid\\": 123456789,\\n \\"ImageId\\": \\"imgc-xxxx\\",\\n \\"ImageName\\": \\"DemoImage\\",\\n \\"ImageType\\": \\"User\\",\\n \\"PackageType\\": \\"ECS\\",\\n \\"Description\\": \\"描述\\",\\n \\"OsType\\": \\"Windows\\",\\n \\"ProtocolType\\": \\"ASP\\",\\n \\"BizType\\": 1,\\n \\"ProductType\\": \\"CloudApp\\",\\n \\"VersionId\\": \\"iv-xxx\\",\\n \\"OnlineVersionId\\": \\"iv-xxxx\\",\\n \\"LatestVersionId\\": \\"iv-xxx\\",\\n \\"Status\\": \\"INIT\\",\\n \\"ParentImageId\\": \\"imgc-xxx\\",\\n \\"ParentImageVersion\\": \\"iv-xxx\\",\\n \\"BaseImageId\\": \\"imgc-xxx\\",\\n \\"BaseImageVersion\\": \\"iv-xxx\\",\\n \\"FotaVersion\\": \\"2.3.0-xxx\\",\\n \\"Language\\": \\"zh-CN\\",\\n \\"Platform\\": 0,\\n \\"OnlineVersion\\": true,\\n \\"SystemDiskSize\\": 40,\\n \\"DataDiskSize\\": 100,\\n \\"AppList\\": [\\n {\\n \\"AppId\\": \\"ca-xxx\\",\\n \\"AppName\\": \\"应用名称\\"\\n }\\n ],\\n \\"FeatureList\\": [\\n \\"Builder\\"\\n ],\\n \\"ImageCreateMode\\": \\"BUILDER_MANUAL\\",\\n \\"ImageRegionList\\": [\\n \\"地域对象。\\"\\n ],\\n \\"Distro\\": \\"Ubuntu 22.04 64位\\",\\n \\"VersionName\\": \\"v0.1.0\\",\\n \\"ResourceInstanceCategory\\": \\"[\\\\\\"eds.cpu.category\\\\\\"]\\",\\n \\"PlatformName\\": \\"Windows Server 2022\\",\\n \\"SupportedLanguageList\\": [\\n \\"zh-CN\\"\\n ],\\n \\"VolumeEncryptionEnabled\\": true,\\n \\"VolumeEncryptionKey\\": \\"a7b3c0c8-xxxx\\",\\n \\"SessionType\\": \\"SINGLE_SESSION\\",\\n \\"ImageRegionDistributeList\\": [\\n {\\n \\"ImageId\\": \\"imgc-xxx\\",\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"Status\\": \\"INIT\\",\\n \\"VersionId\\": \\"iv-xxx\\",\\n \\"Progress\\": \\"70%\\"\\n }\\n ],\\n \\"FotaChannel\\": \\"镜像支持的fota渠道,暂未启用\\",\\n \\"CompatibleMode\\": true,\\n \\"DriverList\\": [\\n \\"[\\\\\\"00be80de-xxxx-xxxx-xxxx-xxxxxxxxxxxx\\\\\\"]\\"\\n ],\\n \\"Scene\\": \\"AIGC\\",\\n \\"Rating\\": 95,\\n \\"ImageIconUrl\\": \\"\\",\\n \\"EnvironmentId\\": \\"env-164c321f405ca84143e4b730dbe4\\",\\n \\"TagList\\": [\\n {\\n \\"Key\\": \\"1630348213973321\\",\\n \\"Value\\": \\"inner\\"\\n }\\n ],\\n \\"SnapshotList\\": [\\n {\\n \\"SnapshotId\\": \\"\\",\\n \\"VersionId\\": \\"\\",\\n \\"DiskType\\": \\"\\",\\n \\"DiskSubType\\": \\"\\",\\n \\"BindType\\": \\"\\",\\n \\"DiskCategory\\": \\"\\",\\n \\"Size\\": 0\\n }\\n ]\\n }\\n ],\\n \\"Count\\": 22,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"8737D130-BFD0-5D51-96F6-C08EB1139A25\\"\\n}","type":"json"}]', + 'title' => 'ListImage', + ], + 'CreateImageByInstance' => [ + 'summary' => 'Create a custom image from a deployed instance. This allows you to quickly create more instances with the same configurations and avoid repeatedly configuring the instance environment each time you create the instance.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '248026', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingSH8DGI', + ], + 'autoTest' => true, + ], + 'parameters' => [ + [ + 'name' => 'ImageName', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像名称', + 'description' => 'The name of the image.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'test', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像描述', + 'description' => 'The description of the image.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'my test image v1.0', + ], + ], + [ + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例ID', + 'description' => 'The ID of the RDS instance. The instance can be a CloudDesktop instance, a workstation instance. To ensure data consistency in the image, we recommend that you shut down the instance before you create an image.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0buj1s9gm******', + ], + ], + [ + 'name' => 'SubInstanceId', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例版本', + 'description' => 'The ID of the child instance. This parameter is not used in cloud computing scenarios. Workstation scenarios, you need to specify a persistent session ID to ensure that a specific instance is located.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'p-0cc7s3n1l*****', + ], + ], + [ + 'name' => 'InstanceType', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例类型', + 'description' => 'The instance type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudDesktop: Cloud Desktop.'."\n" + .'* WuyingServer: Workstation'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CloudDesktop' => '', + 'WuyingServer' => '', + ], + 'example' => 'WuyingServer', + ], + ], + [ + 'name' => 'AutoCleanUserdata', + 'in' => 'formData', + 'schema' => [ + 'description' => 'This parameter is applicable only to scenarios in which the instance type is Cloud Desktop. Specifies whether to clear private data of users. If this parameter is set to true, the created image clears data in directories other than Administrator and Public in the C:\\Users directory.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true: cleanup.'."\n" + .'* false: does not clear.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + ], + [ + 'name' => 'DiskType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The type of disk data contained in the image. By default, the system disk and data disk of the instance are included.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* SYSTEM: only system disk.'."\n" + .'* ALL: system disk + data disk'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'SYSTEM' => '', + 'ALL' => '', + ], + 'example' => 'ALL', + ], + ], + [ + 'name' => 'BizType', + 'in' => 'formData', + 'schema' => [ + 'title' => '业务线 1:BASE/2:PERSONAL/3:CLOUD_OFFICE/4:CLOUD_FLOW/10:STANDARD', + 'description' => 'This parameter is not publicly available.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'title' => '产品类型 CloudGame/CloudApp/CloudBrowser/CloudDesktop', + 'description' => 'This parameter is not publicly available.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'WuyingServer', + ], + ], + [ + 'name' => 'TagList', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'type' => 'string', + ], + 'Value' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResult<CreateImageResultModel>', + 'description' => 'The request response structure.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'ImageId' => [ + 'title' => '系统镜像id有含义,自定义镜像自动生成', + 'description' => 'The ID of the RDS image.'."\n", + 'type' => 'string', + 'example' => 'imgc-07hnjj5fp****', + ], + 'VersionId' => [ + 'title' => '镜像版本', + 'description' => 'The version of the image.'."\n", + 'type' => 'string', + 'example' => 'iv-0abxi0lbi*****', + ], + 'TaskId' => [ + 'title' => '任务id', + 'description' => 'The ID of the image creation task.'."\n", + 'type' => 'string', + 'example' => 'tid-0abxi0lbih******', + ], + ], + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful. Valid values: true and false.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'NULL', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Instance.NotFound', + 'errorMessage' => 'The instance is not found.', + ], + [ + 'errorCode' => 'DesktopInstance.NotFound', + 'errorMessage' => 'The cloud computer instance does not exist.', + ], + [ + 'errorCode' => 'Instance.ImageUnsupported', + 'errorMessage' => 'A non-centralized image does not support this type of operation.', + ], + [ + 'errorCode' => 'Instance.PhysicalNodeNotExist', + 'errorMessage' => 'The instance physical node does not exist.', + ], + [ + 'errorCode' => 'ImageCreateByInstance.TaskExist', + 'errorMessage' => 'The image task of instance creation already exists.', + ], + [ + 'errorCode' => 'ExceedBuilderQuota', + 'errorMessage' => 'The maximum number of builders is reached.', + ], + [ + 'errorCode' => 'InvalidBaseImage.NotConfigured', + 'errorMessage' => 'Configuration required for Vhd/Container images.', + ], + [ + 'errorCode' => 'CreateDesktopImageRecord.Failed', + 'errorMessage' => 'Create cloud computer image failed.', + ], + [ + 'errorCode' => 'Image.NotExist', + 'errorMessage' => 'The image does not exist.', + ], + [ + 'errorCode' => 'ImageRegionDistribute.NotAllow', + 'errorMessage' => 'This image cannot be distributed.', + ], + [ + 'errorCode' => 'ImageUpdateFailed.NotAllow', + 'errorMessage' => 'The image is not allowed to be modified.', + ], + [ + 'errorCode' => 'ImageUpdateSharedImageFailed.NotAllow', + 'errorMessage' => 'The shared image is not allowed to be modified.', + ], + [ + 'errorCode' => 'ParentImageRegionDistribute.NotExist', + 'errorMessage' => 'The target distribution region of the parent image does not exist.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"ImageId\\": \\"imgc-07hnjj5fp****\\",\\n \\"VersionId\\": \\"iv-0abxi0lbi*****\\",\\n \\"TaskId\\": \\"tid-0abxi0lbih******\\"\\n },\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"NULL\\",\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'CreateImageByInstance', + ], + 'StartTaskForDistributeImage' => [ + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'abilityTreeCode' => '219723', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingSH8DGI', + ], + ], + 'parameters' => [ + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像id', + 'description' => 'The image ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'imgc-07jyldnd9i*****', + ], + ], + [ + 'name' => 'VersionId', + 'in' => 'formData', + 'schema' => [ + 'title' => '版本id', + 'description' => 'The ID of the image version. If you do not specify this parameter, the latest image version is used by default.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'iv-07jyldnd9i****', + ], + ], + [ + 'name' => 'RetryType', + 'in' => 'formData', + 'schema' => [ + 'title' => 'RESET/CONTINUE', + 'description' => 'This parameter is not publicly available.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'RETRY', + ], + ], + [ + 'name' => 'DestinationRegionList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The regions to which you want to replicate the image.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudDesktop: Elastic Desktop Service'."\n" + .'* CloudApp: App Streaming'."\n" + .'* WuyingServer: Workstation'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CloudDesktop' => '', + 'CloudApp' => '', + 'WuyingServer' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'SourceRegion', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The region where the source image is located. If you leave this parameter empty, a random region is selected.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-shanghai', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResult<String>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The ID of the image replication task.'."\n", + 'type' => 'string', + 'example' => 'tid-06xnr5lyp77e7****', + ], + 'Success' => [ + 'description' => 'Indicates whether the task is successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The error code if an error occurred.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message if an error occurred.'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'RequestId' => [ + 'description' => 'The ID of the request.'."\n", + 'type' => 'string', + 'example' => '419F31B9-1FDF-5644-ABA3-D00026FA****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Instance.NotFound', + 'errorMessage' => 'The instance is not found.', + ], + [ + 'errorCode' => 'DesktopInstance.NotFound', + 'errorMessage' => 'The cloud computer instance does not exist.', + ], + [ + 'errorCode' => 'Instance.ImageUnsupported', + 'errorMessage' => 'A non-centralized image does not support this type of operation.', + ], + [ + 'errorCode' => 'Instance.PhysicalNodeNotExist', + 'errorMessage' => 'The instance physical node does not exist.', + ], + [ + 'errorCode' => 'ImageCreateByInstance.TaskExist', + 'errorMessage' => 'The image task of instance creation already exists.', + ], + [ + 'errorCode' => 'ExceedBuilderQuota', + 'errorMessage' => 'The maximum number of builders is reached.', + ], + [ + 'errorCode' => 'InvalidBaseImage.NotConfigured', + 'errorMessage' => 'Configuration required for Vhd/Container images.', + ], + [ + 'errorCode' => 'CreateDesktopImageRecord.Failed', + 'errorMessage' => 'Create cloud computer image failed.', + ], + [ + 'errorCode' => 'Image.NotExist', + 'errorMessage' => 'The image does not exist.', + ], + [ + 'errorCode' => 'ImageRegionDistribute.NotAllow', + 'errorMessage' => 'This image cannot be distributed.', + ], + [ + 'errorCode' => 'ImageUpdateFailed.NotAllow', + 'errorMessage' => 'The image is not allowed to be modified.', + ], + [ + 'errorCode' => 'ImageUpdateSharedImageFailed.NotAllow', + 'errorMessage' => 'The shared image is not allowed to be modified.', + ], + [ + 'errorCode' => 'ParentImageRegionDistribute.NotExist', + 'errorMessage' => 'The target distribution region of the parent image does not exist.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error.', + ], + [ + 'errorCode' => 'ImageDistribute.TargetDistributeRegionListEmpty', + 'errorMessage' => 'The target distribution region list is empty.', + ], + [ + 'errorCode' => 'ImageDistribute.ImageNotSupport', + 'errorMessage' => 'The image does not support region distribution.', + ], + [ + 'errorCode' => 'ImageDistribute.RepeatedDistribution', + 'errorMessage' => 'This image has been distributed to this region.', + ], + [ + 'errorCode' => 'ImageDistribute.Undistributed', + 'errorMessage' => 'The image has not been distributed to any region.', + ], + [ + 'errorCode' => 'ImageRegion.NotConfigured', + 'errorMessage' => 'The image does not have any region configuration.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": \\"tid-06xnr5lyp77e7****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"RequestId\\": \\"419F31B9-1FDF-5644-ABA3-D00026FA****\\"\\n}","type":"json"}]', + 'title' => 'StartTaskForDistributeImage', + 'summary' => 'Initiates a task to replicate an image to another region.', + ], + 'DeleteImage' => [ + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'abilityTreeCode' => '219749', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingSH8DGI', + ], + ], + 'parameters' => [ + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像名称', + 'description' => 'The ID of the RDS image.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'img-bp13mu****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResult<Boolean>', + 'description' => 'The returned data.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'Whether the deletion is successful.'."\n" + ."\n" + .'Enumerated values:'."\n" + ."\n" + .'* true:Deleted successfully.'."\n" + .'* false:Deletion failure.'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + 'Success' => [ + 'description' => 'Indicates whether the request was successful.'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'Status code:'."\n" + ."\n" + .'* `200`: Success.'."\n" + .'* `400`: An error occurred.'."\n", + 'type' => 'string', + 'example' => '200', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'successful', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'Internal error.', + ], + [ + 'errorCode' => 'Image.NotExist', + 'errorMessage' => 'The image does not exist.', + ], + [ + 'errorCode' => 'ImageDeleteFailed.NotAllow', + 'errorMessage' => 'The image is not allowed to be deleted.', + ], + [ + 'errorCode' => 'ImageDeleteFailed.NotAllowCommunityParent', + 'errorMessage' => 'The parent image of a community image is not allowed to be deleted.', + ], + [ + 'errorCode' => 'ImageDeleteFailed.NotAllowSharedImage', + 'errorMessage' => 'The shared image is not allowed to be deleted.', + ], + [ + 'errorCode' => 'ImageNotAllowDelete', + 'errorMessage' => 'The image cannot be deleted, because shared cloud computers already exist.', + ], + [ + 'errorCode' => 'InvalidImageOperation.ImageIsCreating', + 'errorMessage' => 'Failed to operation the image, it is creating.', + ], + [ + 'errorCode' => 'DeleteTemplate.Failed', + 'errorMessage' => 'Delete template failed.', + ], + [ + 'errorCode' => 'QueryTemplate.Failed', + 'errorMessage' => 'Query template failed.', + ], + [ + 'errorCode' => 'InvalidTemplate.NotFound', + 'errorMessage' => 'Template not found.', + ], + [ + 'errorCode' => 'ImageDeleteFailed.HasSharedImage', + 'errorMessage' => 'The shared image is not allowed to be deleted.', + ], + ], + 500 => [ + [ + 'errorCode' => 'ServiceUnavailable', + 'errorMessage' => 'Service unavailable. Please try again later.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": true,\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'DeleteImage', + 'summary' => 'Delete a custom RDS image', + 'description' => '* You can only delete custom images to which a user belongs.'."\n" + .'* If the product line is an image of the RDS cloud computer pool, RDS cloud application, and RDS workstation, make sure that no RDS instances use the image before you delete it.'."\n" + .'* The RDS CloudDesktop template references an image. When you delete an image, the template is also deleted.'."\n" + .'* If the image contains multiple regions, the images in all regions are deleted when the image is deleted.'."\n", + ], + 'CreateAppInstanceGroup' => [ + 'summary' => 'Creates a delivery group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeCode' => '134193', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'AppCenterImageId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The image ID of the application. To obtain the image ID, log on to the [App Streaming console](https://appstreaming.console.aliyun.com/). In the left-side navigation pane, choose **Maintenance** > **Custom Images** or Maintenance > **System Images**.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'img-8z4nztpaqvay4****', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the delivery group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'Users', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The users that you want to add to the assigned user list of the delivery group.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '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.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Users.1=username1'."\n" + .'Users.2=username2', + ], + 'required' => false, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'UserInfo', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '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`.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The account type of the user.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Simple: convenience account'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Simple' => '', + ], + 'example' => 'Simple', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'ChargeType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The billing method.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PostPaid: pay-as-you-go'."\n" + .'* PrePaid: subscription'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'PostPaid' => '', + 'PrePaid' => '', + ], + 'example' => 'PrePaid', + ], + ], + [ + 'name' => 'PromotionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The promotion ID. You can call the [GetResourcePrice](~~428503~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '17440009****', + ], + ], + [ + 'name' => 'AutoPay', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to enable automatic payment.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false: manual payment. This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + ], + [ + 'name' => 'AutoRenew', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to enable auto-renewal.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false: manual payment. This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + ], + [ + 'name' => 'Period', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The subscription duration of resources. This parameter is required if you set `ChargeType` to `PrePaid`. The unit of this parameter is specified by `PeriodUnit`.'."\n" + ."\n" + .'* Valid value if you set `PeriodUnit` to `Week`:'."\n" + ."\n" + .' * 1'."\n" + ."\n" + .'* Valid values if you set `PeriodUnit` to `Month`:'."\n" + ."\n" + .' * 1'."\n" + .' * 2'."\n" + .' * 3'."\n" + .' * 6'."\n" + ."\n" + .'* Valid values if you set `PeriodUnit` to `Year`:'."\n" + ."\n" + .' * 1'."\n" + .' * 2'."\n" + .' * 3'."\n" + ."\n" + .'> If you set `ChargeType` to `PostPaid`, set this parameter to 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The unit of the subscription duration. This parameter is available if you set `ChargeType` to `PrePaid`.'."\n" + ."\n" + .'> 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.'."\n" + ."\n" + .'> If you set `ChargeType` to `PostPaid`, set this parameter to `Month`.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Month'."\n" + .'* Year'."\n" + .'* Week'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Month' => '', + 'Year' => '', + 'Week' => '', + ], + 'example' => 'Week', + ], + ], + [ + 'name' => 'SessionTimeout', + 'in' => 'formData', + 'schema' => [ + 'description' => '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.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '300', + 'example' => '15', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the region where the delivery group resides. For information about the supported regions, see [Limits](~~426036~~).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cn-shanghai: China (Shanghai)'."\n" + .'* cn-hangzhou: China (Hangzhou)'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'cn-shanghai' => '', + 'cn-hangzhou' => '', + ], + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'ChargeResourceMode', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The sales mode.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Node: by resource'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Node' => '', + ], + 'example' => 'Node', + ], + ], + [ + 'name' => 'NodePool', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The node pool object.'."\n", + 'type' => 'object', + 'properties' => [ + 'NodeInstanceType' => [ + 'description' => 'The ID of the resource type that you want to purchase. You can call the [ListNodeInstanceType](~~428502~~) operation to obtain the ID.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* appstreaming.vgpu.8c16g.4g: WUYING - Graphics\\_8 vCPUs, 16 GiB Memory, 4 GiB GPU Memory'."\n" + .'* appstreaming.general.8c16g: WUYING - General\\_8 vCPUs, 16 GiB Memory'."\n" + .'* appstreaming.general.4c8g: WUYING - General\\_4 vCPUs, 8 GiB Memory'."\n" + .'* appstreaming.vgpu.14c93g.12g: WUYING - Graphics\\_14 vCPUs, 93 GiB Memory, 12 GiB GPU Memory.'."\n" + .'* appstreaming.vgpu.8c31g.16g: WUYING - Graphics\\_8 vCPUs, 31 GiB Memory, 16 GiB GPU Memory'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'appstreaming.vgpu.8c16g.4g' => '', + 'appstreaming.general.8c16g' => '', + 'appstreaming.general.4c8g' => '', + 'appstreaming.vgpu.14c93g.12g' => '', + 'appstreaming.vgpu.8c31g.16g' => '', + ], + 'example' => 'appstreaming.general.4c8g', + ], + 'NodeAmount' => [ + 'description' => 'The number of resources that you want to purchase. Valid values: 1 to 100.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* This parameter is required if the resources are subscription resources.'."\n" + ."\n" + .'* 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`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'NodeCapacity' => [ + 'description' => '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:'."\n" + ."\n" + .'* appstreaming.general.4c8g: 1 to 2'."\n" + .'* appstreaming.general.8c16g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c16g.4g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c31g.16g: 1 to 4'."\n" + .'* appstreaming.vgpu.14c93g.12g: 1 to 6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + 'StrategyType' => [ + 'description' => 'The scaling policy of resources.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* `NODE_FIXED`: fixed number of resources. This value is applicable to pay-as-you-go resources and subscription resources.'."\n" + ."\n" + .'* `NODE_SCALING_BY_USAGE`: auto scaling. This value is applicable to pay-as-you-go resources and subscription resources.'."\n" + ."\n" + .'* `NODE_SCALING_BY_SCHEDULE`: scheduled scaling. This value is applicable only to pay-as-you-go resources.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* NODE_FIXED: fixed number of resources'."\n" + .'* NODE_SCALING_BY_SCHEDULE: scheduled scaling'."\n" + .'* NODE_SCALING_BY_USAGE: auto scaling'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'NODE_FIXED' => '', + 'NODE_SCALING_BY_SCHEDULE' => '', + 'NODE_SCALING_BY_USAGE' => '', + ], + 'example' => 'NODE_FIXED', + ], + 'MaxScalingAmount' => [ + 'description' => '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`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + 'MaxIdleAppInstanceAmount' => [ + 'description' => '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.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '3', + ], + 'ScalingStep' => [ + 'description' => '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`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + 'ScalingUsageThreshold' => [ + 'description' => '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.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '85', + ], + 'ScalingDownAfterIdleMinutes' => [ + 'description' => '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.'."\n" + ."\n" + .'* 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.'."\n" + .'* 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.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + 'StrategyEnableDate' => [ + 'description' => '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`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-08-01', + ], + 'StrategyDisableDate' => [ + 'description' => '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`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2022-09-08', + ], + 'WarmUp' => [ + 'description' => 'Specifies whether to enable the warmup policy for resources. This parameter is required if you set `StrategyType` to `NODE_SCALING_BY_SCHEDULE`.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + 'RecurrenceSchedules' => [ + 'description' => 'The schedules of the scaling policy. This parameter is required if you set `StrategyType` to `NODE_SCALING_BY_SCHEDULE`.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RecurrenceType' => [ + 'description' => 'The schedule type of the scaling policy. This parameter must be configured together with `RecurrenceValues`.``'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Weekly: The scaling policy is executed on specific days each week.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'weekly' => '', + ], + 'example' => 'weekly', + ], + 'RecurrenceValues' => [ + 'description' => 'The days of each week on which the scaling policy is executed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The day of each week on which the scaling policy is executed.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 1: Monday'."\n" + .'* 2: Tuesday'."\n" + .'* 3: Wednesday'."\n" + .'* 4: Thursday'."\n" + .'* 5: Friday'."\n" + .'* 6: Saturday'."\n" + .'* 7: Sunday'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + 1 => '', + '', + '', + '', + '', + '', + '', + ], + 'example' => '1', + ], + 'required' => false, + 'maxItems' => 7, + ], + 'TimerPeriods' => [ + 'description' => 'The time periods during which the scaling policy can be executed. The time periods must meet the following requirements:'."\n" + ."\n" + .'* Up to three time periods can be added.'."\n" + .'* Time periods cannot be overlapped.'."\n" + .'* The interval between two consecutive time periods must be greater than or equal to 5 minutes.'."\n" + .'* Each time period must be greater than or equal to 15 minutes.'."\n" + .'* The total length of the time periods that you specify cannot be greater than a day.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The start time of the time period. Format: HH:mm.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '12:00', + ], + 'EndTime' => [ + 'description' => 'The end time of the time period. Format: HH:mm.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '15:00', + ], + 'Amount' => [ + 'description' => 'The number of resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 7, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Network', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The network settings.'."\n" + ."\n" + .'> If you want to use this parameter, submit a ticket.'."\n", + 'type' => 'object', + 'properties' => [ + 'StrategyType' => [ + 'description' => 'The type of the network policy.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 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.'."\n" + .'* Shared: the shared mode. In this mode, a single NIC is provided for a device and the network is accessed by using NAT Gateway.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Mixed' => '', + 'Shared' => '', + ], + 'example' => 'Shared', + ], + 'Routes' => [ + 'description' => 'The route settings. This parameter is available only if you set `StrategyType` to `Mixed`.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Destination' => [ + 'description' => 'The destination. The value is a CIDR block.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '139.196.XX.XX/32', + ], + 'Mode' => [ + 'description' => 'The network egress mode.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Shared: accesses the network by using NAT Gateway.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Shared' => '', + ], + 'example' => 'Shared', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'IpExpireMinutes' => [ + 'description' => '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.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '60', + 'example' => '60', + ], + 'OfficeSiteId' => [ + 'description' => 'Office Network ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hongkong+dir-842567****', + ], + 'VSwitchIds' => [ + 'description' => 'List of virtual switch IDs.'."\n" + .'- Valid only for custom office networks.', + 'type' => 'array', + 'items' => [ + 'description' => 'Virtual Switch ID', + 'type' => 'string', + 'required' => false, + 'example' => 'vsw-m5ef1sjhf7bbvqvvy****', + ], + 'required' => false, + ], + 'DomainRules' => [ + 'description' => 'The domain name rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The domain name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com', + ], + 'Policy' => [ + 'description' => 'The policy used for the domain name.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* allow'."\n" + .'* block'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'allow' => '', + 'block' => '', + ], + 'example' => 'block', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'StoragePolicy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The storage policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'StorageTypeList' => [ + 'description' => 'The storage types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The storage type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* OFF'."\n" + .'* PDS: Photo and Drive Service'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'OFF' => '', + 'PDS' => '', + ], + 'example' => 'PDS', + ], + 'required' => false, + ], + 'UserProfile' => [ + 'description' => 'User data roaming configuration.', + 'type' => 'object', + 'properties' => [ + 'UserProfileSwitch' => [ + 'description' => 'User data roaming toggle.', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'false' => 'Disable', + 'true' => 'Enable', + ], + 'example' => 'false', + ], + 'RemoteStorageType' => [ + 'description' => 'Remote storage type used for user data roaming.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'NAS' => 'NAS', + ], + 'example' => 'NAS', + ], + 'RemoteStoragePath' => [ + 'description' => 'Remote storage path for user data roaming.'."\n" + ."\n" + .'- If left empty, the default value is the delivery group ID.'."\n" + .'- For cross-delivery-group (within the same VPC) user data roaming, the same value must be configured for all participating delivery groups.', + 'type' => 'string', + 'required' => false, + 'example' => 'ID20250101', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'PreOpenAppId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the pre-open application.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cag-b2ron*******', + ], + ], + [ + 'name' => 'VideoPolicy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'Display policy.', + 'type' => 'object', + 'properties' => [ + 'FrameRate' => [ + 'description' => 'Frame rate (FPS).', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + 30 => '30 FPS', + 60 => '60 FPS', + ], + 'example' => '60', + ], + 'TerminalResolutionAdaptive' => [ + 'description' => 'Whether to use adaptive resolution.'."\n" + ."\n" + .'- 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.'."\n" + ."\n" + .'- 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.', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'example' => 'false', + ], + 'SessionResolutionWidth' => [ + 'description' => 'Resolution width, in pixels.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1920', + ], + 'SessionResolutionHeight' => [ + 'description' => 'Resolution height, in pixels.', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1080', + ], + 'StreamingMode' => [ + 'description' => 'Streaming mode. Combined with the Webrtc parameter, it indicates the protocol type.'."\n" + ."\n" + .'- When Webrtc=true and StreamingMode=video, it indicates a WebRTC stream.'."\n" + .'- When Webrtc=false and StreamingMode=video, it indicates a video stream.'."\n" + .'- When Webrtc=false and StreamingMode=mix, it indicates a mixed stream.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'video' => 'Video stream', + 'mix' => 'Mixed stream', + ], + 'example' => 'video', + ], + 'Webrtc' => [ + 'description' => 'Whether to enable WebRTC. Combined with the StreamingMode parameter, it indicates the protocol type.'."\n" + ."\n" + .'- When Webrtc=true and StreamingMode=video, it indicates a WebRTC stream.'."\n" + .'- When Webrtc=false and StreamingMode=video, it indicates a video stream.'."\n" + .'- When Webrtc=false and StreamingMode=mix, it indicates a mixed stream.', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'example' => 'true', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'RuntimePolicy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The runtime policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'SessionType' => [ + 'description' => 'The session type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CONSOLE: console session'."\n" + .'* NORMAL: Remote Desktop Protocol (RDP)-based O\\&M session'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CONSOLE' => '', + 'NORMAL' => '', + ], + 'example' => 'NORMAL', + ], + 'DebugMode' => [ + 'description' => 'Specifies whether to enable the debugging mode. If you want to call the `GetDebugAppInstance` and `CreateImageFromAppInstanceGroup` operations, you must set this parameter to `ON`.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* OFF'."\n" + .'* ON'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'OFF' => '', + 'ON' => '', + ], + 'example' => 'OFF', + ], + 'SessionUserGenerationMode' => [ + 'description' => 'The generation mode of the session users. Valid value:'."\n" + .'- wyid. In this case, you must set sessionPreOpen to false.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'wyid' => 'wyid', + ], + 'example' => 'wyid', + ], + 'SessionPreOpen' => [ + 'description' => 'Session pre-launch toggle.'."\n" + ."\n" + .'- If not specified, the default value is true.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'Enable', + 'false' => 'Disable', + ], + 'example' => 'false', + ], + 'PerSessionPerApp' => [ + 'description' => 'Only one application is allowed to be opened within a single session.'."\n" + ."\n" + .'- When enabled, launching multiple applications from the delivery group will allocate a separate session for each application, resulting in higher session consumption.', + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'Enable', + 'false' => 'Disable', + ], + 'example' => 'false', + ], + 'PersistentAppInstanceScheduleMode' => [ + 'title' => '持久会话调度模式。'."\n" + .'DYNAMIC:动态调度 - 同一个持久会话可调度到不同节点上。'."\n" + .'FIX_NODE:固定节点调度 - 同一个持久会话只能调度到固定的节点上。', + 'description' => 'Persistent session scheduling mode.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + '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.', + ], + 'example' => 'DYNAMIC', + 'default' => 'DYNAMIC', + 'enum' => [ + 'DYNAMIC', + 'FIX_NODE', + ], + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'SecurityPolicy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The security policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'ResetAfterUnbind' => [ + 'description' => 'Specifies whether to reset after unbinding from a delivery group.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + 'SkipUserAuthCheck' => [ + 'description' => 'Specifies whether to skip user permission verification.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false: This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'UserDefinePolicy', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The custom policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'CustomConfig' => [ + 'description' => '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.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"target":"agent","config":{"abc":"xxx"}}]', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'AppPolicyId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Policy ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'pg-0clfzcy0adpcf****', + ], + ], + [ + 'name' => 'ClusterId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Cluster ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'cls-d39iq73l5c0a8****', + ], + ], + [ + 'name' => 'SubPayType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Payment method subtype.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'postPaid' => 'Postpaid [Pay-as-you-go]', + 'monthPackage' => 'Package plan [Cloud Browser only]', + 'prePaid' => 'Prepaid [Subscription - Monthly/Yearly]', + ], + 'example' => 'postPaid', + ], + ], + [ + 'name' => 'AppPackageType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Package type.', + 'type' => 'string', + 'required' => false, + 'example' => 'browser.package.5.250.appstreaming.general.basic', + ], + ], + [ + 'name' => 'AuthMode', + 'in' => 'formData', + 'schema' => [ + 'title' => '交付组授权模式。', + 'description' => 'The authentication mode of the delivery group.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'App' => 'Application authorization', + 'AppInstanceGroup' => 'Delivery group authorization', + 'Session' => 'Persistent session authorization', + ], + 'example' => 'App', + 'default' => 'App', + 'enum' => [ + 'App', + 'Session', + 'AppInstanceGroup', + ], + ], + ], + [ + 'name' => 'UserGroupIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '授权用户组ID列表。', + 'description' => 'List of authorized user group IDs.', + 'type' => 'array', + 'items' => [ + 'title' => '授权用户组ID。', + 'description' => 'Authorized user group ID.', + 'type' => 'string', + 'required' => false, + ], + 'required' => false, + 'maxItems' => 10, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'AppInstanceGroupModel' => [ + 'description' => 'The delivery group.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-9ciijz60n4xsv****', + ], + 'OrderId' => [ + 'description' => 'The order ID.'."\n", + 'type' => 'string', + 'example' => '12345****', + ], + 'NodePoolId' => [ + 'description' => 'The ID of the resource group. This parameter is returned if a resource group was created.'."\n", + 'type' => 'string', + 'example' => 'rg-ew7va2g1wl3vm****', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'StockError.NoStock', + 'errorMessage' => 'The selected specification is out of stock. Please try again later or select other specifications.', + ], + ], + 500 => [ + [ + 'errorCode' => 'StockError.InvalidResourceRequest', + 'errorMessage' => 'Your request cannot be processed currently due to an error. Please try again later.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"AppInstanceGroupModel\\": {\\n \\"AppInstanceGroupId\\": \\"aig-9ciijz60n4xsv****\\",\\n \\"OrderId\\": \\"12345****\\",\\n \\"NodePoolId\\": \\"rg-ew7va2g1wl3vm****\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateAppInstanceGroup', + 'description' => 'Before you call this operation, make sure that you fully understand the [billing methods and prices](~~426039~~) of App Streaming.'."\n" + ."\n" + .'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](~~426046~~).'."\n", + ], + 'GetAppInstanceGroup' => [ + 'summary' => 'Queries the details of a delivery group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '150264', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group. You can call the [listAppInstanceGroup](~~428506~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'AppInstanceGroupModels' => [ + 'title' => 'AppInstanceGroupModels', + 'description' => 'AppInstanceGroupModels'."\n", + 'type' => 'object', + 'properties' => [ + 'Apps' => [ + 'description' => 'The applications.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'example' => 'ca-i87mycyn419nu****', + ], + 'AppName' => [ + 'description' => 'The application name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AppVersion' => [ + 'description' => 'The application version.'."\n", + 'type' => 'string', + 'example' => '1.0.0', + ], + 'AppVersionName' => [ + 'description' => 'The name of the application version.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AppIcon' => [ + 'description' => 'The application icon.'."\n", + 'type' => 'string', + 'example' => 'https://app-center-icon-****.png', + ], + ], + ], + ], + 'AppCenterImageId' => [ + 'description' => 'The image ID of the application.'."\n", + 'type' => 'string', + 'example' => 'img-8z4nztpaqvay4****', + ], + 'RegionId' => [ + 'description' => 'The ID of the region where the delivery group resides. For information about the supported regions, see [Limits](~~426036~~).'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'ProductType' => [ + 'description' => 'The product type.'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'CloudApp', + ], + 'AppInstanceType' => [ + 'description' => 'The resource type of the delivery group.'."\n", + 'type' => 'string', + 'example' => '__dynamic__', + ], + 'AppInstanceTypeName' => [ + 'description' => 'The name of the resource type of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'test001', + ], + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-9ciijz60n4xsv****', + ], + 'Amount' => [ + 'description' => 'The number of subscription resources. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MinAmount' => [ + 'description' => 'The minimum number of instances. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MaxAmount' => [ + 'description' => 'The maximum number of instances. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'ReserveAmountRatio' => [ + 'description' => 'The percentage of reserved instances. The value indicates the percentage of unused sessions in the delivery group. Valid values: 0 to 99.'."\n", + 'type' => 'string', + 'example' => '20', + ], + 'ReserveMinAmount' => [ + 'description' => 'The minimum number of reserved instances. The value indicates the minimum number of unused sessions in the delivery group. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'ReserveMaxAmount' => [ + 'description' => 'The maximum number of reserved instances. The value indicates the maximum number of unused sessions in the delivery group. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'ScalingStep' => [ + 'description' => 'The number of sessions that are created each time the delivery group is scaled out. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'ScalingUsageThreshold' => [ + 'description' => 'The upper limit of session usage. If the session usage exceeds the specified upper limit, auto scaling is automatically triggered. The session usage rate is calculated by using the following formula: Session usage rate = Number of sessions in use/Total number of sessions × 100%. Valid values: 0 to 99.'."\n", + 'type' => 'string', + 'example' => '85', + ], + 'ScalingDownAfterIdleMinutes' => [ + 'description' => 'The duration for which no session is connected. Unit: minutes. If no session is connected in the resources after the specified duration elapses, automatic scale-in is triggered. Minimum value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'ChargeType' => [ + 'description' => 'The billing method.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PostPaid: pay-as-you-go'."\n" + .'* PrePaid: subscription'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PostPaid' => '', + 'PrePaid' => '', + ], + 'example' => 'PrePaid', + ], + 'ChargeResourceMode' => [ + 'description' => 'The sales mode.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AppInstance: by session'."\n" + .'* Node: by resource'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AppInstance' => '', + 'Node' => '', + ], + 'example' => 'Node', + ], + 'GmtCreate' => [ + 'description' => 'The time when the delivery group was created.'."\n", + 'type' => 'string', + 'example' => '2022-04-26T15:06:16.000+00:00', + ], + 'Status' => [ + 'description' => 'The status of the delivery group.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PUBLISHED: The delivery group is published.'."\n" + .'* FAILED: The delivery group failed to be published.'."\n" + .'* MAINTAIN_FAILED: The delivery group failed to be updated.'."\n" + .'* EXPIRED: The delivery group is expired.'."\n" + .'* MAINTAINING: The delivery group is being updated.'."\n" + .'* CEASED: The delivery group has overdue payments.'."\n" + .'* EXPIRED_RECYCLING: The delivery group is expired and being recycled.'."\n" + .'* DEPLOYING: The delivery group is being published.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PUBLISHED' => '', + 'FAILED' => '', + 'MAINTAIN_FAILED' => '', + 'EXPIRED' => '', + 'MAINTAINING' => '', + 'CEASED' => '', + 'EXPIRED_RECYCLING' => '', + 'DEPLOYING' => '', + ], + 'example' => 'PUBLISHED', + ], + 'NodePool' => [ + 'description' => 'The information about the resource group.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The resource group.'."\n", + 'type' => 'object', + 'properties' => [ + 'NodePoolId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-g6922kced36hx****', + ], + 'NodeInstanceType' => [ + 'description' => 'The ID of the resource type that you purchase.'."\n", + 'type' => 'string', + 'example' => 'appstreaming.vgpu.4c8g.2g', + ], + 'NodeAmount' => [ + 'description' => 'The total number of subscription resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NodeUsed' => [ + 'description' => 'The number of subscription resources that are in use.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NodeCapacity' => [ + 'description' => '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, 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:'."\n" + ."\n" + .'* appstreaming.general.4c8g: 1 to 2'."\n" + .'* appstreaming.general.8c16g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c16g.4g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c31g.16g: 1 to 4'."\n" + .'* appstreaming.vgpu.14c93g.12g: 1 to 6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'ScalingNodeAmount' => [ + 'description' => 'The total number of scalable resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'ScalingNodeUsed' => [ + 'description' => 'The number of scalable resources that are in use.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'StrategyType' => [ + 'description' => 'The type of the scaling policy.'."\n" + ."\n" + .'> `NODE_SCALING_BY_USAGE` is returned for this parameter only if ChargeType is set to `PrePaid`. `NODE_SCALING_BY_SCHEDULE` is returned for this parameter only if ChargeType is set to `PostPaid`.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* NODE_FIXED: No scalable resources are used.'."\n" + .'* NODE_SCALING_BY_SCHEDULE: Scheduled scaling is used.'."\n" + .'* NODE_SCALING_BY_USAGE: Resources are scaled based on usage.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'NODE_FIXED' => '', + 'NODE_SCALING_BY_SCHEDULE' => '', + 'NODE_SCALING_BY_USAGE' => '', + ], + 'example' => 'NODE_FIXED', + ], + 'Amount' => [ + 'description' => 'The number of resources purchased when the delivery group was created.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'MaxScalingAmount' => [ + 'description' => 'The maximum number of resources that can be created for scale-out.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'MaxIdleAppInstanceAmount' => [ + 'description' => '空闲会话数上限。指定该值时,当会话使用率超过`ScalingUsageThreshold`且当前交付组空闲会话数小于`MaxIdleAppInstanceAmount`时,才会触发自动扩容,否则认为交付组空闲会话已足够使用,不自动扩容。该参数可用于灵活控制弹性扩容行为和降低使用成本。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'ScalingStep' => [ + 'description' => 'The number of resources that are created each time resources are scaled out. Valid values: 1 to 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'ScalingUsageThreshold' => [ + 'description' => '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%`.'."\n", + 'type' => 'string', + 'example' => '85', + ], + 'ScalingDownAfterIdleMinutes' => [ + 'description' => 'The duration for which no session is connected. Unit: minutes. If no session is connected in the resources after the specified duration elapses, automatic scale-in is triggered. Default value: 5.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'RecurrenceSchedules' => [ + 'description' => 'The schedules of the scaling policy.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RecurrenceType' => [ + 'description' => 'The schedule type of the scaling policy. This parameter must be configured together with `RecurrenceValues`.``'."\n", + 'type' => 'string', + 'example' => 'Weekly', + ], + 'RecurrenceValues' => [ + 'description' => 'The days of each week on which the scaling policy is executed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The day of each week on which the scaling policy is executed.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + 'TimerPeriods' => [ + 'description' => 'The time periods during which the scaling policy can be executed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Amount' => [ + 'description' => 'The number of destination resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'EndTime' => [ + 'description' => 'The end time of the scaling policy. Format: HH:mm.'."\n", + 'type' => 'string', + 'example' => '11:00', + ], + 'StartTime' => [ + 'description' => 'The start time of the scaling policy. Format: HH:mm.'."\n", + 'type' => 'string', + 'example' => '09:30', + ], + ], + ], + ], + ], + ], + ], + 'StrategyDisableDate' => [ + 'description' => 'The expiration date of the scaling policy. Format: yyyy-MM-dd.'."\n", + 'type' => 'string', + 'example' => '2022-09-08', + ], + 'StrategyEnableDate' => [ + 'description' => 'The effective date of the scaling policy. Format: yyyy-MM-dd.'."\n", + 'type' => 'string', + 'example' => '2022-08-01', + ], + 'WarmUp' => [ + 'description' => 'Indicates whether the warmup policy is enabled for resources.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'NodeTypeName' => [ + 'description' => 'The name of the resource type.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + 'SpecId' => [ + 'description' => 'The specification ID that uniquely corresponds to the ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'spec-8o18t8uc31qib0****', + ], + 'SessionTimeout' => [ + 'description' => 'The duration for which sessions are retained after disconnection. Unit: minutes. After an end user disconnects from a session, the session is closed only after the specified duration elapses. If you want to permanently retain sessions, set this parameter to `-1`. Valid values:-1 and 3 to 300. Default value: `15`.'."\n", + 'type' => 'string', + 'example' => '15', + ], + 'AppInstanceGroupName' => [ + 'description' => 'The name of the delivery group.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'ExpiredTime' => [ + 'description' => 'The time when the delivery group expires.'."\n", + 'type' => 'string', + 'example' => '2022-04-27T16:00:00.000+00:00', + ], + 'OtaInfo' => [ + 'description' => 'The information about the over-the-air (OTA) update task.'."\n", + 'type' => 'object', + 'properties' => [ + 'OtaVersion' => [ + 'title' => '当前ota版本', + 'description' => 'The current OTA version.'."\n", + 'type' => 'string', + 'example' => '0.0.1-D-20220615.11****', + ], + 'NewOtaVersion' => [ + 'title' => '新ota版本,为空表示没有新版本', + 'description' => 'The new OTA version. A null value indicates that no new version is available.'."\n", + 'type' => 'string', + 'example' => '0.0.1-D-20220630.11****', + ], + 'TaskId' => [ + 'title' => '任务id', + 'description' => 'The ID of the OTA update task.'."\n", + 'type' => 'string', + 'example' => 'ota-e49929gv8acz5****', + ], + ], + ], + 'OsType' => [ + 'title' => '系统类型', + 'description' => 'The type of the operating system.'."\n", + 'type' => 'string', + 'example' => 'Windows', + 'enum' => [ + 'Windows', + 'Linux', + 'Android', + ], + ], + 'AppCenterImageName' => [ + 'description' => 'The image name of the application.'."\n", + 'type' => 'string', + 'example' => 'OfficeApps', + ], + 'ResourceStatus' => [ + 'description' => 'The resource status.'."\n", + 'type' => 'string', + 'example' => 'AVAILABLE', + ], + 'OfficeSiteId' => [ + 'description' => '办公网络ID。', + 'type' => 'string', + 'example' => 'cn-beijing+dir-172301****'."\n", + ], + 'AppPolicyId' => [ + 'description' => 'The policy ID of the application.'."\n", + 'type' => 'string', + 'example' => 'pg-g3k5wa2ms2****', + ], + 'SkipUserAuthCheck' => [ + 'description' => 'Indicates whether user permission verification is skipped.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false: This is the default value.'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + 'SessionType' => [ + 'description' => '会话类型。', + 'type' => 'string', + 'enumValueTitles' => [ + 'CONSOLE' => 'Console会话', + 'NORMAL' => 'RDP会话', + ], + 'example' => 'NORMAL', + ], + 'Tags' => [ + 'title' => '资源标签列表。', + 'description' => '资源标签列表。', + 'type' => 'array', + 'items' => [ + 'title' => '资源标签。', + 'description' => '资源标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'description' => '标签键。', + 'type' => 'string', + 'example' => 'department', + ], + 'Value' => [ + 'title' => '标签值。', + 'description' => '标签值。', + 'type' => 'string', + 'example' => 'design', + ], + 'Scope' => [ + 'title' => '标签类型。取值范围:'."\n" + .'Custom:自定义标签。'."\n" + .'System:系统标签。', + 'description' => '标签类型。', + 'type' => 'string', + 'enumValueTitles' => [ + 'Custom' => '自定义标签', + 'System' => '系统标签', + ], + 'example' => 'Custom', + ], + ], + ], + ], + 'AuthMode' => [ + 'title' => '授权模式。', + 'description' => '授权模式。', + 'type' => 'string', + 'enumValueTitles' => [ + 'App' => '应用授权', + 'AppInstanceGroup' => '交付组授权', + 'Session' => '会话授权', + ], + 'example' => 'App', + 'default' => 'App', + 'enum' => [ + 'App', + 'Session', + 'AppInstanceGroup', + ], + ], + 'AccessType' => [ + 'title' => '接入类型。', + 'description' => '接入类型。', + 'type' => 'string', + 'enumValueTitles' => [ + 'INTERNET' => '互联网', + 'VPC' => '企业专网(VPC)', + 'ANY' => '互联网和企业专网(VPC)', + ], + 'example' => 'INTERNET', + 'default' => 'INTERNET', + 'enum' => [ + 'INTERNET', + 'VPC', + 'ANY', + ], + ], + 'SupportUserGroupMixedAuth' => [ + 'title' => '是否支持用户和用户组混合授权。', + 'type' => 'boolean', + 'default' => 'true', + ], + 'UserGroupAuthMode' => [ + 'title' => '用户和用户组授权模式。', + 'type' => 'string', + 'example' => 'Mixed', + 'default' => 'Mixed', + 'enum' => [ + 'Mixed', + 'User', + 'UserGroup', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"AppInstanceGroupModels\\": {\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"ca-i87mycyn419nu****\\",\\n \\"AppName\\": \\"办公应用\\",\\n \\"AppVersion\\": \\"1.0.0\\",\\n \\"AppVersionName\\": \\"初始版本\\",\\n \\"AppIcon\\": \\"https://app-center-icon-****.png\\"\\n }\\n ],\\n \\"AppCenterImageId\\": \\"img-8z4nztpaqvay4****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ProductType\\": \\"CloudApp\\",\\n \\"AppInstanceType\\": \\"__dynamic__\\",\\n \\"AppInstanceTypeName\\": \\"test001\\",\\n \\"AppInstanceGroupId\\": \\"aig-9ciijz60n4xsv****\\",\\n \\"Amount\\": 1,\\n \\"MinAmount\\": 1,\\n \\"MaxAmount\\": 10,\\n \\"ReserveAmountRatio\\": \\"20\\",\\n \\"ReserveMinAmount\\": 1,\\n \\"ReserveMaxAmount\\": 5,\\n \\"ScalingStep\\": 10,\\n \\"ScalingUsageThreshold\\": \\"85\\",\\n \\"ScalingDownAfterIdleMinutes\\": 5,\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"ChargeResourceMode\\": \\"Node\\",\\n \\"GmtCreate\\": \\"2022-04-26T15:06:16.000+00:00\\",\\n \\"Status\\": \\"PUBLISHED\\",\\n \\"NodePool\\": [\\n {\\n \\"NodePoolId\\": \\"rg-g6922kced36hx****\\",\\n \\"NodeInstanceType\\": \\"appstreaming.vgpu.4c8g.2g\\",\\n \\"NodeAmount\\": 1,\\n \\"NodeUsed\\": 1,\\n \\"NodeCapacity\\": 2,\\n \\"ScalingNodeAmount\\": 8,\\n \\"ScalingNodeUsed\\": 4,\\n \\"StrategyType\\": \\"NODE_FIXED\\",\\n \\"Amount\\": 2,\\n \\"MaxScalingAmount\\": 8,\\n \\"MaxIdleAppInstanceAmount\\": 3,\\n \\"ScalingStep\\": 2,\\n \\"ScalingUsageThreshold\\": \\"85\\",\\n \\"ScalingDownAfterIdleMinutes\\": 5,\\n \\"RecurrenceSchedules\\": [\\n {\\n \\"RecurrenceType\\": \\"Weekly\\",\\n \\"RecurrenceValues\\": [\\n 1\\n ],\\n \\"TimerPeriods\\": [\\n {\\n \\"Amount\\": 5,\\n \\"EndTime\\": \\"11:00\\",\\n \\"StartTime\\": \\"09:30\\"\\n }\\n ]\\n }\\n ],\\n \\"StrategyDisableDate\\": \\"2022-09-08\\",\\n \\"StrategyEnableDate\\": \\"2022-08-01\\",\\n \\"WarmUp\\": false,\\n \\"NodeTypeName\\": \\"无影-通用型_4核8G\\"\\n }\\n ],\\n \\"SpecId\\": \\"spec-8o18t8uc31qib0****\\",\\n \\"SessionTimeout\\": \\"15\\",\\n \\"AppInstanceGroupName\\": \\"办公应用\\",\\n \\"ExpiredTime\\": \\"2022-04-27T16:00:00.000+00:00\\",\\n \\"OtaInfo\\": {\\n \\"OtaVersion\\": \\"0.0.1-D-20220615.11****\\",\\n \\"NewOtaVersion\\": \\"0.0.1-D-20220630.11****\\",\\n \\"TaskId\\": \\"ota-e49929gv8acz5****\\"\\n },\\n \\"OsType\\": \\"Windows\\",\\n \\"AppCenterImageName\\": \\"OfficeApps\\",\\n \\"ResourceStatus\\": \\"AVAILABLE\\",\\n \\"OfficeSiteId\\": \\"cn-beijing+dir-172301****\\\\n\\",\\n \\"AppPolicyId\\": \\"pg-g3k5wa2ms2****\\",\\n \\"SkipUserAuthCheck\\": false,\\n \\"SessionType\\": \\"NORMAL\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"department\\",\\n \\"Value\\": \\"design\\",\\n \\"Scope\\": \\"Custom\\"\\n }\\n ],\\n \\"AuthMode\\": \\"App\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"SupportUserGroupMixedAuth\\": true,\\n \\"UserGroupAuthMode\\": \\"Mixed\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetAppInstanceGroup', + ], + 'ListAppInstanceGroup' => [ + 'summary' => 'Queries the details of multiple delivery groups that meet the query conditions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '134196', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value cannot be greater than `100`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '10', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Status', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The status of the delivery groups.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The status of the delivery group.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PUBLISHED: The delivery group is published.'."\n" + .'* FAILED: The delivery group failed to be published.'."\n" + .'* MAINTAIN_FAILED: The delivery group failed to be updated.'."\n" + .'* EXPIRED: The delivery group is expired.'."\n" + .'* MAINTAINING: The delivery group is being updated.'."\n" + .'* CEASED: The delivery group has overdue payments.'."\n" + .'* EXPIRED_RECYCLING: The delivery group is expired and being recycled.'."\n" + .'* DEPLOYING: The delivery group is being published.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'PUBLISHED' => '', + 'FAILED' => '', + 'MAINTAIN_FAILED' => '', + 'EXPIRED' => '', + 'MAINTAINING' => '', + 'CEASED' => '', + 'EXPIRED_RECYCLING' => '', + 'DEPLOYING' => '', + ], + 'example' => '"Status.1":"PUBLISHED","Status.2":"FAILED"', + ], + 'required' => false, + 'maxItems' => 1000, + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the delivery groups to query. Fuzzy match is used for queries. For example, if you set this parameter to `Office App`, all delivery groups whose names contain `Office App` are queried, such as `My Office Apps` and `Office App A`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'AppCenterImageId', + 'in' => 'query', + 'schema' => [ + 'title' => '应用中心镜像ID', + 'description' => 'The image ID of the app. You can obtain the ID from the Images page in the App Streaming console.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'img-8z4nztpaqvay4****', + ], + ], + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'title' => '地域ID', + 'description' => 'The region ID'."\n", + 'type' => 'string', + 'deprecated' => true, + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region where the delivery group resides. For information about the supported regions, see [Limits](~~426036~~).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cn-shanghai: China (Shanghai)'."\n" + .'* cn-hangzhou: China (Hangzhou)'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'cn-shanghai' => '', + 'cn-hangzhou' => '', + ], + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'NodeInstanceType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the resource specification that you purchase. You can call the [ListNodeInstanceType](~~ListNodeInstanceType~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'appstreaming.vgpu.4c8g.2g', + ], + ], + [ + 'name' => 'OfficeSiteId', + 'in' => 'query', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hongkong+dir-643067****', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'flat', + 'schema' => [ + 'title' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'title' => '标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'type' => 'string', + ], + 'Value' => [ + 'title' => '标签值。', + 'type' => 'string', + ], + ], + ], + 'maxItems' => 20, + 'minItems' => 0, + ], + ], + [ + 'name' => 'UserGroupIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '授权用户组ID列表。', + 'type' => 'array', + 'items' => [ + 'title' => '授权用户组ID。', + 'type' => 'string', + ], + 'maxItems' => 10, + ], + ], + [ + 'name' => 'ExcludedUserGroupIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '排除授权用户组ID列表。', + 'type' => 'array', + 'items' => [ + 'title' => '排除授权用户组ID。', + 'type' => 'string', + ], + 'maxItems' => 10, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'AppInstanceGroupModels' => [ + 'title' => 'AppInstanceGroupModels', + 'description' => 'The delivery groups.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The delivery group.'."\n", + 'type' => 'object', + 'properties' => [ + 'Apps' => [ + 'description' => 'The apps.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The app.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'description' => 'The app ID.'."\n", + 'type' => 'string', + 'example' => 'ca-i87mycyn419nu****', + ], + 'AppName' => [ + 'description' => 'The app name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AppVersion' => [ + 'description' => 'The app version.'."\n", + 'type' => 'string', + 'example' => '1.0.0', + ], + 'AppVersionName' => [ + 'description' => 'The name of the app version.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AppIcon' => [ + 'description' => 'The app icon.'."\n", + 'type' => 'string', + 'example' => 'https://app-center-icon-****.png', + ], + ], + ], + ], + 'AppCenterImageId' => [ + 'description' => 'The image ID of the app.'."\n", + 'type' => 'string', + 'example' => 'img-8z4nztpaqvay4****', + ], + 'RegionId' => [ + 'description' => 'The ID of the region where the delivery group resides. For information about the supported regions, see [Limits](~~426036~~).'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'cn-hangzhou', + ], + 'ProductType' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + 'AppInstanceType' => [ + 'description' => 'The resource type of the delivery group.'."\n", + 'type' => 'string', + 'example' => '__dynamic__', + ], + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-9ciijz60n4xsv****', + ], + 'Amount' => [ + 'description' => 'The number of subscription resources. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MinAmount' => [ + 'description' => 'The minimum number of instances. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MaxAmount' => [ + 'description' => 'The maximum number of instances. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'ReserveAmountRatio' => [ + 'description' => 'The percentage of reserved instances. The value indicates the percentage of unused sessions in the delivery group. Valid values: 0 to 99.'."\n", + 'type' => 'string', + 'example' => '20', + ], + 'ReserveMinAmount' => [ + 'description' => 'The minimum number of reserved instances. The value indicates the minimum number of unused sessions in the delivery group. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'ReserveMaxAmount' => [ + 'description' => 'The maximum number of reserved instances. The value indicates the maximum number of unused sessions in the delivery group. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'ScalingStep' => [ + 'description' => 'The number of sessions that are created each time the delivery group is scaled out. Minimum value: 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'ScalingUsageThreshold' => [ + 'description' => 'The upper limit of session usage. If the session usage exceeds the specified upper limit, auto scale-out is triggered. The session usage rate is calculated by using the following formula: Session usage rate = Number of sessions in use/Total number of sessions × 100%. Valid values: 0 to 99.'."\n", + 'type' => 'string', + 'example' => '85', + ], + 'ScalingDownAfterIdleMinutes' => [ + 'description' => 'The duration for which no session is connected. Unit: minutes. If no session is connected in the resources after the specified duration elapses, auto scale-in is triggered. Minimum value: 0.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'ChargeType' => [ + 'description' => 'The billing method.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PostPaid: pay-as-you-go'."\n" + .'* PrePaid: subscription'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PostPaid' => '', + 'PrePaid' => '', + ], + 'example' => 'PrePaid', + ], + 'GmtCreate' => [ + 'description' => 'The time when the delivery group was created.'."\n", + 'type' => 'string', + 'example' => '2022-04-26T15:06:16.000+00:00', + ], + 'Status' => [ + 'description' => 'The status of the delivery group.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PUBLISHED: The delivery group is published.'."\n" + .'* FAILED: The delivery group failed to be published.'."\n" + .'* MAINTAIN_FAILED: The delivery group failed to be updated.'."\n" + .'* EXPIRED: The delivery group is expired.'."\n" + .'* MAINTAINING: The delivery group is being updated.'."\n" + .'* CEASED: The delivery group has overdue payments.'."\n" + .'* EXPIRED_RECYCLING: The delivery group is expired and being recycled.'."\n" + .'* DEPLOYING: The delivery group is being published.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PUBLISHED' => '', + 'FAILED' => '', + 'MAINTAIN_FAILED' => '', + 'EXPIRED' => '', + 'MAINTAINING' => '', + 'CEASED' => '', + 'EXPIRED_RECYCLING' => '', + 'DEPLOYING' => '', + ], + 'example' => 'PUBLISHED', + ], + 'NodePool' => [ + 'description' => 'The resource groups.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The resource group.'."\n", + 'type' => 'object', + 'properties' => [ + 'NodePoolId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'example' => 'rg-g6922kced36hx****', + ], + 'NodeInstanceType' => [ + 'description' => 'The ID of the resource specification that you purchase.'."\n", + 'type' => 'string', + 'enumValueTitles' => [], + 'example' => 'appstreaming.vgpu.4c8g.2g', + ], + 'NodeAmount' => [ + 'description' => 'The total number of subscription resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NodeUsed' => [ + 'description' => 'The number of subscription resources that are in use.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NodeCapacity' => [ + 'description' => 'The maximum number of sessions that can be connected to a resource at the same time. If a resource connects to a large number of sessions at the same time, user experience can be compromised. The value range varies based on the resource specification. The following items describe the value ranges of different resource types:'."\n" + ."\n" + .'* appstreaming.general.4c8g: 1 to 2'."\n" + .'* appstreaming.general.8c16g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c16g.4g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c31g.16g: 1 to 4'."\n" + .'* appstreaming.vgpu.14c93g.12g: 1 to 6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'ScalingNodeAmount' => [ + 'description' => 'The total number of scalable resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'ScalingNodeUsed' => [ + 'description' => 'The number of scalable resources that are in use.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'StrategyType' => [ + 'description' => 'The type of the scaling policy.'."\n" + ."\n" + .'> `NODE_SCALING_BY_USAGE` is returned for this parameter only if ChargeType is set to `PrePaid`. `NODE_SCALING_BY_SCHEDULE` is returned for this parameter only if ChargeType is set to `PostPaid`.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* NODE_FIXED: No scalable resources are used.'."\n" + .'* NODE_SCALING_BY_SCHEDULE: Scheduled scaling is used.'."\n" + .'* NODE_SCALING_BY_USAGE: Resources are scaled based on usage.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'NODE_FIXED' => '', + 'NODE_SCALING_BY_SCHEDULE' => '', + 'NODE_SCALING_BY_USAGE' => '', + ], + 'example' => 'NODE_FIXED', + ], + 'Amount' => [ + 'description' => 'The number of resources purchased when the delivery group was created.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'MaxScalingAmount' => [ + 'description' => 'The maximum number of resources that can be created for scale-out.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '8', + ], + 'MaxIdleAppInstanceAmount' => [ + 'description' => 'The maximum number of idle sessions. After you specify a value for this parameter, auto scale-out is triggered only if the number of idle sessions in the delivery group is smaller than the specified value and the session usage exceeds the value specified for `ScalingUsageThreshold`. Otherwise, the system determines that idle sessions in the delivery group are sufficient and does not perform auto scale-out.`` You can use this parameter to flexibly manage auto scaling and reduce costs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'ScalingStep' => [ + 'description' => 'The number of resources that are created each time resources are scaled out. Valid values: 1 to 10.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'ScalingUsageThreshold' => [ + 'description' => 'The upper limit of session usage. If the session usage exceeds the specified upper limit, auto scale-out is 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%`.'."\n", + 'type' => 'string', + 'example' => '85', + ], + 'ScalingDownAfterIdleMinutes' => [ + 'description' => 'The duration for which no session is connected. Unit: minutes. If no session is connected in the resources after the specified duration elapses, auto scale-in is triggered. Default value: 5.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'RecurrenceSchedules' => [ + 'description' => 'The intervals at which the scaling policy is executed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The interval at which the scaling policy is executed.'."\n", + 'type' => 'object', + 'properties' => [ + 'RecurrenceType' => [ + 'description' => 'The schedule type of the scaling policy. This parameter must be configured together with `RecurrenceValues`.``'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* weekly: The scaling policy is executed on specific days each week.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'weekly' => '', + ], + 'example' => 'Weekly', + ], + 'RecurrenceValues' => [ + 'description' => 'The days of each week on which the scaling policy is executed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The day of each week on which the scaling policy is executed.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 1: Monday'."\n" + .'* 2: Tuesday'."\n" + .'* 3: Wednesday'."\n" + .'* 4: Thursday'."\n" + .'* 5: Friday'."\n" + .'* 6: Saturday'."\n" + .'* 7: Sunday'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'enumValueTitles' => [ + 1 => '', + '', + '', + '', + '', + '', + '', + ], + 'example' => '1', + ], + ], + 'TimerPeriods' => [ + 'description' => 'The time periods during which the scaling policy can be executed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The time period during which the scaling policy can be executed.'."\n", + 'type' => 'object', + 'properties' => [ + 'Amount' => [ + 'description' => 'The number of destination resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'EndTime' => [ + 'description' => 'The time when the scaling policy ends. Format: HH:mm.'."\n", + 'type' => 'string', + 'example' => '11:00', + ], + 'StartTime' => [ + 'description' => 'The time when the scaling policy starts. Format: HH:mm.'."\n", + 'type' => 'string', + 'example' => '09:30', + ], + ], + ], + ], + ], + ], + ], + 'StrategyDisableDate' => [ + 'description' => 'The expiration date of the scaling policy. Format: yyyy-MM-dd.'."\n", + 'type' => 'string', + 'example' => '2022-09-08', + ], + 'StrategyEnableDate' => [ + 'description' => 'The effective date of the scaling policy. Format: yyyy-MM-dd.'."\n", + 'type' => 'string', + 'example' => '2022-08-01', + ], + 'WarmUp' => [ + 'description' => 'Indicates whether resource prefetch is enabled.'."\n", + 'type' => 'boolean', + 'example' => 'false', + ], + 'NodeTypeName' => [ + 'description' => 'The name of the resource specification.'."\n", + 'type' => 'string', + 'example' => '', + ], + ], + ], + ], + 'SpecId' => [ + 'description' => 'The specification ID that uniquely corresponds to the ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'spec-8o18t8uc31qib0****', + ], + 'SessionTimeout' => [ + 'description' => 'The duration for which sessions are retained after disconnection. Unit: minutes. After an end user disconnects from a session, the session is closed only after the specified duration elapses. If you want to permanently retain sessions, set this parameter to `-1`. Valid values:-1 and 3 to 300. Default value: `15`.'."\n", + 'type' => 'string', + 'example' => '15', + ], + 'AppInstanceGroupName' => [ + 'description' => 'The name of the delivery group.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'ExpiredTime' => [ + 'description' => 'The time when the delivery group expires.'."\n", + 'type' => 'string', + 'example' => '2022-04-27T16:00:00.000+00:00', + ], + 'OtaInfo' => [ + 'description' => 'The information about the over-the-air (OTA) update task.'."\n", + 'type' => 'object', + 'properties' => [ + 'OtaVersion' => [ + 'title' => '当前ota版本', + 'description' => 'The current OTA version.'."\n", + 'type' => 'string', + 'example' => '0.0.1-D-20220615.11****', + ], + 'NewOtaVersion' => [ + 'title' => '新ota版本,为空表示没有新版本', + 'description' => 'The new OTA version. A null value indicates that no new version is available.'."\n", + 'type' => 'string', + 'example' => '0.0.1-D-20220630.11****', + ], + 'TaskId' => [ + 'title' => '任务id', + 'description' => 'The ID of the OTA update task.'."\n", + 'type' => 'string', + 'example' => 'ota-e49929gv8acz5****', + ], + ], + ], + 'OsType' => [ + 'title' => '系统类型', + 'description' => 'The type of the operating system.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Windows'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Windows' => 'Windows', + ], + 'example' => 'Windows', + 'enum' => [ + 'Windows', + 'Linux', + 'Android', + ], + ], + 'ResourceStatus' => [ + 'description' => 'The resource status.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AVAILABLE'."\n" + .'* RELEASED'."\n" + .'* EXPIRED_IN\\_7\\_DAYS'."\n" + .'* UNAVAILABLE'."\n" + .'* UPGRADING'."\n" + .'* CREATING'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AVAILABLE' => '', + 'RELEASED' => '', + 'EXPIRED_IN_7_DAYS' => '', + 'UNAVAILABLE' => '', + 'UPGRADING' => '', + 'CREATING' => '', + ], + 'example' => 'AVAILABLE', + ], + 'AppPolicyId' => [ + 'description' => 'The policy ID.'."\n", + 'type' => 'string', + 'example' => 'pg-g3k5wa2ms2****', + ], + 'ChargeResourceMode' => [ + 'description' => 'The sales mode.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AppInstance: by session'."\n" + .'* Node: by resource'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AppInstance' => '', + 'Node' => '', + ], + 'example' => 'Node', + ], + 'SkipUserAuthCheck' => [ + 'description' => 'Indicates whether user permission verification is skipped.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false: This is the default value.'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + 'OfficeSiteId' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'cn-beijing+dir-172301****'."\n", + ], + 'AppPolicyVersion' => [ + 'description' => '', + 'type' => 'string', + 'enumValueTitles' => [ + 'CENTER' => '统一策略[新策略]', + 'DEFAULT' => '默认策略[旧策略]', + ], + 'example' => 'CENTER', + ], + 'AppPolicyImageCheck' => [ + 'description' => '', + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '支持', + 'false' => '不支持', + ], + 'example' => 'false', + ], + 'ResourceTags' => [ + 'title' => '资源标签列表。请使用Tags字段。', + 'description' => 'The resource tags.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '资源标签。', + 'description' => 'The resource tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'department', + ], + 'Value' => [ + 'title' => '标签值。', + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => 'design', + ], + 'Scope' => [ + 'title' => '标签类型。取值范围:'."\n" + .'Custom:自定义标签。'."\n" + .'System:系统标签。', + 'description' => 'The tag type. Valid values: Custom System'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Custom' => '自定义标签', + 'System' => '系统标签', + ], + 'example' => 'Custom', + ], + ], + ], + ], + 'Tags' => [ + 'title' => '资源标签列表。', + 'type' => 'array', + 'items' => [ + 'title' => '资源标签。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'type' => 'string', + ], + 'Value' => [ + 'title' => '标签值。', + 'type' => 'string', + ], + 'Scope' => [ + 'title' => '标签类型。取值范围:'."\n" + .'Custom:自定义标签。'."\n" + .'System:系统标签。', + 'type' => 'string', + ], + ], + ], + ], + 'AuthMode' => [ + 'title' => '授权模式。', + 'type' => 'string', + 'example' => 'App', + 'default' => 'App', + 'enum' => [ + 'App', + 'Session', + 'AppInstanceGroup', + ], + ], + 'AccessType' => [ + 'title' => '接入类型。', + 'type' => 'string', + 'example' => 'INTERNET', + 'default' => 'INTERNET', + 'enum' => [ + 'INTERNET', + 'VPC', + 'ANY', + ], + ], + 'SupportUserGroupMixedAuth' => [ + 'title' => '是否支持用户和用户组混合授权。', + 'type' => 'boolean', + 'default' => 'true', + ], + 'UserGroupAuthMode' => [ + 'title' => '用户和用户组授权模式。', + 'type' => 'string', + 'example' => 'Mixed', + 'default' => 'Mixed', + 'enum' => [ + 'Mixed', + 'User', + 'UserGroup', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TotalCount\\": 15,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"AppInstanceGroupModels\\": [\\n {\\n \\"Apps\\": [\\n {\\n \\"AppId\\": \\"ca-i87mycyn419nu****\\",\\n \\"AppName\\": \\"办公应用\\",\\n \\"AppVersion\\": \\"1.0.0\\",\\n \\"AppVersionName\\": \\"初始版本\\",\\n \\"AppIcon\\": \\"https://app-center-icon-****.png\\"\\n }\\n ],\\n \\"AppCenterImageId\\": \\"img-8z4nztpaqvay4****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ProductType\\": \\"CloudApp\\",\\n \\"AppInstanceType\\": \\"__dynamic__\\",\\n \\"AppInstanceGroupId\\": \\"aig-9ciijz60n4xsv****\\",\\n \\"Amount\\": 1,\\n \\"MinAmount\\": 1,\\n \\"MaxAmount\\": 10,\\n \\"ReserveAmountRatio\\": \\"20\\",\\n \\"ReserveMinAmount\\": 1,\\n \\"ReserveMaxAmount\\": 5,\\n \\"ScalingStep\\": 10,\\n \\"ScalingUsageThreshold\\": \\"85\\",\\n \\"ScalingDownAfterIdleMinutes\\": 5,\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"GmtCreate\\": \\"2022-04-26T15:06:16.000+00:00\\",\\n \\"Status\\": \\"PUBLISHED\\",\\n \\"NodePool\\": [\\n {\\n \\"NodePoolId\\": \\"rg-g6922kced36hx****\\",\\n \\"NodeInstanceType\\": \\"appstreaming.vgpu.4c8g.2g\\",\\n \\"NodeAmount\\": 1,\\n \\"NodeUsed\\": 1,\\n \\"NodeCapacity\\": 2,\\n \\"ScalingNodeAmount\\": 8,\\n \\"ScalingNodeUsed\\": 4,\\n \\"StrategyType\\": \\"NODE_FIXED\\",\\n \\"Amount\\": 2,\\n \\"MaxScalingAmount\\": 8,\\n \\"MaxIdleAppInstanceAmount\\": 3,\\n \\"ScalingStep\\": 2,\\n \\"ScalingUsageThreshold\\": \\"85\\",\\n \\"ScalingDownAfterIdleMinutes\\": 5,\\n \\"RecurrenceSchedules\\": [\\n {\\n \\"RecurrenceType\\": \\"Weekly\\",\\n \\"RecurrenceValues\\": [\\n 1\\n ],\\n \\"TimerPeriods\\": [\\n {\\n \\"Amount\\": 5,\\n \\"EndTime\\": \\"11:00\\",\\n \\"StartTime\\": \\"09:30\\"\\n }\\n ]\\n }\\n ],\\n \\"StrategyDisableDate\\": \\"2022-09-08\\",\\n \\"StrategyEnableDate\\": \\"2022-08-01\\",\\n \\"WarmUp\\": false,\\n \\"NodeTypeName\\": \\"无影-通用型_4核8G\\"\\n }\\n ],\\n \\"SpecId\\": \\"spec-8o18t8uc31qib0****\\",\\n \\"SessionTimeout\\": \\"15\\",\\n \\"AppInstanceGroupName\\": \\"办公应用\\",\\n \\"ExpiredTime\\": \\"2022-04-27T16:00:00.000+00:00\\",\\n \\"OtaInfo\\": {\\n \\"OtaVersion\\": \\"0.0.1-D-20220615.11****\\",\\n \\"NewOtaVersion\\": \\"0.0.1-D-20220630.11****\\",\\n \\"TaskId\\": \\"ota-e49929gv8acz5****\\"\\n },\\n \\"OsType\\": \\"Windows\\",\\n \\"ResourceStatus\\": \\"AVAILABLE\\",\\n \\"AppPolicyId\\": \\"pg-g3k5wa2ms2****\\",\\n \\"ChargeResourceMode\\": \\"Node\\",\\n \\"SkipUserAuthCheck\\": false,\\n \\"OfficeSiteId\\": \\"cn-beijing+dir-172301****\\\\n\\",\\n \\"AppPolicyVersion\\": \\"CENTER\\",\\n \\"AppPolicyImageCheck\\": false,\\n \\"ResourceTags\\": [\\n {\\n \\"Key\\": \\"department\\",\\n \\"Value\\": \\"design\\",\\n \\"Scope\\": \\"Custom\\"\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"department\\",\\n \\"Value\\": \\"design\\",\\n \\"Scope\\": \\"Custom\\"\\n }\\n ],\\n \\"AuthMode\\": \\"App\\",\\n \\"AccessType\\": \\"INTERNET\\",\\n \\"SupportUserGroupMixedAuth\\": true,\\n \\"UserGroupAuthMode\\": \\"Mixed\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListAppInstanceGroup', + ], + 'PageListAppInstanceGroupUser' => [ + 'summary' => 'Queries the assigned users that are added to a delivery group by page.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingV87T4P', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + 'maxItems' => 100, + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries to be return on each page. The value cannot be greater than `100`. We recommend that you configure this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of the page to return. We recommend that you configure this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Users' => [ + 'description' => 'The users.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The usernames.'."\n", + 'type' => 'string', + 'example' => 'username1', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Users\\": [\\n \\"username1\\"\\n ]\\n}","type":"json"}]', + 'title' => 'PageListAppInstanceGroupUser', + ], + 'RenewAppInstanceGroup' => [ + 'summary' => 'Renews a delivery group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingU1TTUH', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The promotion ID. You can call the [GetResourcePrice](~~428503~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '17440009****', + ], + ], + [ + 'name' => 'AutoPay', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable automatic payment.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false: manual payment. This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => [ + 'description' => 'The subscription duration of resources. This parameter must be configured together with `PeriodUnit`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unit of the subscription duration. This parameter must be configured together with `Period`. The following items describe valid values for the combinations of `Period` and `PeriodUnit`:'."\n" + ."\n" + .'* 1 Week'."\n" + .'* 1 Month'."\n" + .'* 2 Month'."\n" + .'* 3 Month'."\n" + .'* 6 Month'."\n" + .'* 1 Year'."\n" + .'* 2 Year'."\n" + .'* 3 Year'."\n" + ."\n" + .'> The value of this parameter is case-insensitive. For example, `Week` is valid and `week` is invalid. If you specify a value combination other than the preceding combinations, such as `2 Week`, the operation can still be called. However, an error occurs when you place the order.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Month' => '', + 'Year' => '', + 'Week' => '', + ], + 'example' => 'Week', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'RenewMode', + 'in' => 'query', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'RenewAmount', + 'in' => 'query', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + [ + 'name' => 'RenewNodes', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + ], + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ProductType', + ], + 'OrderId' => [ + 'description' => 'The order ID.'."\n", + 'type' => 'string', + 'example' => '123456****', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'The parameter ProductType is invalid.', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Code\\": \\"InvalidParameter.ProductType\\",\\n \\"OrderId\\": \\"123456****\\",\\n \\"Message\\": \\"The parameter ProductType is invalid.\\"\\n}","type":"json"}]', + 'title' => 'RenewAppInstanceGroup', + 'description' => 'Before you call this operation, make sure that you fully understand the [billing methods and prices](~~426039~~) of App Streaming.'."\n", + ], + 'UpdateAppInstanceGroupImage' => [ + 'summary' => 'Updates the image of a delivery group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'AppCenterImageId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The image ID of the application. You can obtain the ID from the Images page in the App Streaming console.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'img-8z4nztpaqvay4****', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the region where the delivery group resides. For information about the supported regions, see [Limits](~~426036~~).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cn-shanghai: China (Shanghai).'."\n" + .'* cn-hangzhou: China (Hangzhou)', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'cn-shanghai' => '', + 'cn-hangzhou' => '', + ], + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ProductType', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'The parameter ProductType is invalid.', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Code\\": \\"InvalidParameter.ProductType\\",\\n \\"Message\\": \\"The parameter ProductType is invalid.\\"\\n}","type":"json"}]', + 'title' => 'UpdateAppInstanceGroupImage', + 'description' => '**'."\n" + ."\n" + .'**Warning** After the image is updated, the end user session accessing the cloud application will be disconnected. Exercise caution to avoid end user data loss.'."\n" + ."\n" + .'> After the image of the delivery group is updated, the change takes effect on the terminal in approximately 2 minutes.'."\n", + ], + 'ModifyAppInstanceGroupAttribute' => [ + 'summary' => 'Modifies the general policies of a delivery group, including the number of concurrent sessions and the retention period of disconnected sessions.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'abilityTreeCode' => '134213', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'AppInstanceGroupName', + 'in' => 'query', + 'schema' => [ + 'description' => 'The name of the delivery group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + [ + 'name' => 'SessionTimeout', + 'in' => 'query', + 'schema' => [ + 'description' => 'The duration for which sessions are retained after disconnection. Unit: minutes. After an end user disconnects from a session, the session is closed only after the specified duration elapses. If you want to permanently retain sessions, set this parameter to `-1`. Valid values:-1 and 3 to 300. Default value: `15`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '300', + 'example' => '15', + ], + ], + [ + 'name' => 'NodePool', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The information about the resource group.'."\n", + 'type' => 'object', + 'properties' => [ + 'NodePoolId' => [ + 'description' => 'The ID of the resource group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-ew7va2g1wl3vm****', + ], + 'NodeCapacity' => [ + 'description' => '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, 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:'."\n" + ."\n" + .'* appstreaming.general.4c8g: 1 to 2'."\n" + .'* appstreaming.general.8c16g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c16g.4g: 1 to 4'."\n" + .'* appstreaming.vgpu.8c31g.16g: 1 to 4'."\n" + .'* appstreaming.vgpu.14c93g.12g: 1 to 6'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'StoragePolicy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The storage policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'StorageTypeList' => [ + 'description' => 'The storage types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The storage type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* OFF: disabled'."\n" + .'* PDS: Photo and Drive Service'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'OFF' => '', + 'PDS' => '', + ], + 'example' => 'PDS', + ], + 'required' => false, + ], + 'UserProfileFollow' => [ + 'type' => 'object', + 'properties' => [ + 'ProfileFollowSwitch' => [ + 'type' => 'boolean', + 'required' => false, + ], + 'FileSystemId' => [ + 'type' => 'string', + 'required' => false, + ], + ], + 'required' => false, + ], + 'UserProfile' => [ + 'description' => 'The configurations of user data roaming.'."\n", + 'type' => 'object', + 'properties' => [ + 'UserProfileSwitch' => [ + 'description' => 'Specifies whether user data roaming is enabled.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + 'FileSystemId' => [ + 'description' => 'The ID of the File Storage NAS (NAS) file system used to store user data.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '06ae94****', + ], + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'SecurityPolicy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The security policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'SkipUserAuthCheck' => [ + 'description' => 'Specifies whether to skip user permission verification.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false: This is the default value.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + 'ResetAfterUnbind' => [ + 'description' => 'Specifies whether to reset after unbinding from a delivery group.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'PreOpenMode', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The pre-open mode.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* SINGLE_APP: enables the pre-open mode for a single application.'."\n" + .'* OFF: disables the pre-open mode. This is the default value.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'SINGLE_APP' => '', + 'OFF' => '', + ], + 'example' => 'OFF', + ], + ], + [ + 'name' => 'PreOpenAppId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The application ID of the pre-open application. If you set `PreOpenMode` to `SINGLE_APP`, you cannot leave this parameter empty.``'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ca-b2ronxxd****'."\n", + ], + ], + [ + 'name' => 'PerSessionPerApp', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether only one application can be opened in a session.'."\n" + ."\n" + .'* After you enable this feature, the system assigns a session to each application if you open multiple applications in a delivery group. This consumes a larger number of sessions.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'false', + ], + ], + [ + 'name' => 'Network', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The network settings.'."\n" + ."\n" + .'> If you want to use this parameter, submit a ticket.'."\n", + 'type' => 'object', + 'properties' => [ + 'DomainRules' => [ + 'description' => 'The domain name rules.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => 'The domain name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com', + ], + 'Policy' => [ + 'description' => 'The policy used for the domain name.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* allow'."\n" + .'* block'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'allow' => '', + 'block' => '', + ], + 'example' => 'block', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ProductType', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'The parameter ProductType is invalid.', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Code\\": \\"InvalidParameter.ProductType\\",\\n \\"Message\\": \\"The parameter ProductType is invalid.\\"\\n}","type":"json"}]', + 'title' => 'ModifyAppInstanceGroupAttribute', + ], + 'ModifyNodePoolAttribute' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'title' => '产品类型', + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'PoolId', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源组id', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-ew7va2g1wl3vm****', + ], + ], + [ + 'name' => 'NodeCapacity', + 'in' => 'formData', + 'schema' => [ + 'title' => '按资源售卖的,单个节点允许运行的应用实例数', + 'description' => '', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + ], + [ + 'name' => 'NodePoolStrategy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'title' => '节点池策略', + 'description' => 'The auto scaling policy used by the delivery group.'."\n", + 'type' => 'object', + 'properties' => [ + 'StrategyType' => [ + 'title' => '策略类型,默认为NODE_FIXED', + 'description' => 'The scaling mode.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* `NODE_FIXED`: no scaling. This value is applicable to pay-as-you-go resources and subscription resources.'."\n" + .'* `NODE_SCALING_BY_USAGE`: auto scaling. This value is applicable to pay-as-you-go resources and subscription resources.'."\n" + .'* `NODE_SCALING_BY_SCHEDULE`: scheduled scaling. This value is applicable only to pay-as-you-go resources.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* NODE_FIXED: no scaling'."\n" + .'* NODE_SCALING_BY_SCHEDULE: scheduled scaling'."\n" + .'* NODE_SCALING_BY_USAGE: auto scaling'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'NODE_FIXED' => '', + 'NODE_SCALING_BY_SCHEDULE' => '', + 'NODE_SCALING_BY_USAGE' => '', + ], + 'example' => 'NODE_FIXED', + ], + 'NodeAmount' => [ + 'description' => 'The number of resources to purchase. Valid values: 1 to 100.'."\n" + ."\n" + .'> '."\n" + ."\n" + .'* If you use subscription resources, you cannot modify this parameter.'."\n" + .'* If you use pay-as-you-go resources, you can modify this parameter only if you set `StrategyType` to `NODE_FIXED` or `NODE_SCALING_BY_USAGE`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + 'MaxScalingAmount' => [ + 'title' => '最大弹性数量', + 'description' => 'The maximum number of resources that can be created for scale-out. This parameter is required only if you set `StrategyType` to `NODE_SCALING_BY_USAGE`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + ], + 'MaxIdleAppInstanceAmount' => [ + 'description' => 'The maximum number of idle sessions. After you specify a value for this parameter, auto scaling is triggered only if the number of idle sessions in the delivery group is smaller than the specified value and the session usage exceeds the value specified for `ScalingUsageThreshold`. Otherwise, the system determines that the idle sessions in the delivery group are sufficient and does not perform auto scaling.`` You can use this parameter to flexibly manage auto scaling and reduce costs.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '3', + ], + 'ScalingStep' => [ + 'title' => '弹性扩容步长', + 'description' => 'The number of resources that are created each time resources are scaled out. Valid values: 1 to 10. This parameter is required only if you set `StrategyType` to `NODE_SCALING_BY_USAGE`.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + 'ScalingUsageThreshold' => [ + 'title' => '触发弹性扩容的会话百分比', + 'description' => '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 only if you set `StrategyType` to `NODE_SCALING_BY_USAGE`. Valid values: 0 to 100. Default value: 85.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '85', + ], + 'ScalingDownAfterIdleMinutes' => [ + 'title' => '资源回收时间', + 'description' => '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.'."\n" + ."\n" + .'* If a scale-out is automatically triggered after the resource is scaled in, the scale-in is not executed. This prevents repeated scale-in and scale-out.'."\n" + .'* If a scale-out is automatically 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.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '5', + ], + 'StrategyEnableDate' => [ + 'description' => '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 only if you set `StrategyType` to `NODE_SCALING_BY_SCHEDULE`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2023-01-05', + ], + 'StrategyDisableDate' => [ + 'description' => '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 only if you set `StrategyType` to `NODE_SCALING_BY_SCHEDULE`.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2023-01-19', + ], + 'WarmUp' => [ + 'description' => 'Specifies whether to enable the warmup policy for resources. This parameter is required only if you set `StrategyType` to `NODE_SCALING_BY_SCHEDULE`.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + 'RecurrenceSchedules' => [ + 'description' => 'The intervals at which the scaling policy is executed. This parameter is required only if you set `StrategyType` to `NODE_SCALING_BY_SCHEDULE`.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The interval at which the scaling policy is executed.'."\n", + 'type' => 'object', + 'properties' => [ + 'RecurrenceType' => [ + 'description' => 'The schedule type of the scaling policy. This parameter must be configured together with `RecurrenceValues`.``'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* weekly: The scaling policy is executed on specific days each week.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'weekly' => '', + ], + 'example' => 'weekly', + ], + 'RecurrenceValues' => [ + 'description' => 'The days of each week on which the scaling policy is executed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The day of each week on which the scaling policy is executed.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* 1: Monday'."\n" + .'* 2: Tuesday'."\n" + .'* 3: Wednesday'."\n" + .'* 4: Thursday'."\n" + .'* 5: Friday'."\n" + .'* 6: Saturday'."\n" + .'* 7: Sunday'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + 1 => '', + '', + '', + '', + '', + '', + '', + ], + 'example' => '1', + ], + 'required' => false, + 'maxItems' => 7, + ], + 'TimerPeriods' => [ + 'description' => 'The time periods during which the scaling policy can be executed. The time periods must meet the following requirements:'."\n" + ."\n" + .'* Up to three time periods can be added.'."\n" + .'* Time periods cannot be overlapped.'."\n" + .'* The interval between two consecutive time periods must be greater than or equal to 5 minutes.'."\n" + .'* Each time period must be greater than or equal to 15 minutes.'."\n" + .'* The total length of the time periods that you specify cannot be greater than a day.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The time period during which the scaling policy can be executed.'."\n", + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => 'The beginning of the time period during which the scaling policy is executed. Format: HH:mm.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '12:00', + ], + 'EndTime' => [ + 'description' => 'The end of the time period during which the scaling policy is executed. Format: HH:mm.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '15:00', + ], + 'Amount' => [ + 'description' => 'The number of resources.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 5, + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 7, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the region where the delivery group resides. For information about the supported regions, see [Limits](~~426036~~).'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cn-shanghai: China (Shanghai)'."\n" + .'* cn-hangzhou: China (Hangzhou)'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'cn-shanghai' => '', + 'cn-hangzhou' => '', + ], + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'BaseResult', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '', + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Code' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'InvalidParameter.PoolId', + ], + 'Message' => [ + 'description' => '', + 'type' => 'string', + 'example' => 'The parameter PoolId is invalid.', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Code\\": \\"InvalidParameter.PoolId\\",\\n \\"Message\\": \\"The parameter PoolId is invalid.\\"\\n}","type":"json"}]', + 'title' => 'ModifyNodePoolAttribute', + 'summary' => 'Changes the scaling policy of a delivery group. The following scaling policies are supported: fixed resource number, scheduled scaling, and auto scaling.', + 'description' => 'You can select one of the following scaling policies for cloud app resources:'."\n" + ."\n" + .'* No scaling: Resources are not scaled.'."\n" + .'* Auto scaling: Resources are automatically scaled based on the number of connected sessions and the duration during which no session is connected.'."\n" + .'* Scheduled scaling: Resources are scaled during specific periods of time on specific dates.'."\n" + ."\n" + .'Before you call this operation, make sure that you fully understand the [billing methods and prices](~~426039~~) of App Streaming.'."\n", + ], + 'AuthorizeInstanceGroup' => [ + 'summary' => 'Adds assigned users to or removes assigned users from a delivery group. Only users added to the assigned user list can access App Streaming.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '83450', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + 'maxItems' => 100, + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => '', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AuthorizeUserIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The IDs of the users that you want to add to the authorization list of the delivery group. You can specify 1 to 100 user IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the user that you want to add to the authorization list of the delivery group. You can call the [DescribeUsers](~~436936~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"AuthorizeUserIds.1":"username1","AuthorizeUserIds.2":"username2"', + ], + 'required' => false, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'UnAuthorizeUserIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The IDs of the users that you want to remove from the authorization list of the delivery group. You can specify 1 to 100 user IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the user that you want to remove from the authorization list of the delivery group. You can call the [DescribeUsers](~~436936~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '"UnAuthorizeUserIds.1":"username3","UnAuthorizeUserIds.2":"username4"', + ], + 'required' => false, + 'maxItems' => 200, + ], + ], + [ + 'name' => 'UserMeta', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The user information.'."\n", + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => 'The user type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* ad: Active Directory (AD) account'."\n" + .'* simple: convenience account'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'ad' => '', + 'simple' => '', + ], + 'example' => 'simple', + ], + 'AdDomain' => [ + 'description' => 'The AD domain name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'AppInstancePersistentId', + 'in' => 'formData', + 'schema' => [ + 'title' => '持久会话ID。', + 'description' => '持久会话ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'p-0cc7s3mw2fg4j****', + ], + ], + [ + 'name' => 'AvatarId', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户分身ID。', + 'type' => 'string', + 'example' => 'default', + 'default' => 'default', + ], + ], + [ + 'name' => 'AuthorizeUserGroupIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '授权用户组ID列表。', + 'type' => 'array', + 'items' => [ + 'title' => '授权用户组ID。', + 'type' => 'string', + ], + 'maxItems' => 20, + ], + ], + [ + 'name' => 'UnAuthorizeUserGroupIds', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'title' => '取消授权用户组ID列表。', + 'type' => 'array', + 'items' => [ + 'title' => '取消授权用户组ID列表。', + 'type' => 'string', + ], + 'maxItems' => 20, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'AuthorizeInstanceGroup', + ], + 'LogOffAllSessionsInAppInstanceGroup' => [ + 'summary' => 'Closes all sessions in a pay-as-you-go delivery group for which a scheduled scaling policy is used.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'title' => '产品类型', + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例组id', + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'BaseResult', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ProductType', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'The parameter ProductType is invalid.', + ], + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": \\"InvalidParameter.ProductType\\",\\n \\"Message\\": \\"The parameter ProductType is invalid.\\",\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'LogOffAllSessionsInAppInstanceGroup', + 'description' => '> This operation can be called only if you use a pay-as-you-go delivery group for which a scheduled scaling policy is used and if you call the operation at a time other than the scheduled time.'."\n", + ], + 'DeleteAppInstanceGroup' => [ + 'summary' => 'Deletes a delivery group that uses the By Resource - Pay-as-you-go billing method.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + 'maxItems' => 100, + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidAppInstanceGroupSpecItem.NotFound', + 'errorMessage' => 'The app instance group spec item is not found.', + ], + [ + 'errorCode' => 'InvalidBrowserInstanceGroup.NotFound', + 'errorMessage' => 'The browser instance group is not found.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'DeleteAppInstanceGroup', + 'description' => '> You cannot call this operation to delete a subscription delivery group.'."\n", + ], + 'ModifyAppPolicy' => [ + 'summary' => 'Modify the delivery group display policy, including settings such as frame rate, resolution, and protocol type.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Enumerated values:'."\n" + ."\n" + .'* CloudApp: RDS Cloud App'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppPolicyId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The policy ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'pg-ee2znjktwgxu2****', + ], + ], + [ + 'name' => 'VideoPolicy', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'Displays the policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'FrameRate' => [ + 'description' => 'The frame rate (FPS).'."\n" + ."\n" + .'Enumerated values:'."\n" + ."\n" + .'* 30: 30 FPS'."\n" + .'* 60: 60 FPS'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'enumValueTitles' => [ + 30 => '30 FPS', + 60 => '60 FPS', + ], + 'example' => '60', + ], + 'TerminalResolutionAdaptive' => [ + 'description' => 'Whether to use adaptive resolution.'."\n" + ."\n" + .'* `true`: The session resolution changes with the display area of the terminal. In this case, `SessionResolutionWidth` indicates the maximum resolution width and `SessionResolutionHeight` indicates the maximum resolution height.'."\n" + .'* `false`: The session resolution does not change with the display area of the terminal. In this case, `SessionResolutionWidth` specifies the fixed resolution width and `SessionResolutionHeight` specifies the fixed resolution height.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'example' => 'false', + ], + 'SessionResolutionWidth' => [ + 'description' => 'The width of the resolution, in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1920', + ], + 'SessionResolutionHeight' => [ + 'description' => 'The height of the resolution, in pixels.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1080', + ], + 'StreamingMode' => [ + 'description' => 'The stream mode. This parameter is used together with `Webrtc` to specify the protocol type.'."\n" + ."\n" + .'* If you set `Webrtc` to `true` and `StreamingMode` to `video`, Web Real-Time Communications (WebRTC) streams are used.'."\n" + .'* If you set `Webrtc` to `false` and `StreamingMode` to `video`, video streams are used.'."\n" + .'* If you set `Webrtc` to `false` and `StreamingMode` to `mix`, mixed streams are used.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'video' => '', + 'mix' => '', + ], + 'example' => 'video', + ], + 'Webrtc' => [ + 'description' => 'Specifies whether to enable WebRTC. This parameter is used together with `StreamingMode` to specify the protocol type.'."\n" + ."\n" + .'* If you set `Webrtc` to `true` and `StreamingMode` to `video`, WebRTC streams are used.'."\n" + .'* If you set `Webrtc` to `false` and `StreamingMode` to `video`, video streams are used.'."\n" + .'* If you set `Webrtc` to `false` and `StreamingMode` to `mix`, mixed streams are used.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => 'true', + 'false' => 'false', + ], + 'example' => 'true', + ], + 'VisualQualityStrategy' => [ + 'description' => 'The image quality policy.'."\n" + ."\n" + .'Enumerated values:'."\n" + ."\n" + .'* adaptive: adaptive.'."\n" + .'* smooth: smooth first.'."\n" + .'* quality: quality first.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'adaptive' => '', + 'smooth' => '', + 'quality' => '', + ], + 'example' => 'smooth', + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The information that is returned.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'ModifyAppPolicy', + ], + 'ListAuthorizedUserGroups' => [ + 'summary' => 'Queries the user groups authorized by a delivery group.', + 'path' => '', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingD8SMIE', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'title' => '产品类型。', + 'description' => 'The product type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'title' => '每页最大返回的数量。', + 'description' => 'The maximum number of entries returned per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '100', + 'example' => '10', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'title' => '页码,从1开始。', + 'description' => 'The page number. Pages start from page 1.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'minimum' => '1', + 'example' => '1', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '交付组ID。', + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'GroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户组ID,精确查询。', + 'description' => 'The ID of the user group (exact match).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ug-00001', + ], + ], + [ + 'name' => 'GroupName', + 'in' => 'formData', + 'schema' => [ + 'title' => '用户组名称,模糊查询。', + 'description' => 'The name of the user group (fuzzy match).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TotalCount' => [ + 'title' => '总数。', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'PageSize' => [ + 'title' => '每页返回的最大数量。', + 'description' => 'The maximum number of entries returned on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNumber' => [ + 'title' => '页码。', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'UserGroups' => [ + 'title' => '用户组信息列表。', + 'description' => 'The information about the user groups.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '用户组信息。', + 'description' => 'The information about the user group.'."\n", + 'type' => 'object', + 'properties' => [ + 'GroupName' => [ + 'title' => '用户组名称。', + 'description' => 'The name of the user group.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'AppInstanceGroupId' => [ + 'title' => '交付组ID。', + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-9ciijz60n4xsv****', + ], + 'AuthMode' => [ + 'title' => '授权模式。', + 'description' => 'The authorization mode.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* App: authorizes access to apps.'."\n" + .'* AppInstanceGroup: authorizes access to delivery groups.'."\n" + .'* Session: authorizes access to sessions.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'App' => '', + 'AppInstanceGroup' => '', + 'Session' => '', + ], + 'example' => 'App', + 'default' => 'App', + 'enum' => [ + 'App', + 'Session', + 'AppInstanceGroup', + ], + ], + 'GroupId' => [ + 'title' => '用户组ID。', + 'description' => 'The ID of the user group.'."\n", + 'type' => 'string', + 'example' => 'ug-00001', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TotalCount\\": 6,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"UserGroups\\": [\\n {\\n \\"GroupName\\": \\"用户组001\\",\\n \\"AppInstanceGroupId\\": \\"aig-9ciijz60n4xsv****\\",\\n \\"AuthMode\\": \\"App\\",\\n \\"GroupId\\": \\"ug-00001\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListAuthorizedUserGroups', + ], + 'ListAppInstances' => [ + 'summary' => 'Queries the details of application instances in a delivery group, including the IDs, status, creation time, update time, session status, and public IP addresses associated with the primary NICs of the instances.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '170357', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-4p5f8tj16yb8b****', + ], + ], + [ + 'name' => 'AppInstanceId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the application instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ai-azn3kmwruh1vl****', + ], + ], + [ + 'name' => 'Status', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The status of the application instances.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The status of the application instance.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* INIT: The application instance is being initialized.'."\n" + .'* STARTING: The application instance is being started.'."\n" + .'* CLOSING: The application instance is being stopped.'."\n" + .'* CLOSED: The application instance is closed.'."\n" + .'* RUNNING: The application instance is running.'."\n" + .'* idle: The application instance is idle.'."\n" + .'* BOUND: The application instance is bound to an application instance group.'."\n" + .'* UNAVAILABLE: The application instance is unavailable.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'INIT' => '', + 'STARTING' => '', + 'CLOSING' => '', + 'CLOSED' => '', + 'RUNNING' => '', + 'IDLE' => '', + 'BOUND' => '', + 'UNAVAILABLE' => '', + ], + 'example' => 'INIT', + ], + 'required' => false, + 'maxItems' => 100, + 'minItems' => 1, + ], + ], + [ + 'name' => 'AppInstanceIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The IDs of the application instances. Up to 100 IDs can be specified.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the application instance.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ai-azn3kmwruh1vl****', + ], + 'required' => false, + 'maxItems' => 100, + 'minItems' => 1, + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value cannot be greater than `100`. Default value: `20`. We recommend that you specify this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '20', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Default value: `1`. We recommend that you specify this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'IncludeDeleted', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to query the information about deleted app instances. If you set this parameter to true, you must configure AppInstanceIdList. Otherwise, a parameter error is reported.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + 'default' => 'false', + ], + ], + [ + 'name' => 'UserIdList', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The user IDs. You can specify up to 100 IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Alice', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '18', + ], + 'PageSize' => [ + 'description' => 'The number of entries returned on each page. The value cannot be greater than `100`. We recommend that you configure this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNumber' => [ + 'description' => 'The page number of the returned page. We recommend that you configure this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'AppInstanceModels' => [ + 'description' => 'The app instances.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The app instance.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppInstanceId' => [ + 'description' => 'The ID of the application instance.'."\n", + 'type' => 'string', + 'example' => 'ai-8dl7dzchklmka****', + ], + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-dk8p95irqfst9****', + ], + 'Status' => [ + 'description' => 'The status of the application instance.'."\n", + 'type' => 'string', + 'example' => 'BOUND', + ], + 'MainEthPublicIp' => [ + 'description' => 'The public IP address associated with the primary NIC. This value is returned only if `StrategyType` is set to `Mixed`.'."\n", + 'type' => 'string', + 'example' => '10.13.13.211', + ], + 'NetworkInterfaceIp' => [ + 'type' => 'string', + ], + 'GmtCreate' => [ + 'description' => 'The time when the application instance was created.'."\n", + 'type' => 'string', + 'example' => '2023-03-07T20:29:19.000+08:00', + ], + 'GmtModified' => [ + 'description' => 'The time when the application instance was updated.'."\n", + 'type' => 'string', + 'example' => '2023-03-07T20:29:19.000+08:00', + ], + 'SessionStatus' => [ + 'description' => 'The session status. This parameter is returned only if the application instance is in the `RUNNING` state.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* disconnect: disconnected'."\n" + .'* connect: connected'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'disconnect' => '', + 'connect' => '', + ], + 'example' => 'connect', + ], + 'BindInfo' => [ + 'description' => 'The information about the binding between the application instance and end users.'."\n", + 'type' => 'object', + 'properties' => [ + 'EndUserId' => [ + 'description' => 'The ID of the end user that is bound to the application instance.'."\n", + 'type' => 'string', + 'example' => 'app.test', + ], + 'UsageDuration' => [ + 'description' => 'The use duration of the application instance. Unit: seconds.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2000', + ], + ], + ], + 'NodeId' => [ + 'description' => 'The ID of the node on which the app instance runs.'."\n" + ."\n" + .'> This parameter is returned only if the ChargeResourceMode parameter of the delivery group to which the app instance belongs is set to Node.'."\n", + 'type' => 'string', + 'example' => 'i-bp13********', + ], + 'ChargeType' => [ + 'description' => 'The billing method of the app instance. Valid values:'."\n" + ."\n" + .'* **PrePaid**: subscription.'."\n" + .'* **PostPaid**: pay-as-you-go'."\n" + ."\n" + .'> This parameter is returned only if the ChargeResourceMode parameter of the delivery group to which the app instance belongs is set to Node.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'PostPaid' => '', + 'PrePaid' => '', + ], + 'example' => 'PostPaid', + ], + 'NetworkInterfaceId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TotalCount\\": 18,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"AppInstanceModels\\": [\\n {\\n \\"AppInstanceId\\": \\"ai-8dl7dzchklmka****\\",\\n \\"AppInstanceGroupId\\": \\"aig-dk8p95irqfst9****\\",\\n \\"Status\\": \\"BOUND\\",\\n \\"MainEthPublicIp\\": \\"10.13.13.211\\",\\n \\"NetworkInterfaceIp\\": \\"\\",\\n \\"GmtCreate\\": \\"2023-03-07T20:29:19.000+08:00\\",\\n \\"GmtModified\\": \\"2023-03-07T20:29:19.000+08:00\\",\\n \\"SessionStatus\\": \\"connect\\",\\n \\"BindInfo\\": {\\n \\"EndUserId\\": \\"app.test\\",\\n \\"UsageDuration\\": 2000\\n },\\n \\"NodeId\\": \\"i-bp13********\\",\\n \\"ChargeType\\": \\"PostPaid\\",\\n \\"NetworkInterfaceId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListAppInstances', + ], + 'DeleteAppInstances' => [ + 'summary' => 'Deletes an application instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the delivery group. You can call the [listAppInstanceGroup](~~428506~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'AppInstanceIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The IDs of application instances.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the application instance.'."\n" + ."\n" + .'> This parameter is available only for specific customers.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ai-gbuea*****', + ], + 'required' => true, + 'maxItems' => 100, + 'minItems' => 1, + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'DeleteAppInstanceModels' => [ + 'description' => 'The data returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'AppInstanceId' => [ + 'description' => 'The ID of the application instance.'."\n", + 'type' => 'string', + 'example' => 'ai-gbuea*****'."\n", + ], + 'Success' => [ + 'description' => 'Specifies whether the application instance is deleted.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + 'Code' => [ + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'InvalidParameter.ProductType', + ], + 'Message' => [ + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'The parameter ProductType is invalid.', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"DeleteAppInstanceModels\\": [\\n {\\n \\"AppInstanceId\\": \\"ai-gbuea*****\\\\n\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"InvalidParameter.ProductType\\",\\n \\"Message\\": \\"The parameter ProductType is invalid.\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DeleteAppInstances', + 'description' => 'Only application instances that are in the Initializing or Idle state can be deleted. The operation can be called only by specific customers.'."\n", + ], + 'ListPersistentAppInstances' => [ + 'summary' => 'Queries app instances of the persistent session type in a delivery group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '268317', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n" + .'* CloudBrowser: Cloud-based Browser'."\n" + .'* AndroidCloud: Cloud Phone'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + 'CloudBrowser' => '', + 'AndroidCloud' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-0bxls9m9arax6****', + ], + ], + [ + 'name' => 'AppInstancePersistentIds', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The IDs of the persistent sessions.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the persistent session.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'p-0cc7s3mw2fg4j****', + ], + 'required' => false, + 'maxItems' => 100, + 'minItems' => 1, + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => 'The number of entries per page. The value cannot be greater than **100**. Default value: **20**.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '20', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => 'The page number. Pages start from page **1**. Default value: **1**.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '1', + 'default' => '1', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'PageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PersistentAppInstanceModels' => [ + 'description' => 'The app instances of the persistent session type.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The app instance of the persistent session type.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppInstancePersistentId' => [ + 'description' => 'The ID of the app instance of the persistent session type.'."\n", + 'type' => 'string', + 'example' => 'p-0cc7s3mw2fg4j****', + ], + 'AppInstancePersistentName' => [ + 'description' => 'The name of the app instance of the persistent session type.'."\n", + 'type' => 'string', + 'example' => 'test-persistent-name', + ], + 'AppInstancePersistentStatus' => [ + 'description' => 'The status of the app instance of the persistent session type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* STARTING'."\n" + .'* RUNNING'."\n" + .'* STOPPED'."\n" + .'* UNAVAILABLE'."\n" + .'* DELETING'."\n" + .'* PENDING'."\n" + .'* STOPPING'."\n" + .'* DELETED'."\n" + .'* REBUILDING'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'STARTING' => '', + 'RUNNING' => '', + 'STOPPED' => '', + 'UNAVAILABLE' => '', + 'DELETING' => '', + 'PENDING' => '', + 'STOPPING' => '', + 'DELETED' => '', + 'REBUILDING' => '', + ], + 'example' => 'RUNNING', + ], + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-0bxls9m9arax6****', + ], + 'AppInstanceId' => [ + 'description' => 'The ID of the app instance.'."\n", + 'type' => 'string', + 'example' => 'ai-azn3kmwruh1vl****', + ], + 'AppInstanceStatus' => [ + 'description' => 'The status of the app instance.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* INIT: The app instance is being initialized.'."\n" + .'* STARTING: The app instance is being started.'."\n" + .'* CLOSING: The app instance is being stopped.'."\n" + .'* CLOSED: The app instance is closed.'."\n" + .'* RUNNING: The app instance is running.'."\n" + .'* idle: The app instance is idle.'."\n" + .'* BOUND: The app instance is bound to an app instance group.'."\n" + .'* UNAVAILABLE: The app instance is unavailable.'."\n" + .'* DELETED: The app instance is deleted.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'INIT' => '', + 'STARTING' => '', + 'CLOSING' => '', + 'CLOSED' => '', + 'RUNNING' => '', + 'IDLE' => '', + 'BOUND' => '', + 'UNAVAILABLE' => '', + 'DELETED' => '', + ], + 'example' => 'RUNNING', + ], + 'GmtCreate' => [ + 'description' => 'The time when the app instance was created.'."\n", + 'type' => 'string', + 'example' => '2025-03-13T03:22:18.000+00:00', + ], + 'AuthorizedUsers' => [ + 'description' => 'The authorized users.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the authorized user.'."\n", + 'type' => 'string', + 'example' => 'user-001', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TotalCount\\": 15,\\n \\"PageSize\\": 20,\\n \\"PageNumber\\": 1,\\n \\"PersistentAppInstanceModels\\": [\\n {\\n \\"AppInstancePersistentId\\": \\"p-0cc7s3mw2fg4j****\\",\\n \\"AppInstancePersistentName\\": \\"test-persistent-name\\",\\n \\"AppInstancePersistentStatus\\": \\"RUNNING\\",\\n \\"AppInstanceGroupId\\": \\"aig-0bxls9m9arax6****\\",\\n \\"AppInstanceId\\": \\"ai-azn3kmwruh1vl****\\",\\n \\"AppInstanceStatus\\": \\"RUNNING\\",\\n \\"GmtCreate\\": \\"2025-03-13T03:22:18.000+00:00\\",\\n \\"AuthorizedUsers\\": [\\n \\"user-001\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListPersistentAppInstances', + ], + 'GetConnectionTicket' => [ + 'summary' => 'Queries the credential that is used to connect to App Streaming.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '169756', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n" + .'* AndroidCloud: Cloud Phone'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + 'AndroidCloud' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'EndUserId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the convenience account.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'alice', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The region ID.'."\n" + ."\n" + .'> If you configure this parameter, the system assigns application instances only among the delivery groups that reside in the specified region.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'cn-shenzhen' => 'cn-shenzhen', + 'cn-beijing' => 'cn-beijing', + 'cn-shanghai' => 'cn-shanghai', + 'cn-zhangjiakou' => 'cn-zhangjiakou', + 'cn-hangzhou' => 'cn-hangzhou', + ], + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The task ID.'."\n" + ."\n" + .'> This parameter is required for calls other than the first call to this operation. You can use this parameter to query the task status and connection credential.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '28778acb-a469-4bc0-8e0f****', + ], + ], + [ + 'name' => 'AppId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The application ID.'."\n" + ."\n" + .'> This parameter is required for the first call to this operation and optional for subsequent calls to the operation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ca-e4s0puhmwi7v****', + ], + ], + [ + 'name' => 'AppVersion', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The application version. If you configure this parameter, only an application of the specified version is started. If you do not configure this parameter, an application of a random authorized version is started.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '1.0.0', + ], + ], + [ + 'name' => 'AppStartParam', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The parameters that are configured to start the application. For information about how to obtain these parameters, see [Obtain parameters configured to install and start an application](~~426045~~).', + 'type' => 'string', + 'required' => false, + 'example' => '/q /n', + ], + ], + [ + 'name' => 'EnvironmentConfig', + 'in' => 'formData', + 'schema' => [ + 'title' => '环境配置。', + 'description' => 'The environment configuration.'."\n", + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'AppInstanceGroupIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The delivery groups.'."\n" + ."\n" + .'> * If you configure this parameter, the system assigns application instances only among the specified authorized delivery groups. '."\n" + .'> * This parameter is required if you configure `AppInstanceId` or `AppInstancePersistentId`.', + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aig-4xz0oy8x4ipyv****', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'AppInstancePersistentId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the persistent session.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'p-0bxls9m3cl7s****', + ], + ], + [ + 'name' => 'AppInstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the application instance.'."\n" + ."\n" + .'> * If you configure this parameter, the system attempts to assign only the specified application instance.'."\n" + .'> * If you configure this parameter, you must also configure `AppInstanceGroupIdList` and the number of delivery groups specified by `AppInstanceGroupIdList` must be 1.', + 'type' => 'string', + 'required' => false, + 'example' => 'ai-1rznfnrvsa99d****', + ], + ], + [ + 'name' => 'AccessType', + 'in' => 'formData', + 'schema' => [ + 'title' => '接入类型,不传表示两种都显示。'."\n" + .'取值范围:'."\n" + .'互联网:INTERNET'."\n" + .'专线:VPC', + 'description' => '', + 'type' => 'string', + 'required' => false, + 'example' => 'INTERNET', + 'maxLength' => 10, + 'minLength' => 0, + 'default' => 'INTERNET', + 'enum' => [ + 'INTERNET', + 'VPC', + ], + ], + ], + [ + 'name' => 'AppPolicyId', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TaskStatus' => [ + 'description' => 'The task status.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Finished: The task is complete.'."\n" + .'* Failed: The task failed.'."\n" + .'* Running: The task is being executed.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Finished' => '', + 'Failed' => '', + 'Running' => '', + ], + 'example' => 'Running', + ], + 'TaskId' => [ + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => 'f3d1b31c-605e-4d04-a896****', + ], + 'BizRegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'Ticket' => [ + 'description' => 'The credential that is used to connect to App Streaming.'."\n" + ."\n" + .'> This parameter is displayed for calls other than the first call to this operation.'."\n", + 'type' => 'string', + 'example' => 'DQpbRGVza3RvcF0NCkZvcmNlVGxzVHlwZT0xDQpHV1Rva2VuUGFydDE9MDAva09ROW1FUTU3dU****', + ], + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-53fvrq1oan****', + ], + 'AppInstancePersistentId' => [ + 'description' => 'The ID of the persistent session.'."\n", + 'type' => 'string', + 'example' => 'p-0bxls9m3cl7s****', + ], + 'AppInstanceId' => [ + 'description' => 'The ID of the application instance.'."\n", + 'type' => 'string', + 'example' => 'ai-7ybdeiyoeh5e****', + ], + 'OsType' => [ + 'description' => 'The operating system.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Windows: the Windows operating system'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Windows' => '', + ], + 'example' => 'Windows', + ], + 'TenantId' => [ + 'description' => 'The ID of the Alibaba Cloud account.'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '148871678899****', + ], + 'AvatarId' => [ + 'title' => '分身ID。', + 'description' => 'The avatar ID.'."\n", + 'type' => 'string', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TaskStatus\\": \\"Running\\",\\n \\"TaskId\\": \\"f3d1b31c-605e-4d04-a896****\\",\\n \\"BizRegionId\\": \\"cn-hangzhou\\",\\n \\"Ticket\\": \\"DQpbRGVza3RvcF0NCkZvcmNlVGxzVHlwZT0xDQpHV1Rva2VuUGFydDE9MDAva09ROW1FUTU3dU****\\",\\n \\"AppInstanceGroupId\\": \\"aig-53fvrq1oan****\\",\\n \\"AppInstancePersistentId\\": \\"p-0bxls9m3cl7s****\\",\\n \\"AppInstanceId\\": \\"ai-7ybdeiyoeh5e****\\",\\n \\"OsType\\": \\"Windows\\",\\n \\"TenantId\\": 0,\\n \\"AvatarId\\": \\"\\"\\n}","type":"json"}]', + 'title' => 'GetConnectionTicket', + 'description' => 'You must call this operation at least twice to obtain a connection credential.'."\n" + ."\n" + .'The first time you call this operation, the system assigns an application instance to the specified convenience account and then starts the application. In this case, the ID of the started task, which is indicated by `TaskID`, is returned.'."\n" + ."\n" + .'In subsequent calls, you must configure `TaskID` to query whether the task is completed. If the value of `TaskStatus` in the response is `Finished`, the connection credential, which is indicated by `Ticket`, is returned.'."\n", + ], + 'Unbind' => [ + 'summary' => 'Unbinds a user and a session.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'EndUserId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The username.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'alice', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the delivery group. You can call the [GetConnectionTicket](~~GetConnectionTicket~~) operation to obtain the ID.', + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'AppInstancePersistentId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the persistent session. You can call the [GetConnectionTicket](~~GetConnectionTicket~~) operation to obtain the ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'p-0bxls9m3cl7s****', + ], + ], + [ + 'name' => 'AppInstanceId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The session ID. You can call the [GetConnectionTicket](~~GetConnectionTicket~~) operation to obtain the ID.', + 'type' => 'string', + 'required' => false, + 'example' => 'ai-d297eyf83g5ni****', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'Unbind', + ], + 'ListBindInfo' => [ + 'summary' => 'Queries the bindings between users and resources.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'abilityTreeCode' => '262111', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingV87T4P', + ], + ], + 'parameters' => [ + [ + 'name' => 'UserIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The user IDs. You can specify 1 to 100 IDs.'."\n" + ."\n" + .'> If you specify this parameter, only the bindings of the specified users are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'Alice', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'WyIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The IDs of the Alibaba Cloud Workspace users. You can specify 1 to 100 IDs.'."\n" + ."\n" + .'> If you specify this parameter, only the bindings of the specified Alibaba Cloud Workspace users are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the Alibaba Cloud Workspace user.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2ca6f5a93536****', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'AppInstanceGroupIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The IDs of the delivery groups. You can specify 1 to 100 IDs.'."\n" + ."\n" + .'> If you specify this parameter, only the bindings of the specified delivery groups are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aig-4xz0oy8x4ipyv****', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'AppInstanceIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The IDs of app instances. You can specify 1 to 100 IDs.'."\n" + ."\n" + .'> If you specify this parameter, only the bindings of the specified app instances are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the app instance.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ai-azn3kmwruh1vl****', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'AppIdList', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The app IDs. You can specify 1 to 100 IDs.'."\n" + ."\n" + .'> If you specify this parameter, only the bindings of the specified apps are returned.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The app ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ca-fq738or6vd854****', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The number of entries per page. The value cannot be greater than `100`. Default value: `20`. We recommend that you specify this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '10', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The page number. Default value: `1`. We recommend that you specify this parameter.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '1', + 'default' => '1', + ], + ], + ], + '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' => 'AD2D0761-1FE5-549D-B169-D3F8D19C****', + ], + 'TotalCount' => [ + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + ], + 'PageSize' => [ + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNumber' => [ + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'BindInfoModels' => [ + 'description' => 'The bindings.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The binding.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppId' => [ + 'description' => 'The app ID.'."\n", + 'type' => 'string', + 'example' => 'ca-fq738or6vd854****', + ], + 'AppVersion' => [ + 'description' => 'The app version.'."\n", + 'type' => 'string', + 'example' => '1.0', + ], + 'RegionId' => [ + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => 'Alice', + ], + 'WyId' => [ + 'description' => 'The ID of the Alibaba Cloud Workspace user.'."\n", + 'type' => 'string', + 'example' => '2ca6f5a93536****', + ], + 'AccountType' => [ + 'description' => 'The account type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* ad: Active Directory (AD) account'."\n" + .'* simple: convenience account'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'ad' => 'ad', + 'simple' => 'simple', + ], + 'example' => 'simple', + ], + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-0abxhr6ce35w8****', + ], + 'AppInstanceId' => [ + 'description' => 'The ID of the app instance.'."\n", + 'type' => 'string', + 'example' => 'ai-83oe276fre4l3****', + ], + 'ProductType' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n" + .'* CloudBrowser: Cloud-based Browser'."\n" + .'* AndroidCloud: Cloud Phone'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'CloudApp' => 'CloudApp', + 'CloudBrowser' => 'CloudBrowser', + 'AndroidCloud' => 'AndroidCloud', + ], + 'example' => 'CloudApp', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AD2D0761-1FE5-549D-B169-D3F8D19C****\\",\\n \\"TotalCount\\": 15,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"BindInfoModels\\": [\\n {\\n \\"AppId\\": \\"ca-fq738or6vd854****\\",\\n \\"AppVersion\\": \\"1.0\\",\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"UserId\\": \\"Alice\\",\\n \\"WyId\\": \\"2ca6f5a93536****\\",\\n \\"AccountType\\": \\"simple\\",\\n \\"AppInstanceGroupId\\": \\"aig-0abxhr6ce35w8****\\",\\n \\"AppInstanceId\\": \\"ai-83oe276fre4l3****\\",\\n \\"ProductType\\": \\"CloudApp\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListBindInfo', + ], + 'CreateImageFromAppInstanceGroup' => [ + 'summary' => 'Creates a new image by debugging the delivery group.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppCenterImageName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The image name.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test_name', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the delivery group. You can call the [ListAppInstanceGroup](~~428506~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'ImageId' => [ + 'description' => 'The image ID.'."\n", + 'type' => 'string', + 'example' => 'img-bp13mu****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"ImageId\\": \\"img-bp13mu****\\"\\n}","type":"json"}]', + 'title' => 'CreateImageFromAppInstanceGroup', + ], + 'GetDebugAppInstance' => [ + 'summary' => 'Queries information that is used to debug an application instance.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* CloudApp: App Streaming'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CloudApp' => '', + ], + 'example' => 'CloudApp', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the delivery group. You can call the `listAppInstanceGroup` operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'AppInstanceGroupId' => [ + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'example' => 'aig-9ciijz60n4xsv****', + ], + 'AppInstanceId' => [ + 'description' => 'The ID of the application instance.'."\n", + 'type' => 'string', + 'example' => 'ai-7ybdeiyoeh5e****', + ], + 'AppId' => [ + 'description' => 'The application ID.'."\n", + 'type' => 'string', + 'example' => '__DEBUG_APP', + ], + 'UserId' => [ + 'description' => 'The user ID.'."\n", + 'type' => 'string', + 'example' => '__debug__', + ], + 'AuthCode' => [ + 'description' => 'The authorization code. This authorization code is valid for 3 minutes and can be used only once, regardless of whether the authentication succeeds. If multiple authentication codes are generated for a user, only the latest authentication code takes effect.'."\n", + 'type' => 'string', + 'example' => 'e4e169bea1cc48e8afac53**********', + ], + 'AppVersion' => [ + 'description' => 'The ID of the application version.'."\n", + 'type' => 'string', + 'example' => '1.1', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"AppInstanceGroupId\\": \\"aig-9ciijz60n4xsv****\\",\\n \\"AppInstanceId\\": \\"ai-7ybdeiyoeh5e****\\",\\n \\"AppId\\": \\"__DEBUG_APP\\",\\n \\"UserId\\": \\"__debug__\\",\\n \\"AuthCode\\": \\"e4e169bea1cc48e8afac53**********\\",\\n \\"AppVersion\\": \\"1.1\\"\\n}","type":"json"}]', + 'title' => 'GetDebugAppInstance', + 'responseParamsDescription' => 'You can concatenate a URL to obtain the connection information based on the response parameters. Example:'."\n" + ."\n" + .'`<https://wuying.aliyun.com/appMyBank>?AppId=__DEBUG_APP&AppVersion=1.0&AppInstanceGroupId=aig-5wfetbb7aovy8****&Env=online&AppInstanceId=ai-c7ruhxqww38ws****&AuthCode=acv2j%2BqjU3GAIBVOz33KxdcVyHJ58Dc2N2GC3ZpWNu9Q3zX84cxbNJcPX5enF%2BPePBEgBHxvF28QQcUOjgMk5tHgQKbe%2FUXbIDfg83vN7C3XMzkXo8ByHepfSLQwFLdP4S83zA327ugaB1w1pNnDwhbSvkfRmTA3JOc%2FNEqNs6w%2FePg5NmS4bRhodpYkb4wL****`'."\n" + ."\n" + .'> Replace `<https://wuying.aliyun.com/appMyBank>` based on your actual business.'."\n", + ], + 'ListOtaTask' => [ + 'summary' => 'Queries the information about over-the-air (OTA) update tasks.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'title' => '每页数量', + 'description' => 'The number of entries to return on each page. Valid values: 1 to 100.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '10', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'title' => '页码', + 'description' => 'The page number of the page to return.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例组id', + 'description' => 'The ID of the delivery group.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-53fvrq1oanz6c****', + ], + ], + [ + 'name' => 'OtaType', + 'in' => 'formData', + 'schema' => [ + 'title' => 'ota类型,取值:'."\n" + .'Fota : agent组件更新'."\n" + .'ImageUpdate : 镜像更新'."\n" + .'AppUpdate : 应用更新', + 'description' => 'The type of the OTA update task.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Fota: update of the system components of Alibaba Cloud Workspace'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Fota' => '', + ], + 'example' => 'Fota', + 'enum' => [ + 'Fota', + 'ImageUpdate', + 'AppUpdate', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TotalCount' => [ + 'description' => 'The total number of OTA update tasks.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + 'PageSize' => [ + 'title' => '每页数量', + 'description' => 'The number of entries on each page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNumber' => [ + 'title' => '页码', + 'description' => 'The page number of the returned page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TaskList' => [ + 'title' => 'AppInstanceGroupModels', + 'description' => 'The OTA update tasks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'OtaVersion' => [ + 'title' => 'ota版本,格式举例:0.0.1-R-20220708.110604', + 'description' => 'The OTA version.'."\n", + 'type' => 'string', + 'example' => '0.0.1-R-20220708.110604', + ], + 'TaskDisplayStatus' => [ + 'title' => '任务展示状态', + 'description' => 'The task status.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* FAILED'."\n" + .'* RUNNING'."\n" + .'* TERMINATED'."\n" + .'* PART_FINISHED'."\n" + .'* STANDBY'."\n" + .'* FINISHED'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'FAILED' => '', + 'RUNNING' => '', + 'TERMINATED' => '', + 'PART_FINISHED' => '', + 'STANDBY' => '', + 'FINISHED' => '', + ], + 'example' => 'RUNNING', + 'enum' => [ + 'STANDBY', + 'RUNNING', + 'FAILED', + 'TERMINATED', + 'FINISHED', + 'PART_FINISHED', + ], + ], + 'TaskStartTime' => [ + 'title' => '任务开始时间,ISO-8601格式', + 'description' => 'The start time of the OTA update task. The time follows the ISO 8601 standard.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'example' => '2022-08-04T14:36:00+08:00', + ], + 'TaskId' => [ + 'title' => '任务id', + 'description' => 'The task ID.'."\n", + 'type' => 'string', + 'example' => 'ota-be7jzm29wrrz5****', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TotalCount\\": 6,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TaskList\\": [\\n {\\n \\"OtaVersion\\": \\"0.0.1-R-20220708.110604\\",\\n \\"TaskDisplayStatus\\": \\"RUNNING\\",\\n \\"TaskStartTime\\": \\"2022-08-04T14:36:00+08:00\\",\\n \\"TaskId\\": \\"ota-be7jzm29wrrz5****\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListOtaTask', + ], + 'GetOtaTaskByTaskId' => [ + 'summary' => 'Queries the details of an over-the-air (OTA) update task, including the available versions and version description.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'formData', + 'schema' => [ + 'title' => 'ota任务id', + 'description' => 'The ID of the OTA update task. You can call the [ListAppInstanceGroup](~~428506~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ota-be7jzm29wrrz5****', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Code' => [ + 'title' => '错误码', + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'OtaTask.Running', + ], + 'Message' => [ + 'title' => '提示', + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'The task is running and cannot be sumitted.', + ], + 'ReleaseNote' => [ + 'title' => '版本说明', + 'description' => 'The version description.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'OtaVersion' => [ + 'title' => '版本号', + 'description' => 'The OTA version.'."\n", + 'type' => 'string', + 'example' => '0.0.1-R-20220708.110604', + ], + 'TaskStartTime' => [ + 'title' => '任务执行时间,ISO-8601格式', + 'description' => 'The execution time of the OTA update task. The time follows the ISO 8601 standard.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'example' => '2022-08-04T14:36:00+08:00', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Code\\": \\"OtaTask.Running\\",\\n \\"Message\\": \\"The task is running and cannot be sumitted.\\",\\n \\"ReleaseNote\\": \\"测试升级\\",\\n \\"OtaVersion\\": \\"0.0.1-R-20220708.110604\\",\\n \\"TaskStartTime\\": \\"2022-08-04T14:36:00+08:00\\"\\n}","type":"json"}]', + 'title' => 'GetOtaTaskByTaskId', + ], + 'ApproveOtaTask' => [ + 'summary' => 'Sets the execution time of an over-the-air (OTA) update task.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'AppInstanceGroupId', + 'in' => 'formData', + 'schema' => [ + 'title' => '实例组id', + 'description' => 'The ID of the delivery group. You can call the [ListAppInstanceGroup](~~428506~~) operation to obtain the ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-9ciijz60n4xsv****', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'formData', + 'schema' => [ + 'title' => '请求发起者所在地域', + 'description' => 'The ID of the region where the delivery group resides. You can call the [ListRegions](~~428500~~) operation to query the list of regions supported by App Streaming.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'TaskId', + 'in' => 'formData', + 'schema' => [ + 'title' => 'ota任务id', + 'description' => 'The ID of the OTA update task. You can call the [ListAppInstanceGroup](~~428506~~) operation to obtain the ID.'."\n" + ."\n" + .'> Each successful call to the `ApproveOtaTask` operation causes a value change of this parameter.`` Before you call this operation, call the `ListAppInstanceGroup` operation again to obtain the latest value of this parameter.``'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ota-be7jzm29wrrz5****', + ], + ], + [ + 'name' => 'OtaType', + 'in' => 'formData', + 'schema' => [ + 'title' => 'ota类型,取值:'."\n" + .'Fota : agent组件更新'."\n" + .'ImageUpdate : 镜像更新'."\n" + .'AppUpdate : 应用更新', + 'description' => 'The type of the OTA update task.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Fota: update of the system components of Alibaba Cloud Workspace'."\n" + .'* AppUpdate'."\n" + .'* ImageUpdate'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'Fota' => '', + ], + 'example' => 'Fota', + 'enum' => [ + 'Fota', + 'ImageUpdate', + 'AppUpdate', + ], + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'title' => '开始时间,iso8601格式', + 'description' => 'The start time of the OTA update task. The time follows the ISO 8601 standard.'."\n", + 'type' => 'string', + 'format' => 'iso8601', + 'required' => true, + 'example' => '2022-08-04T14:36:00+08:00', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Code' => [ + 'description' => 'The execution result. If the request was successful, `success` is returned. If the request failed, an error message is returned.'."\n", + 'type' => 'string', + 'example' => 'OtaTask.Running', + ], + 'Message' => [ + 'description' => 'The error message. If the value of `Code` is `success`, this parameter is not returned.'."\n", + 'type' => 'string', + 'example' => 'The task is running and cannot be sumitted.', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Code\\": \\"OtaTask.Running\\",\\n \\"Message\\": \\"The task is running and cannot be sumitted.\\"\\n}","type":"json"}]', + 'title' => 'ApproveOtaTask', + ], + 'ListTenantConfig' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'PlainResult<ListAliUserPropertyModel>', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TenantConfigModel' => [ + 'description' => 'The user configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'AppInstanceGroupExpireRemind' => [ + 'description' => 'Indicates whether the resource expiration reminder feature is enabled.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TenantConfigModel\\": {\\n \\"AppInstanceGroupExpireRemind\\": true\\n }\\n}","type":"json"}]', + 'title' => 'ListTenantConfig', + 'summary' => 'Queries the configurations of the administrator account, such as whether the resource expiration reminder feature is enabled.', + ], + 'ModifyTenantConfig' => [ + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + 'http', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'AppInstanceGroupExpireRemind', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Specifies whether to enable the resource expiration reminder feature.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true'."\n" + .'* false'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'true' => '', + 'false' => '', + ], + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'BaseResult', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'ModifyTenantConfig', + 'summary' => 'Modifies the configurations of the administrator account, such as whether to enable the resource expiration reminder feature.', + ], + 'ListTagCloudResources' => [ + 'summary' => 'Queries the tags added to one or more cloud resources.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '266102', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源类型。取值范围:'."\n" + .'AliUid:租户 '."\n" + .'AppId:应用ID'."\n" + .'AppInstanceGroupId:交付组'."\n" + .'WyId:用户', + 'description' => 'The type of the cloud resource.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AppId: app ID.'."\n" + .'* WyId: Alibaba Cloud Workspace user ID.'."\n" + .'* AppInstanceGroupId: delivery group ID.'."\n" + .'* AliUid: tenant ID.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'AppId' => '', + 'WyId' => '', + 'AppInstanceGroupId' => '', + 'AliUid' => '', + ], + 'example' => 'AppInstanceGroupId', + ], + ], + [ + 'name' => 'ResourceIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '资源ID列表,最多支持50个。'."\n" + .'资源类型为租户的时候不需要指定。', + 'description' => 'The resource IDs. You can specify up to 50 resource IDs. You do not need to specify this parameter if you set ResourceType to AliUid.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '资源ID。', + 'description' => 'The resource ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-001', + 'maxLength' => 64, + 'minLength' => 1, + ], + 'required' => false, + 'maxItems' => 50, + 'minItems' => 0, + ], + ], + [ + 'name' => 'Scope', + 'in' => 'formData', + 'schema' => [ + 'title' => '标签类型。取值范围:'."\n" + .'Custom:自定义标签。'."\n" + .'System:系统标签。'."\n" + .'All:全部标签。'."\n" + .'默认值:All。', + 'description' => 'The tag type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* All (default): all tags.'."\n" + .'* Custom: custom tag.'."\n" + .'* System: system tag.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'All' => '', + 'Custom' => '', + 'System' => '', + ], + 'example' => 'Custom', + 'maxLength' => 20, + 'minLength' => 0, + 'enum' => [ + 'Custom', + 'System', + 'All', + ], + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页时每页显示的数据行数。'."\n" + .'最大值:1000。默认值:50。', + 'description' => 'The number of entries per page. Maximum value: 1000. Default value: 50.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '1000', + 'minimum' => '1', + 'example' => '50', + 'default' => '50', + ], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '下一个查询开始的 Token。', + 'description' => 'The pagination token that is used in the next request to retrieve a new page of results.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ptnJAAAAAAAxNzE5OTEwNQ==', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'NextToken' => [ + 'title' => '根据NextToken判断是否具备下一个查询开始的 Token。', + 'description' => 'Indicates whether the next query is required.'."\n", + 'type' => 'string', + 'example' => 'AAAAAYRHtOLVQzCYj17y+OP7LZRrUJaF4rnBGQkWwMiVHlLZBB1w3Us37CVvhvyM0TXavA==', + ], + 'TotalCount' => [ + 'title' => '总数。', + 'description' => 'The total number of entries.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + ], + 'ResourceTags' => [ + 'title' => '资源绑定的标签信息列表。', + 'description' => 'The tags added to the cloud resources.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '资源绑定的标签信息。', + 'description' => 'The tag added to the cloud resource.'."\n", + 'type' => 'object', + 'properties' => [ + 'ResourceType' => [ + 'title' => '资源类型。取值范围:'."\n" + .'AliUid:租户 '."\n" + .'AppId:应用ID'."\n" + .'AppInstanceGroupId:交付组'."\n" + .'WyId:用户', + 'description' => 'The type of the cloud resource.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AppId: app ID.'."\n" + .'* WyId: Alibaba Cloud Workspace user ID.'."\n" + .'* AppInstanceGroupId: delivery group ID.'."\n" + .'* AliUid: tenant ID.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'AppId' => '', + 'WyId' => '', + 'AppInstanceGroupId' => '', + 'AliUid' => '', + ], + 'example' => 'AppInstanceGroupId', + ], + 'ResourceId' => [ + 'title' => '资源ID。', + 'description' => 'The resource ID.'."\n", + 'type' => 'string', + 'example' => 'aig-0001', + ], + 'Tags' => [ + 'title' => '标签信息列表。', + 'description' => 'The tags.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '标签信息。', + 'description' => 'The tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键', + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'Resolution', + ], + 'Value' => [ + 'title' => '标签值', + 'description' => 'The tag value.'."\n", + 'type' => 'string', + 'example' => '1080p', + ], + 'Scope' => [ + 'title' => '标签类型。取值范围:'."\n" + .'Custom:自定义标签。'."\n" + .'System:系统标签。', + 'description' => 'The tag type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Custom: custom tag.'."\n" + .'* System: system tag.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Custom' => '', + 'System' => '', + ], + 'example' => 'Custom', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'ServiceUnavailable', + 'errorMessage' => 'Service unavailable. Please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"NextToken\\": \\"AAAAAYRHtOLVQzCYj17y+OP7LZRrUJaF4rnBGQkWwMiVHlLZBB1w3Us37CVvhvyM0TXavA==\\",\\n \\"TotalCount\\": 15,\\n \\"ResourceTags\\": [\\n {\\n \\"ResourceType\\": \\"AppInstanceGroupId\\",\\n \\"ResourceId\\": \\"aig-0001\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"Resolution\\",\\n \\"Value\\": \\"1080p\\",\\n \\"Scope\\": \\"Custom\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListTagCloudResources', + ], + 'TagCloudResources' => [ + 'summary' => 'Creates and adds tags to cloud resources and updates the values of existing cloud resource tags.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '266104', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源类型。取值范围:'."\n" + .'AliUid:租户 '."\n" + .'AppId:应用ID'."\n" + .'AppInstanceGroupId:交付组'."\n" + .'WyId:用户', + 'description' => 'The type of the cloud resource.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CenterImageId: center image ID.'."\n" + .'* AppId: app ID.'."\n" + .'* WyId: Alibaba Cloud Workspace user ID.'."\n" + .'* AppInstanceGroupId: delivery group ID.'."\n" + .'* AliUid: tenant ID.'."\n", + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'CenterImageId' => '', + 'AppId' => '', + 'WyId' => '', + 'AppInstanceGroupId' => '', + 'AliUid' => '', + ], + 'example' => 'AppInstanceGroupId', + 'maxLength' => 30, + 'minLength' => 1, + 'enum' => [ + 'AliUid', + 'AppId', + 'AppInstanceGroupId', + 'WyId', + 'CenterImageId', + ], + ], + ], + [ + 'name' => 'ResourceIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '资源ID列表,最多支持50个'."\n" + .'资源类型为租户的时候不需要指定。', + 'description' => 'The resource IDs. You can specify up to 50 resource IDs. You do not need to specify this parameter if you set ResourceType to AliUid.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '资源ID', + 'description' => 'The resource ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-0002', + 'maxLength' => 64, + 'minLength' => 1, + ], + 'required' => false, + 'maxItems' => 50, + 'minItems' => 0, + ], + ], + [ + 'name' => 'Tags', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '自定义(Custom+指定范围的System)标签列表,最多支持10个'."\n" + .'● 标签键长度范围:1~128 个字符。'."\n" + .'● 标签值长度范围:1~128 个字符。'."\n" + .'● 区分大小写。'."\n" + .'● 同一个资源上的同一个标签键只能对应一个标签值。如果您尝试添加已有标签键,则对应的标签值会更新为新值。', + 'description' => 'The tags that you want to remove from the cloud resources. System and custom tags are supported.'."\n" + ."\n" + .'* Valid values for system tags:'."\n" + ."\n" + .' * `System/Scheduler/GRAYSCALE`: canary tags.'."\n" + .' * `System/Scheduler/STOP_NEW_USER_CONNECTION`: tags used to stop new users bound to the delivery group from establishing a connection.'."\n" + ."\n" + .'* You can create up to 20 custom tags.'."\n" + ."\n" + .'> Each tag key on a resource can have only one tag value. If you create a tag that has the same key as an existing tag, the value of the existing tag is overwritten.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '标签信息。', + 'description' => 'The tag of the model.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'description' => 'The key of a tag. The value must be 1 to 128 characters in length and is case-sensitive. The name must be 1 to 128 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'Resolution', + 'maxLength' => 128, + 'minLength' => 1, + ], + 'Value' => [ + 'title' => '标签值。', + 'description' => 'The value of a tag. The value must be 1 to 128 characters in length and is case-sensitive. The name must be 1 to 128 characters in length.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '720p', + 'maxLength' => 256, + 'minLength' => 0, + ], + ], + 'required' => true, + ], + 'required' => true, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '', + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'FailedResources' => [ + 'title' => '失败的资源与标签信息列表。', + 'description' => 'The cloud resources on which the operation failed and the corresponding tags.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '失败的资源与标签信息。', + 'description' => 'The cloud resource on which the operation failed and the corresponding tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'ResourceType' => [ + 'title' => '资源类型。取值范围:'."\n" + .'AliUid:租户 '."\n" + .'AppId:应用ID'."\n" + .'AppInstanceGroupId:交付组'."\n" + .'WyId:用户', + 'description' => 'The type of the cloud resource.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* CenterImageId: center image ID.'."\n" + .'* AppId: app ID.'."\n" + .'* WyId: Alibaba Cloud Workspace user ID.'."\n" + .'* AppInstanceGroupId: delivery group ID.'."\n" + .'* AliUid: tenant ID.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'CenterImageId' => '', + 'AppId' => '', + 'WyId' => '', + 'AppInstanceGroupId' => '', + 'AliUid' => '', + ], + 'example' => 'AppInstanceGroupId', + ], + 'ResourceId' => [ + 'title' => '资源ID。', + 'description' => '', + 'type' => 'string', + 'example' => 'aig-001', + ], + 'Tags' => [ + 'title' => '失败的标签信息列表。', + 'description' => '', + 'type' => 'array', + 'items' => [ + 'title' => '失败的标签信息。', + 'description' => '', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'description' => '', + 'type' => 'string', + 'example' => 'System/Scheduler/STOP_NEW_USER_CONNECTION', + ], + 'Value' => [ + 'title' => '标签值。', + 'description' => '', + 'type' => 'string', + 'example' => 'true', + ], + 'Scope' => [ + 'title' => '标签类型。取值范围:'."\n" + .'Custom:自定义标签。'."\n" + .'System:系统标签。', + 'description' => '', + 'type' => 'string', + 'enumValueTitles' => [ + 'Custom' => '', + 'System' => '', + ], + 'example' => 'System', + ], + ], + ], + ], + 'Code' => [ + 'title' => '错误码。', + 'description' => '', + 'type' => 'string', + 'example' => 'TAG_KEY_DUPLICATED', + ], + 'Message' => [ + 'title' => '错误描述', + 'description' => '', + 'type' => 'string', + 'example' => 'Duplicate tag keys exist.', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'ServiceUnavailable', + 'errorMessage' => 'Service unavailable. Please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"FailedResources\\": [\\n {\\n \\"ResourceType\\": \\"AppInstanceGroupId\\",\\n \\"ResourceId\\": \\"aig-001\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"System/Scheduler/STOP_NEW_USER_CONNECTION\\",\\n \\"Value\\": \\"true\\",\\n \\"Scope\\": \\"System\\"\\n }\\n ],\\n \\"Code\\": \\"TAG_KEY_DUPLICATED\\",\\n \\"Message\\": \\"Duplicate tag keys exist.\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'TagCloudResources', + ], + 'UntagCloudResources' => [ + 'summary' => 'Removes tags from cloud resources.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '266118', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'formData', + 'schema' => [ + 'title' => '资源类型。取值范围:'."\n" + .'AliUid:租户 '."\n" + .'AppId:应用ID'."\n" + .'AppInstanceGroupId:交付组'."\n" + .'WyId:用户', + 'description' => 'The type of the resource from which you want to remove tags.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AppId: app ID.'."\n" + .'* WyId: Alibaba Cloud Workspace user ID.'."\n" + .'* AppInstanceGroupId: delivery group ID.'."\n" + .'* AliUid: tenant ID.', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'AppId' => '', + 'WyId' => '', + 'AppInstanceGroupId' => '', + 'AliUid' => '', + ], + 'example' => 'AppInstanceGroupId', + ], + ], + [ + 'name' => 'ResourceIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '资源ID列表,最多支持50个'."\n" + .'资源类型为租户的时候不需要指定。', + 'description' => 'The resource IDs. You can specify up to 50 resource IDs. You do not need to specify this parameter if you set ResourceType to AliUid.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '资源ID', + 'description' => 'The resource ID.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'aig-0009', + 'maxLength' => 64, + 'minLength' => 1, + ], + 'required' => false, + 'maxItems' => 50, + 'minItems' => 0, + ], + ], + [ + 'name' => 'TagKeys', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'title' => '自定义(Custom+指定范围的System)标签键列表,最多支持10个', + 'description' => 'The tags that you want to remove from the cloud resources. System and custom tags are supported. You can specify up to 10 tags.'."\n" + ."\n" + .'Valid values for system tags:'."\n" + ."\n" + .'* `System/Scheduler/GRAYSCALE`: canary tags.'."\n" + .'* `System/Scheduler/STOP_NEW_USER_CONNECTION`: tags used to stop new users bound to the delivery group from establishing a connection.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '标签键', + 'description' => 'The tag key. The value must be 1 to 128 characters in length and is case-sensitive.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'System/Scheduler/GRAYSCALE', + 'maxLength' => 128, + 'minLength' => 1, + ], + 'required' => true, + 'maxItems' => 20, + 'minItems' => 1, + ], + ], + ], + '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' => 'E25FC620-6B6F-12D2-A992-AD8727DC****', + ], + 'FailedResources' => [ + 'title' => '失败的资源与标签信息列表。', + 'description' => 'The cloud resources whose tags failed to be removed and the corresponding tags.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '失败的资源与标签信息。', + 'description' => 'The cloud resource whose tag failed to be removed and the corresponding tag.'."\n", + 'type' => 'object', + 'properties' => [ + 'ResourceType' => [ + 'title' => '资源类型。'."\n" + .'● 租户 AliUid'."\n" + .'● 应用ID AppId'."\n" + .'● 交付组 AppInstanceGroupId'."\n" + .'● 用户 WyId', + 'description' => 'The type of the cloud resource.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* AppId: app ID.'."\n" + .'* WyId: Alibaba Cloud Workspace user ID.'."\n" + .'* AppInstanceGroupId: delivery group ID.'."\n" + .'* AliUid: tenant ID.', + 'type' => 'string', + 'enumValueTitles' => [ + 'AppId' => '', + 'WyId' => '', + 'AppInstanceGroupId' => '', + 'AliUid' => '', + ], + 'example' => 'AppInstanceGroupId', + ], + 'ResourceId' => [ + 'title' => '资源ID。', + 'description' => 'The resource IDs.'."\n", + 'type' => 'string', + 'example' => 'aig-00000001', + ], + 'Tags' => [ + 'title' => '失败的标签信息列表。', + 'description' => 'The tags that failed to be removed from the cloud resources.'."\n", + 'type' => 'array', + 'items' => [ + 'title' => '失败的标签信息。', + 'description' => 'The tag that failed to be removed from the cloud resource.'."\n", + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'title' => '标签键。', + 'description' => 'The tag key.'."\n", + 'type' => 'string', + 'example' => 'Resolution', + ], + 'Scope' => [ + 'title' => '标签类型。取值范围:'."\n" + .'Custom:自定义标签。'."\n" + .'System:系统标签。', + 'description' => 'The tag type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Custom: custom tag.'."\n" + .'* System: system tag.'."\n", + 'type' => 'string', + 'enumValueTitles' => [ + 'Custom' => '', + 'System' => '', + ], + 'example' => 'Custom', + ], + ], + ], + ], + 'Code' => [ + 'title' => '错误码。', + 'description' => 'The error code.'."\n", + 'type' => 'string', + 'example' => 'UNTAG_RESOURCE_FAILED', + ], + 'Message' => [ + 'title' => '错误描述', + 'description' => 'The error message.'."\n", + 'type' => 'string', + 'example' => 'Failed to untag resource.', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'ServiceUnavailable', + 'errorMessage' => 'Service unavailable. Please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E25FC620-6B6F-12D2-A992-AD8727DC****\\",\\n \\"FailedResources\\": [\\n {\\n \\"ResourceType\\": \\"AppInstanceGroupId\\",\\n \\"ResourceId\\": \\"aig-00000001\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"Resolution\\",\\n \\"Scope\\": \\"Custom\\"\\n }\\n ],\\n \\"Code\\": \\"UNTAG_RESOURCE_FAILED\\",\\n \\"Message\\": \\"Failed to untag resource.\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'UntagCloudResources', + ], + 'DescribeWuyingServerEipInfo' => [ + 'summary' => 'Queries the Elastic IP Addresses (EIPs) of workstations.', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + ], + 'parameters' => [ + [ + 'name' => 'WuyingServerId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ws-0bw2f11****dial', + ], + ], + [ + 'name' => 'Isp', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The Internet service provider (ISP). Valid values:'."\n" + ."\n" + .'* ChinaMobile: China Mobile'."\n" + .'* ChinaTelecom: China Telecom'."\n" + .'* ChinaUnicom: China Unicom'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ChinaTelecom', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'EipInfoModel' => [ + 'description' => 'The information about the associated EIP.'."\n", + 'type' => 'object', + 'properties' => [ + 'NetworkInterfaceId' => [ + 'description' => 'The ID of the elastic network interface (ENI).'."\n", + 'type' => 'string', + 'example' => 'eni-bp174p2xxxxxbyh02ix', + ], + 'IpAddress' => [ + 'description' => 'The public IP address.'."\n", + 'type' => 'string', + 'example' => '171.xxx.xxx.221', + ], + 'ServerPortRange' => [ + 'description' => 'The port range.'."\n", + 'type' => 'string', + 'example' => '6606/6607', + ], + 'EipId' => [ + 'type' => 'string', + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"EipInfoModel\\": {\\n \\"NetworkInterfaceId\\": \\"eni-bp174p2xxxxxbyh02ix\\",\\n \\"IpAddress\\": \\"171.xxx.xxx.221\\",\\n \\"ServerPortRange\\": \\"6606/6607\\",\\n \\"EipId\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'DescribeWuyingServerEipInfo', + ], + 'CreateWuyingServer' => [ + 'summary' => 'Create one or more workstations.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingU1TTUH', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'WuyingServerName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the workstation. The numeric suffix is automatically added when multiple workstations are created.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'exampleServerName', + ], + ], + [ + 'name' => 'Amount', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Quantity.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'ServerInstanceType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Workstation specifications.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eds.proworkstation_flagship_elite_ne.96c384g.192g4x', + ], + ], + [ + 'name' => 'SystemDiskSize', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The size of the system disk. Unit: GB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '100', + ], + ], + [ + 'name' => 'SystemDiskCategory', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The system disk category.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cloud_auto.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'cloud_auto' => 'cloud_auto', + ], + 'example' => 'cloud_auto', + ], + ], + [ + 'name' => 'SystemDiskPerformanceLevel', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The performance level (PL) of the system disk.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'PL0', + ], + ], + [ + 'name' => 'DataDisk', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The list of data disks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the data disk.'."\n", + 'type' => 'object', + 'properties' => [ + 'DataDiskSize' => [ + 'description' => 'The data disk size.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '100', + ], + 'DataDiskCategory' => [ + 'description' => 'The data disk category.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* cloud_auto.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'cloud_auto' => 'cloud_auto', + ], + 'example' => 'cloud_auto', + ], + 'DataDiskPerformanceLevel' => [ + 'description' => 'The PL of the data disk.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'PL0', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the image.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'img-bp13mu****', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Region.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'OfficeSiteId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The office network IDs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou+dir-643067****', + ], + ], + [ + 'name' => 'Password', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Workstation login password.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'YourPassword123', + ], + ], + [ + 'name' => 'ChargeType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The billing method.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* PrePaid: subscription'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'PrePaid' => '', + ], + 'example' => 'PrePaid', + ], + ], + [ + 'name' => 'Period', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The subscription period.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The time unit.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Month'."\n" + .'* Year'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Month' => '', + 'Year' => '', + ], + 'example' => 'Month', + ], + ], + [ + 'name' => 'AutoPay', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Auto payment.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'AutoRenew', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Auto-renewal.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'PromotionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the discount.'."\n" + ."\n" + .'> If PromotionId is set, it will try to apply the corresponding discount.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '17440009****', + ], + ], + [ + 'name' => 'VSwitchIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The list of office network vSwitches.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The vSwitch IDs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'vsw-55vk6****5vatze7jg', + ], + 'required' => false, + 'maxItems' => 100, + ], + ], + [ + 'name' => 'VirtualNodePoolId', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + 'required' => false, + 'example' => 'vnp-0b************gyw', + ], + ], + [ + 'name' => 'NetworkStrategyType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The type of the network policy (in invitational preview).'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'DirectIp', + ], + ], + [ + 'name' => 'Bandwidth', + 'in' => 'formData', + 'schema' => [ + 'description' => 'bandwidth value, the NetworkStrategyType is valid for DirectIp. Unit: Mbps, range 2~100'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '1000', + 'minimum' => '2', + 'example' => '10', + ], + ], + [ + 'name' => 'IdempotenceToken', + 'in' => 'formData', + 'schema' => [ + 'title' => '幂等性令牌,确保操作唯一性', + 'description' => 'Idempotence token to ensure operation uniqueness'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '6a1b8c3d', + ], + ], + [ + 'name' => 'ServerPortRange', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'SavingPlanId', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'HostName', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'SubPayType', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'MaxPrice', + 'in' => 'formData', + 'schema' => [ + 'type' => 'number', + 'format' => 'float', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response to the request.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'Data' => [ + 'description' => 'The response data.'."\n", + 'type' => 'object', + 'properties' => [ + 'OrderId' => [ + 'description' => 'The order ID.'."\n", + 'type' => 'string', + 'example' => '23429322113****', + ], + 'WuyingServerIdList' => [ + 'description' => 'The list of workstation IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'example' => 'ws-0byd****2lwi', + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"Data\\": {\\n \\"OrderId\\": \\"23429322113****\\",\\n \\"WuyingServerIdList\\": [\\n \\"ws-0byd****2lwi\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => 'CreateWuyingServer', + 'description' => '1. Project is equivalent to the Resource Configuration module of the Cloud Flow console'."\n" + ."\n" + .'2. If there are multiple versions behind the input parameter ContentId:'."\n" + ."\n" + .' **'."\n" + ."\n" + .' **Note** The default version is used.'."\n" + ."\n" + .' Bind simultaneously'."\n" + ."\n" + .'3. You can call the current interface only if the default version of Content is available.'."\n", + ], + 'ListWuyingServer' => [ + 'summary' => 'Queries the list of workstations.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageSize', + 'in' => 'formData', + 'schema' => [ + 'title' => '分页大小', + 'description' => 'The number of records per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '100', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'formData', + 'schema' => [ + 'title' => '页码', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'BizType', + 'in' => 'formData', + 'schema' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + ], + [ + 'name' => 'WuyingServerNameOrId', + 'in' => 'formData', + 'schema' => [ + 'title' => '研发主机名称', + 'description' => 'The workstation name or workstation ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'exampleServerName', + ], + ], + [ + 'name' => 'WuyingServerIdList', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The list of workstation IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0bydg****2lwi', + ], + 'required' => false, + ], + ], + [ + 'name' => 'ServerInstanceType', + 'in' => 'formData', + 'schema' => [ + 'title' => '规格', + 'description' => 'Workstation specifications.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'eds.proworkstation_flagship_elite.32c64g.48g1x', + ], + ], + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => [ + 'title' => '镜像ID', + 'description' => 'The image ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'img-bp13mu****', + ], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'formData', + 'schema' => [ + 'title' => '地域', + 'description' => 'The region ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'OfficeSiteId', + 'in' => 'formData', + 'schema' => [ + 'title' => '工作区ID', + 'description' => 'The office network IDs.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'cn-hangzhou+dir-172301****', + ], + ], + [ + 'name' => 'ChargeType', + 'in' => 'formData', + 'schema' => [ + 'title' => '付费类型', + 'description' => 'The billing method of the Internet access package.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'PrePaid', + ], + ], + [ + 'name' => 'VirtualNodePoolId', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + 'required' => false, + ], + ], + [ + 'name' => 'AddVirtualNodePoolStatusList', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'Status', + 'in' => 'formData', + 'schema' => [ + 'title' => '状态', + 'description' => 'The status of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'RUNNING', + ], + ], + [ + 'name' => 'Users', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + ], + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TotalCount' => [ + 'title' => '总量', + 'description' => 'The total number of entries returned.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + ], + 'PageSize' => [ + 'title' => '分页大小', + 'description' => 'The number of entries per page.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageNumber' => [ + 'title' => '页码', + 'description' => 'The page number.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'WuyingServerList' => [ + 'description' => 'The list of workstation information.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AliUid' => [ + 'type' => 'integer', + 'format' => 'int64', + ], + 'WuyingServerId' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'example' => 'ws-0byd****8wn2lwi', + ], + 'WuyingServerName' => [ + 'description' => 'The name of the workstation.'."\n", + 'type' => 'string', + 'example' => 'exampleServerName', + ], + 'Status' => [ + 'description' => 'The status of the workstation.'."\n", + 'type' => 'string', + 'example' => 'RUNNING', + ], + 'ServerInstanceTypeInfo' => [ + 'description' => 'The specifications.'."\n", + 'type' => 'object', + 'properties' => [ + 'ServerInstanceType' => [ + 'description' => 'Workstation specifications.'."\n", + 'type' => 'string', + 'example' => 'eds.proworkstation_flagship_elite_ne.96c384g.192g4x', + ], + 'Cpu' => [ + 'description' => 'The number of vCPUs.'."\n", + 'type' => 'string', + 'example' => '96', + ], + 'Memory' => [ + 'description' => 'The memory size. Unit: MB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '393,216', + ], + 'Gpu' => [ + 'description' => 'The number of GPUs.'."\n", + 'type' => 'string', + 'example' => '4', + ], + 'GpuMemory' => [ + 'description' => 'The memory size. Unit: MB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '196,608', + ], + 'GpuSpec' => [ + 'type' => 'string', + ], + ], + ], + 'SystemDiskSize' => [ + 'description' => 'The size of the system disk. Unit: GiB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'SystemDiskCategory' => [ + 'description' => 'The type of the system disk.'."\n", + 'type' => 'string', + 'example' => 'cloud_auto', + ], + 'SystemDiskPerformanceLevel' => [ + 'description' => 'The performance level (PL) of the system disk.'."\n", + 'type' => 'string', + 'example' => 'PL0', + ], + 'DataDisk' => [ + 'description' => 'The data disks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The information about the data disk.'."\n", + 'type' => 'object', + 'properties' => [ + 'DataDiskSize' => [ + 'description' => 'The size of the data disk. Unit: GB.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '200', + ], + 'DataDiskCategory' => [ + 'description' => 'The category of data disk.'."\n", + 'type' => 'string', + 'example' => 'cloud_auto', + ], + 'DataDiskPerformanceLevel' => [ + 'description' => 'The PL of the data disk.'."\n", + 'type' => 'string', + 'example' => 'PL0', + ], + 'DataDiskId' => [ + 'type' => 'string', + ], + 'DataDiskNo' => [ + 'type' => 'string', + ], + ], + ], + ], + 'ImageId' => [ + 'description' => 'The ID of the custom image.'."\n", + 'type' => 'string', + 'example' => 'imgc-06****oagaev', + ], + 'ImageName' => [ + 'description' => 'The image name.'."\n", + 'type' => 'string', + 'example' => '', + ], + 'OsType' => [ + 'description' => 'The OS type.'."\n", + 'type' => 'string', + 'example' => 'Linux', + ], + 'BizRegionId' => [ + 'description' => 'Region.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'OfficeSiteId' => [ + 'description' => 'The ID of the office network.'."\n", + 'type' => 'string', + 'example' => 'cn-hangzhou+dir-1b****ayv2', + ], + 'OfficeSiteName' => [ + 'description' => 'The office network name.'."\n", + 'type' => 'string', + 'example' => 'exampleOfficeSite', + ], + 'OfficeSiteType' => [ + 'description' => 'The type of the office network.'."\n", + 'type' => 'string', + 'example' => 'SIMPLE', + ], + 'NetworkInterfaceIp' => [ + 'description' => 'The private IP address.'."\n", + 'type' => 'string', + 'example' => '10.80.21.149', + ], + 'ChargeType' => [ + 'description' => 'The billing method.'."\n", + 'type' => 'string', + 'example' => 'PrePaid', + ], + 'CreateTime' => [ + 'description' => 'The time when the storage resource was created.'."\n", + 'type' => 'string', + 'example' => '2025-08-02T16:52:11.000+00:00', + ], + 'ExpiredTime' => [ + 'description' => 'The time when the subscription instance expires.'."\n", + 'type' => 'string', + 'example' => '2025-09-03T16:00:00.000+00:00', + ], + 'VirtualNodePoolId' => [ + 'type' => 'string', + ], + 'AddVirtualNodePoolStatus' => [ + 'type' => 'string', + ], + 'SubPayType' => [ + 'type' => 'string', + ], + 'MaxPrice' => [ + 'type' => 'number', + 'format' => 'float', + ], + 'VirtualKubeletIp' => [ + 'type' => 'string', + ], + 'ResourceSessionStatus' => [ + 'type' => 'string', + ], + 'Bandwidth' => [ + 'type' => 'integer', + 'format' => 'int32', + ], + 'FotaVersion' => [ + 'type' => 'string', + ], + 'TimerGroupId' => [ + 'title' => '定时任务ID。', + 'type' => 'string', + ], + 'SystemDiskId' => [ + 'type' => 'string', + ], + 'InstanceInfoList' => [ + 'description' => 'The list of information about the workstation instance.'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => [ + 'description' => 'The ID of the instance.'."\n", + 'type' => 'string', + 'example' => 'p-0ceitx****c5', + ], + 'NetworkInterfaceId' => [ + 'description' => 'The ID of the ENI.'."\n", + 'type' => 'string', + 'example' => 'eni-uf65b****dfnt3wb', + ], + ], + 'description' => '', + ], + ], + 'SecurityGroupIds' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + ], + ], + 'Users' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + ], + ], + 'Sessions' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ResourceSessionStartTime' => [ + 'type' => 'string', + ], + 'UserId' => [ + 'type' => 'string', + ], + ], + ], + ], + 'PolicyGroupIdList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + ], + ], + ], + 'description' => '', + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TotalCount\\": 15,\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"WuyingServerList\\": [\\n {\\n \\"AliUid\\": 0,\\n \\"WuyingServerId\\": \\"ws-0byd****8wn2lwi\\",\\n \\"WuyingServerName\\": \\"exampleServerName\\",\\n \\"Status\\": \\"RUNNING\\",\\n \\"ServerInstanceTypeInfo\\": {\\n \\"ServerInstanceType\\": \\"eds.proworkstation_flagship_elite_ne.96c384g.192g4x\\",\\n \\"Cpu\\": \\"96\\",\\n \\"Memory\\": 0,\\n \\"Gpu\\": \\"4\\",\\n \\"GpuMemory\\": 0,\\n \\"GpuSpec\\": \\"\\"\\n },\\n \\"SystemDiskSize\\": 100,\\n \\"SystemDiskCategory\\": \\"cloud_auto\\",\\n \\"SystemDiskPerformanceLevel\\": \\"PL0\\",\\n \\"DataDisk\\": [\\n {\\n \\"DataDiskSize\\": 200,\\n \\"DataDiskCategory\\": \\"cloud_auto\\",\\n \\"DataDiskPerformanceLevel\\": \\"PL0\\",\\n \\"DataDiskId\\": \\"\\",\\n \\"DataDiskNo\\": \\"\\"\\n }\\n ],\\n \\"ImageId\\": \\"imgc-06****oagaev\\",\\n \\"ImageName\\": \\"Alibaba Cloud Linux 3.2104 LTS 64位\\",\\n \\"OsType\\": \\"Linux\\",\\n \\"BizRegionId\\": \\"cn-hangzhou\\",\\n \\"OfficeSiteId\\": \\"cn-hangzhou+dir-1b****ayv2\\",\\n \\"OfficeSiteName\\": \\"exampleOfficeSite\\",\\n \\"OfficeSiteType\\": \\"SIMPLE\\",\\n \\"NetworkInterfaceIp\\": \\"10.80.21.149\\",\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"CreateTime\\": \\"2025-08-02T16:52:11.000+00:00\\",\\n \\"ExpiredTime\\": \\"2025-09-03T16:00:00.000+00:00\\",\\n \\"VirtualNodePoolId\\": \\"\\",\\n \\"AddVirtualNodePoolStatus\\": \\"\\",\\n \\"SubPayType\\": \\"\\",\\n \\"MaxPrice\\": 0,\\n \\"VirtualKubeletIp\\": \\"\\",\\n \\"ResourceSessionStatus\\": \\"\\",\\n \\"Bandwidth\\": 0,\\n \\"FotaVersion\\": \\"\\",\\n \\"TimerGroupId\\": \\"\\",\\n \\"SystemDiskId\\": \\"\\",\\n \\"InstanceInfoList\\": [\\n {\\n \\"InstanceId\\": \\"p-0ceitx****c5\\",\\n \\"NetworkInterfaceId\\": \\"eni-uf65b****dfnt3wb\\"\\n }\\n ],\\n \\"SecurityGroupIds\\": [\\n \\"\\"\\n ],\\n \\"Users\\": [\\n \\"\\"\\n ],\\n \\"Sessions\\": [\\n {\\n \\"ResourceSessionStartTime\\": \\"\\",\\n \\"UserId\\": \\"\\"\\n }\\n ],\\n \\"PolicyGroupIdList\\": [\\n \\"\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListWuyingServer', + ], + 'StartWuyingServer' => [ + 'summary' => 'Start the workstation.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingEP3FXS', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'WuyingServerIdList', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The list of workstation IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0bydg****2lwi', + ], + 'required' => false, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'StartWuyingServer', + ], + 'StopWuyingServer' => [ + 'summary' => 'Stops the workstation.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingEP3FXS', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'WuyingServerIdList', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The list of workstation IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0byd****wn2lwi', + ], + 'required' => false, + ], + ], + [ + 'name' => 'Force', + 'in' => 'formData', + 'schema' => [ + 'title' => '强制重启', + 'description' => 'Force restart.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* True.'."\n" + .'* False'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => [ + 'True' => '', + 'False' => '', + ], + 'example' => 'True', + ], + ], + ], + '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' => 'AD2D0761-1FE5-549D-B169******', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AD2D0761-1FE5-549D-B169******\\"\\n}","type":"json"}]', + 'title' => 'StopWuyingServer', + ], + 'RestartWuyingServer' => [ + 'summary' => 'Restarts the workstation.', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingEP3FXS', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'WuyingServerIdList', + 'in' => 'formData', + 'style' => 'flat', + 'schema' => [ + 'description' => 'The list of workstation IDs.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0byd****n2lwi', + ], + 'required' => false, + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'RestartWuyingServer', + ], + 'ModifyWuyingServerAttribute' => [ + 'summary' => 'Modify workstation properties.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingBC1NTD', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'type' => 'string', + ], + ], + [ + 'name' => 'WuyingServerId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0bw2f11****dial', + ], + ], + [ + 'name' => 'WuyingServerName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'exampleServerName', + ], + ], + [ + 'name' => 'Password', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Workstation login password.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'yourPassword', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'ModifyWuyingServerAttribute', + ], + 'UpdateWuyingServerImage' => [ + 'summary' => 'Updates the workstation image.', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingDG81PX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'ProductType', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The product type. Set this parameter to WuyingServer.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'WuyingServer', + ], + ], + [ + 'name' => 'WuyingServerId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0bw2f11****dial', + ], + ], + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The image ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'imgc-0aae4rgk9****6e8p', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response elements.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'The request ID.'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'TaskId' => [ + 'description' => 'The ID of the update task.'."\n", + 'type' => 'string', + 'example' => 'ota-be7jzm29wrrz5****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"TaskId\\": \\"ota-be7jzm29wrrz5****\\"\\n}","type":"json"}]', + 'title' => 'UpdateWuyingServerImage', + ], + 'RenewWuyingServer' => [ + 'summary' => 'Renew one workstation.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + ], + 'parameters' => [ + [ + 'name' => 'WuyingServerId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ws-0bw2f11****dial', + ], + ], + [ + 'name' => 'Period', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The renewal duration.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The unit of the renewal time.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* Month: month.'."\n" + .'* Year: year.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Month' => '', + 'Year' => '', + ], + 'example' => 'Month'."\n", + ], + ], + [ + 'name' => 'AutoPay', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Automatic payment.'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'PromotionId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The discount ID.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '17440009****', + ], + ], + ], + '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' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + 'OrderId' => [ + 'description' => 'The order ID.'."\n", + 'type' => 'string', + 'example' => '23977848****97', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\",\\n \\"OrderId\\": \\"23977848****97\\"\\n}","type":"json"}]', + 'title' => 'RenewWuyingServer', + ], + 'DeleteWuyingServer' => [ + 'summary' => '删除工作站', + 'path' => '', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => [ + 'FEATUREappstreamingKER98U', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'WuyingServerId', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The ID of the workstation.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'ws-0bw2f11****dial', + 'maxItems' => 100, + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'DeleteWuyingServer', + 'description' => 'Deletes a workstation.'."\n", + ], + 'ModifyBrowserInstanceGroup' => [ + 'summary' => 'Modifies the properties of the cloud browser.', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '219753', + 'abilityTreeNodes' => [ + 'FEATUREappstreaming4BR4QS', + 'FEATUREappstreamingKE839Q', + 'FEATUREappstreaming50MBS2', + ], + ], + 'parameters' => [ + [ + 'name' => 'BrowserInstanceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => 'The ID of the cloud browser to be modified.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'big-0bz55ixxxxx9xi9w9', + ], + ], + [ + 'name' => 'CloudBrowserName', + 'in' => 'formData', + 'schema' => [ + 'description' => 'The name of the cloud browser.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'BrowserTest', + ], + ], + [ + 'name' => 'Network', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'The network configurations.'."\n", + 'type' => 'object', + 'properties' => [ + 'AccessRestriction' => [ + 'description' => 'The type of the access control list.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* ALLOW_LIST: The whitelist.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'ALLOW_LIST' => '', + ], + 'example' => 'ALLOW_LIST', + ], + 'RestrictedURLs' => [ + 'description' => 'The domain restriction configurations.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The restricted domain names.'."\n", + 'type' => 'object', + 'properties' => [ + 'URL' => [ + 'description' => 'The restricted domain name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'aliyun.com', + ], + 'RestrictedURLId' => [ + 'description' => 'The ID of the domain name. This parameter is required only when you want to modify the domain restriction configuration.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ru-12345', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'RemoveRestrictedURLIds' => [ + 'description' => 'The domain names to be removed.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the domain name.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'ru-12345', + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Policy', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The access policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'ClipboardPolicy' => [ + 'description' => 'The settings related to clipboard control.'."\n", + 'type' => 'object', + 'properties' => [ + 'Clipboard' => [ + 'description' => 'The clipboard policy.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* read: Allows copying from the local device to the cloud browser.'."\n" + .'* readwrite: Allows copying in both directions.'."\n" + .'* write: Allows copying from the cloud browser to the local device.'."\n" + .'* off: Blocks copying in both directions.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'read' => '', + 'readwrite' => '', + 'write' => '', + 'off' => '', + ], + 'example' => 'off', + ], + 'ClipboardScope' => [ + 'description' => 'The clipboard control scope.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* grained: fine-grained control'."\n" + .'* global: global control'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'grained' => '', + 'global' => '', + ], + 'example' => 'global', + ], + 'TextClipboard' => [ + 'description' => 'The text clipboard policy.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* read: Allows copying from the local device to the cloud browser.'."\n" + .'* readwrite: Allows copying in both directions.'."\n" + .'* write: Allows copying from the cloud browser to the local device.'."\n" + .'* off: Blocks copying in both directions.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'read' => '', + 'readwrite' => '', + 'write' => '', + 'off' => '', + ], + 'example' => 'off', + ], + 'RichTextClipboard' => [ + 'description' => 'The rich text clipboard policy.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* read: Allows copying from the local device to the cloud browser.'."\n" + .'* readwrite: Allows copying in both directions.'."\n" + .'* write: Allows copying from the cloud browser to the local device.'."\n" + .'* off: Blocks copying in both directions.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'read' => '', + 'readwrite' => '', + 'write' => '', + 'off' => '', + ], + 'example' => 'off', + ], + 'FileClipboard' => [ + 'description' => 'The file clipboard policy.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* read: Allows copying from the local device to the cloud browser.'."\n" + .'* readwrite: Allows copying in both directions.'."\n" + .'* write: Allows copying from the cloud browser to the local device.'."\n" + .'* off: Blocks copying in both directions.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'read' => '', + 'readwrite' => '', + 'write' => '', + 'off' => '', + ], + 'example' => 'off', + ], + 'ClipboardReadLimit' => [ + 'description' => 'The maximum number of characters allowed when copying from the clipboard.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1000', + ], + 'ClipboardWriteLimit' => [ + 'description' => 'The maximum number of characters allowed when copying to the clipboard.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1000', + ], + 'ClipboardSizeUnit' => [ + 'type' => 'string', + ], + ], + 'required' => false, + ], + 'VideoPolicy' => [ + 'description' => 'The display policy.'."\n", + 'type' => 'object', + 'properties' => [ + 'FrameRate' => [ + 'description' => 'The frame rate.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '60', + ], + ], + 'required' => false, + ], + 'WatermarkPolicy' => [ + 'description' => 'The watermark configuration.'."\n", + 'type' => 'object', + 'properties' => [ + 'WatermarkSwitch' => [ + 'description' => 'Specifies whether to enable the watermark.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* off'."\n" + .'* on'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'off' => '', + 'on' => '', + ], + 'example' => 'off', + ], + 'WatermarkTypes' => [ + 'description' => 'The watermark types.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The watermark type.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* EndUserId: convenience account ID'."\n" + .'* ClientTime: the system time'."\n" + .'* InstanceGroup: browser group ID.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'EndUserId' => '', + 'ClientTime' => '', + 'InstanceGroup' => '', + ], + 'example' => 'EndUserId', + ], + 'required' => false, + ], + ], + 'required' => false, + ], + 'PolicyId' => [ + 'description' => 'The ID of the policy.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pg-12345', + ], + 'PolicyVersion' => [ + 'description' => 'The policy version.'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* Center: center policy'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'Center' => '', + ], + 'example' => 'Center', + ], + 'DisconnectKeepSession' => [ + 'description' => 'Defines what happens to a session when a user disconnects.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* customTime: The session will be terminated after a custom-defined timeout.'."\n" + .'* persistent: The session will never be automatically terminated..'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'customTime' => '', + 'persistent' => '', + ], + 'example' => 'customTime', + ], + 'DisconnectKeepSessionTime' => [ + 'description' => 'The session persistence duration.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '15', + ], + 'Html5FileTransfer' => [ + 'description' => 'The file transfer policy on the web client.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'off', + ], + 'NoOperationDisconnect' => [ + 'type' => 'string', + 'required' => false, + ], + 'NoOperationDisconnectTime' => [ + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + ], + ], + 'required' => false, + ], + ], + [ + 'name' => 'Timers', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The timer.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The associated scheduled task.'."\n", + 'type' => 'object', + 'properties' => [ + 'TimerType' => [ + 'description' => 'The timer type:'."\n" + ."\n" + .'Valid value:'."\n" + ."\n" + .'* SESSION_TIMEOUT: Defines the timeout period before a disconnected session is terminated.'."\n", + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'SESSION_TIMEOUT' => '', + ], + 'example' => 'SESSION_TIMEOUT', + ], + 'Interval' => [ + 'description' => 'The interval.'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '15', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + ], + [ + 'name' => 'BrowserConfig', + 'in' => 'query', + 'style' => 'json', + 'schema' => [ + 'description' => 'The browser settings.'."\n", + 'type' => 'object', + 'properties' => [ + 'Homepage' => [ + 'description' => 'The home page.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'https://www.aliyun.com', + ], + 'BrowserParam' => [ + 'description' => 'The startup parameter.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '--incognito', + ], + 'Bookmarks' => [ + 'description' => 'The bookmark.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The description of the associated bookmark.'."\n", + 'type' => 'object', + 'properties' => [ + 'BookmarkId' => [ + 'description' => 'The ID of the bookmark. This parameter needs to be specified only to modify the bookmark.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'bm-12345', + ], + 'BookmarkName' => [ + 'description' => 'The name of the bookmark.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + 'BookmarkURL' => [ + 'description' => 'The URL of the bookmark.'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'https://www.aliyun.com', + ], + 'BookmarkFolder' => [ + 'description' => 'The folder where the bookmark is located.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + 'required' => false, + ], + 'required' => false, + ], + 'RemoveBookmarks' => [ + 'description' => 'The removed bookmarks.'."\n", + 'type' => 'array', + 'items' => [ + 'description' => 'The IDs of the removed bookmarks.'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'bm-12345', + ], + 'required' => false, + ], + ], + 'required' => false, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Schema of Response'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => 'Id of the request'."\n", + 'type' => 'string', + 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC5F****', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC5F****\\"\\n}","type":"json"}]', + 'title' => 'ModifyBrowserInstanceGroup', + 'description' => 'Modifies the properties of the cloud browser.'."\n", + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'cn-shanghai', + 'endpoint' => 'appstream-center.cn-shanghai.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'endpoint' => 'appstream-center.ap-southeast-1.aliyuncs.com', + ], + ], +]; |
