From 1c7f908ce09f98fdcbf79ed2a8ae21be60eaa634 Mon Sep 17 00:00:00 2001 From: Zhineng Li Date: Sun, 12 Jul 2026 17:11:17 +0800 Subject: update APIs 20260712 --- data/en_us/eds-aic/2023-09-30/api-docs.php | 19879 ++++++++++++--------------- 1 file changed, 8965 insertions(+), 10914 deletions(-) (limited to 'data/en_us/eds-aic') diff --git a/data/en_us/eds-aic/2023-09-30/api-docs.php b/data/en_us/eds-aic/2023-09-30/api-docs.php index 3f4c4f2..b31403c 100644 --- a/data/en_us/eds-aic/2023-09-30/api-docs.php +++ b/data/en_us/eds-aic/2023-09-30/api-docs.php @@ -1,56 +1,30 @@ '1.0', - 'info' => [ - 'style' => 'RPC', - 'product' => 'eds-aic', - 'version' => '2023-09-30', - ], + 'info' => ['style' => 'RPC', 'product' => 'eds-aic', 'version' => '2023-09-30'], 'directories' => [ [ - 'id' => 365432, - 'title' => null, + 'children' => ['CreateCreditPackage', 'DescribeCreditPackage', 'CreateMobileAgentPackage', 'DeleteMobileAgentPackage', 'DescribeMobileAgentPackage', 'RenewMobileAgentPackage', 'ModifyJVSInstance', 'DescribeJVSInstance', 'RunAgentTask', 'DescribeAgentTask', 'CancelAgentTask', 'PauseAgentTask', 'ResumeAgentTask'], 'type' => 'directory', - 'children' => [ - 'CreateCloudPhoneNode', - 'DescribeCloudPhoneNodes', - 'ModifyCloudPhoneNode', - 'RenewCloudPhoneNodes', - 'ChangeCloudPhoneNode', - 'ExpandDataVolume', - 'DeleteCloudPhoneNodes', - ], + 'title' => 'JVS Mobile', ], [ - 'id' => 365440, - 'title' => null, + 'children' => ['CreateCloudPhoneNode', 'DescribeCloudPhoneNodes', 'ModifyCloudPhoneNode', 'RenewCloudPhoneNodes', 'ChangeCloudPhoneNode', 'ExpandDataVolume'], 'type' => 'directory', - 'children' => [ - 'DescribeRegions', - 'DescribeSpec', - 'CheckResourceStock', - 'CreateAndroidInstanceGroup', - 'DescribeAndroidInstanceGroups', - 'ModifyAndroidInstanceGroup', - 'UpgradeAndroidInstanceGroup', - 'DowngradeAndroidInstanceGroup', - 'RenewAndroidInstanceGroups', - 'UpdateInstanceGroupImage', - 'DeleteAndroidInstanceGroup', - ], + 'title' => 'Cloud phone matrix', ], [ - 'id' => 365452, - 'title' => null, + 'children' => ['DescribeSpec', 'CheckResourceStock', 'CreateAndroidInstanceGroup', 'DescribeAndroidInstanceGroups', 'ModifyAndroidInstanceGroup', 'UpgradeAndroidInstanceGroup', 'RenewAndroidInstanceGroups', 'UpdateInstanceGroupImage', 'DeleteAndroidInstanceGroup'], 'type' => 'directory', + 'title' => 'Instance group', + ], + [ 'children' => [ 'DescribeAndroidInstances', 'ModifyAndroidInstance', - 'AuthorizeAndroidInstance', 'StartAndroidInstance', 'StopAndroidInstance', 'RebootAndroidInstancesInGroup', 'ResetAndroidInstancesInGroup', - 'ModifyInstanceChargeType', 'UpdateInstanceImage', 'ExpandPhoneDataVolume', 'InstanceHealer', @@ -58,1104 +32,764 @@ 'StopInstanceAdb', 'ListInstanceAdbAttributes', [ - 'id' => 365467, - 'title' => null, + 'children' => ['BatchGetAcpConnectionTicket', 'DisconnectAndroidInstance'], 'type' => 'directory', - 'children' => [ - 'BatchGetAcpConnectionTicket', - 'DisconnectAndroidInstance', - ], + 'title' => 'Connect & disconnect', ], [ - 'id' => 365470, - 'title' => null, + 'children' => ['RunCommand', 'DescribeInvocations', 'RunSyncCommand'], 'type' => 'directory', - 'children' => [ - 'RunCommand', - 'DescribeInvocations', - ], + 'title' => 'Remote command', ], [ - 'id' => 365473, - 'title' => null, + 'children' => ['SendFile', 'FetchFile'], 'type' => 'directory', - 'children' => [ - 'SendFile', - 'FetchFile', - ], + 'title' => 'File upload and download', ], [ - 'id' => 365476, - 'title' => null, + 'children' => ['CreateScreenshot'], 'type' => 'directory', - 'children' => [ - 'CreateScreenshot', - ], + 'title' => 'Screenshot', ], [ - 'id' => 365478, - 'title' => null, + 'children' => ['GenerateCoordinationCode', 'EndCoordination'], 'type' => 'directory', - 'children' => [ - 'GenerateCoordinationCode', - 'EndCoordination', - ], + 'title' => 'Stream collaboration', ], ], - ], - [ - 'id' => 365481, - 'title' => null, - 'type' => 'directory', - 'children' => [ - 'CreateCustomImage', - 'DescribeImageList', - 'UpdateCustomImageName', - 'DistributeImage', - 'DeleteImages', - ], - ], - [ - 'id' => 365487, - 'title' => null, 'type' => 'directory', - 'children' => [ - 'CreateApp', - 'DescribeApps', - 'ModifyApp', - 'DeleteApps', - 'InstallApp', - 'UninstallApp', - 'OperateApp', - ], + 'title' => 'Instance', ], [ - 'id' => 365495, - 'title' => null, + 'children' => ['ImportImage', 'DescribeImageList', 'CreateCustomImage', 'UpdateCustomImageName', 'DistributeImage'], 'type' => 'directory', - 'children' => [ - 'CreateKeyPair', - 'ImportKeyPair', - 'DescribeKeyPairs', - 'ModifyKeyPairName', - 'DeleteKeyPairs', - 'AttachKeyPair', - 'DetachKeyPair', - ], + 'title' => 'Image', ], [ - 'id' => 365503, - 'title' => null, + 'children' => ['CreateApp', 'DescribeApps', 'ModifyApp', 'InstallApp', 'UninstallApp', 'OperateApp'], 'type' => 'directory', - 'children' => [ - 'BackupAndroidInstance', - 'BackupApp', - 'RecoverAndroidInstance', - 'RecoverApp', - 'BackupFile', - 'RecoveryFile', - 'DescribeBackupFiles', - 'DeleteBackupFile', - ], + 'title' => 'Application', ], [ - 'id' => 365512, - 'title' => null, + 'children' => ['CreateKeyPair', 'DescribeKeyPairs', 'ImportKeyPair', 'AttachKeyPair', 'DetachKeyPair', 'SetAdbSecure'], 'type' => 'directory', - 'children' => [ - 'CreatePolicyGroup', - 'ListPolicyGroups', - 'ModifyPolicyGroup', - 'DeletePolicyGroup', - ], + 'title' => 'Key', ], [ - 'id' => 365517, - 'title' => null, + 'children' => ['DescribeBackupFiles', 'DescribeBuckets', 'BackupAndroidInstance', 'BackupApp', 'RecoverAndroidInstance', 'RecoverApp', 'BackupFile', 'RecoveryFile', 'DeleteBackupFile'], 'type' => 'directory', - 'children' => [ - 'CreateSystemPropertyTemplate', - 'SendSystemPropertyTemplate', - 'DescribeSystemPropertyTemplates', - 'GetInstanceProperties', - 'ModifySystemPropertyTemplate', - 'DeleteSystemPropertyTemplates', - ], + 'title' => 'Backup', ], [ - 'id' => 365524, - 'title' => null, + 'children' => ['CreatePolicyGroup', 'ListPolicyGroups', 'ModifyPolicyGroup', 'DeletePolicyGroup'], 'type' => 'directory', - 'children' => [ - 'DescribeTasks', - ], + 'title' => 'Policy', ], [ - 'id' => 365526, - 'title' => null, + 'children' => ['CreateSystemPropertyTemplate', 'SendSystemPropertyTemplate', 'DescribeSystemPropertyTemplates', 'GetInstanceProperties', 'ModifySystemPropertyTemplate', 'DeleteSystemPropertyTemplates'], 'type' => 'directory', - 'children' => [ - 'InstallMonitorAgent', - 'UninstallMonitorAgent', - 'DescribeMetricLast', - 'DescribeMetricList', - 'DescribeMetricTop', - ], + 'title' => 'System property template', ], [ - 'id' => 365532, - 'title' => null, + 'children' => ['InstallMonitorAgent', 'UninstallMonitorAgent', 'DescribeMetricLast', 'DescribeMetricList', 'DescribeMetricTop'], 'type' => 'directory', - 'children' => [ - 'TagResources', - 'UntagResources', - 'ListTagResources', - ], + 'title' => 'Monitoring', ], [ - 'id' => 365536, - 'title' => null, - 'type' => 'directory', 'children' => [ - 'DescribeBuckets', - 'SetAdbSecure', - 'ModifyDisplayConfig', - 'DescribeDisplayConfig', - 'ImportImage', + 'ModifyDisplayConfig', 'DescribeDisplayConfig', 'GetNetworkBlacklist', 'SetNetworkBlacklist', 'DescribeRegions', 'DescribeTasks', 'ListTagResources', 'ModifyInstanceChargeType', 'TagResources', 'UntagResources', 'ActivateEdgeMobileAgent', 'AuthorizeAndroidInstance', 'CreateEdgeMobileAgentPackage', 'DeleteApps', 'DeleteCloudPhoneNodes', 'DeleteImages', 'DeleteKeyPairs', 'DescribeCreditDetail', 'DescribeEdgeMobileAgentPackages', 'DowngradeAndroidInstanceGroup', + 'ModifyKeyPairName', 'RefreshAuthTokens', ], - ], - [ - 'id' => 0, - 'title' => '其它', 'type' => 'directory', - 'children' => [ - 'GetNetworkBlacklist', - 'SetNetworkBlacklist', - ], + 'title' => 'Others', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ - 'CreateCloudPhoneNode' => [ - 'summary' => 'Creates a cloud phone matrix.', + 'ActivateEdgeMobileAgent' => [ + 'summary' => 'Activates an edge agent device.', 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', - 'deprecated' => false, + 'operationType' => 'readAndWrite', 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'high', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneTVG3Y7', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneLI0KSA'], ], 'parameters' => [ [ - 'name' => 'BizRegionId', + 'name' => 'LicenseKey', 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['title' => '', 'description' => 'The license key.', 'type' => 'string', 'required' => true, 'example' => 'lic-ez197xvdf0j5eo0*****'], ], [ - 'name' => 'NodeName', + 'name' => 'DeviceClass', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the cloud phone matrix.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'node_name', - ], + 'schema' => ['title' => '', 'description' => 'The device form factor. Valid values:'."\n" + .'- BOX'."\n" + .'- PHONE'."\n" + .'- PAD'."\n" + .'- OTHER', 'type' => 'string', 'required' => false, 'example' => 'BOX'], ], [ - 'name' => 'ServerType', + 'name' => 'DeviceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The matrix specification.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* cpm.gn6.gx1'."\n", - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [ - 'cpm.gn6.gx1' => 'cpm.gn6.gx1', - ], - 'example' => 'cpm.gn6.gx1', - ], + 'schema' => ['title' => '', 'description' => 'The unique identifier of the device.', 'type' => 'string', 'required' => true, 'example' => 'sn-0001eevqa6jeapl*****'], ], [ - 'name' => 'InstanceType', + 'name' => 'DeviceMeta', 'in' => 'query', - 'schema' => [ - 'description' => 'The instance specification.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* ac.max: By default, this specification allows up to 25 instances. You can adjust this number by using PhoneCount (Value range: 4 to 40).'."\n" - .'* ac.plus: By default, this specification allows up to 40 instances. You can adjust this number by using PhoneCount (Value range: 4 to 40).'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'ac.max' => '', - 'ac.plus' => '', - ], - 'example' => 'ac.max', - ], + 'schema' => ['title' => '', 'description' => 'The extended device metadata in JSON format. The string contains information such as fingerprint, deviceModel, and firmwareVersion.', 'type' => 'string', 'required' => false, 'example' => '{"frmwareVersion": "1.0.0"}'], ], - [ - 'name' => 'ChargeType', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The billing method. Only the subscription billing method is supported.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'PrePaid' => '', + 'title' => '', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], + 'Data' => [ + 'title' => '', + 'description' => 'The response data object.', + 'type' => 'object', + 'properties' => [ + 'DeviceId' => ['title' => '', 'description' => 'The device ID.', 'type' => 'string', 'example' => 'sn-0001eevqa6jeapl*****'], + 'InstanceId' => ['title' => '', 'description' => 'The EdgeMobile instance ID.', 'type' => 'string', 'example' => 'em-uto81vfd8t8z****'], + 'AuthToken' => ['title' => '', 'description' => 'The assigned API key. The plaintext value is returned only upon the first activation.', 'type' => 'string', 'example' => 'cpk-81vfd8t8zdfxdf*****'], + 'Idempotent' => ['title' => '', 'description' => 'Indicates whether the request is an idempotent duplicate request.', 'type' => 'boolean', 'example' => 'false'], + ], + 'example' => '', + ], ], - 'example' => 'PrePaid', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Activate an edge agent device', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"Data\\": {\\n \\"DeviceId\\": \\"sn-0001eevqa6jeapl*****\\",\\n \\"InstanceId\\": \\"em-uto81vfd8t8z****\\",\\n \\"AuthToken\\": \\"cpk-81vfd8t8zdfxdf*****\\",\\n \\"Idempotent\\": false\\n }\\n}","type":"json"}]', + ], + 'AttachKeyPair' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'PeriodUnit', - 'in' => 'query', - 'schema' => [ - 'description' => 'The unit of the subscription duration.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Month (default)'."\n" - .'* Year'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Month' => '', - 'Year' => '', - ], - 'example' => 'Month', - ], + 'AK' => [], ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphone377ZZK'], + ], + 'parameters' => [ [ - 'name' => 'Period', + 'name' => 'KeyPairId', 'in' => 'query', - 'schema' => [ - 'description' => 'The subscription duration. The unit is specified by `PeriodUnit`. Valid values:'."\n" - ."\n" - .'* When `PeriodUnit` is set to **year**: 1.'."\n" - .'* When `PeriodUnit` is set to **month**: 1, 2, 3, and 6.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'The ID of the ADB key pair.', 'type' => 'string', 'required' => true, 'example' => 'kp-6v2q33ae4tw3a****', 'title' => ''], ], [ - 'name' => 'AutoPay', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'Specifies whether to enable the auto-payment feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* False (default): You must manually complete the payment in the Alibaba Cloud Expenses and Costs console.'."\n" - .'* true: enables the auto-payment feature.'."\n", - 'type' => 'boolean', + 'description' => 'The IDs of the cloud phone instances. You can specify a maximum of 50 cloud phone instances.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh4a31emkt6u****', 'title' => ''], 'required' => false, - 'enumValueTitles' => [ - 'flase' => '', - 'true' => '', - ], - 'example' => 'true', + 'maxItems' => 200, + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'AutoRenew', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to enable the auto-renewal feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: enables the auto-renewal feature. In this case, the system automatically renews instances upon expiration.'."\n" - .'* false (default): disables the auto-renewal feature. In this case, you need to manually renew instances upon expiration.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', + 'title' => 'PlainResult', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The object that is returned.', + 'type' => 'object', + 'properties' => [ + 'KeyPairId' => ['description' => 'The ID of the ADB key pair.', 'type' => 'string', 'example' => 'kp-6v2q33ae4tw3a****', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of the cloud phone instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'FailCount' => ['description' => 'The number of the cloud phone instances to which the ADB key pair failed to be attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'AttachedInstanceIds' => [ + 'description' => 'The IDs of the cloud phone instances to which the ADB key pair is successfully attached.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'example' => 'acp-5hh431emkt6ua****', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', 'title' => ''], ], - 'example' => 'true', + 'example' => '', ], ], + ], + 'title' => 'AttachKeyPair', + 'summary' => 'Attaches an Android Debug Bridge (ADB) key pair to one or more cloud phone instances.', + 'description' => '- You can attach to an ADB key pair only to cloud phone instances in the Running state.'."\n" + ."\n" + .'- After you attach an ADB key pair, make sure the private key of the ADB key pair is copied to the \\~/.android directory (macOS or Linux operating systems) or the C:\\Users\\Username.android directory (Windows operating systems). In addition, you must run the adb kill-server command to restart the ADB process to ensure correct ADB connection. Otherwise, ADB connection may fail due to authentication exceptions.', + 'changeSet' => [ + ['createdAt' => '2025-05-31T07:55:40.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3a****\\",\\n \\"TotalCount\\": 100,\\n \\"FailCount\\": 0,\\n \\"AttachedInstanceIds\\": [\\n \\"acp-5hh431emkt6ua****\\"\\n ]\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', + ], + 'AuthorizeAndroidInstance' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ImageId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The image ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'imgc-075cllfeuazh0****', - ], + 'AK' => [], ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'none'], + 'parameters' => [ [ - 'name' => 'Count', + 'name' => 'AndroidInstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The number of cloud phone matrixes you want to purchase.'."\n", - 'type' => 'string', + 'description' => 'List of instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'Instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-8v5bjld0r7pl****', 'title' => ''], 'required' => false, - 'example' => '1', + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NetworkId', + 'name' => 'AuthorizeUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The office network ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou+dir-5mwr9azebliva****', - ], + 'schema' => ['description' => 'User ID to be assigned.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], [ - 'name' => 'VSwitchId', + 'name' => 'UnAuthorizeUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The vSwitch ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-2zeekryyc1q3sm72l****', - ], + 'schema' => ['description' => 'User ID to be unassigned.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], - [ - 'name' => 'Tag', - 'in' => 'query', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The resource tags.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The resource tag.'."\n", - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The tag key.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'keyname', - ], - 'Value' => [ - 'description' => 'The tag value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'valuename', - ], - ], - 'required' => false, + 'title' => 'Schema of Response', + 'description' => 'Return parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'Request ID.', 'type' => 'string', 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****'], ], - 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'PhoneDataVolume', - 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Assign Users to Instances & Unassign', + 'summary' => 'Authorize/unauthorize Android instances for users.', + 'description' => 'Instance states that support user assignment: Available, Shutting Down, Stopped, Starting, Backing Up, Restoring, Backup Failed, Restore Failed.'."\n" + ."\n" + .'Instance states that support unassignment: Available, Shutting Down, Stopped, Starting, Backing Up, Restoring, Backup Failed, Restore Failed, Expired, Overdue, Deleted.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\"\\n}","type":"json"}]', + ], + 'BackupAndroidInstance' => [ + 'summary' => 'Creates a full backup of a Cloud Phone instance. The backup includes installed applications and properties.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ServerShareDataVolume', - 'in' => 'query', - 'schema' => [ - 'description' => 'The shared storage size Unit: GiB.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '4000', - 'minimum' => '100', - 'example' => '200', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneE62QJ7'], + ], + 'parameters' => [ [ - 'name' => 'ResolutionHeight', + 'name' => 'AndroidInstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The resolution height. Unit: pixel.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1280', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'aic-ig2bdpk374l12****', 'title' => ''], + 'deprecated' => false, + 'required' => true, + 'maxItems' => 100, + 'description' => 'A list of instance IDs.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ResolutionWidth', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'The resolution width. Unit: pixel.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '720', - ], + 'schema' => ['description' => 'The description of the full instance backup.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'this is a backup android instance'], ], [ - 'name' => 'PhoneCount', + 'name' => 'UploadEndpoint', 'in' => 'query', - 'schema' => [ - 'description' => 'The number of instances per cloud phone matrix.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '25', - ], - ], - [ - 'name' => 'DisplayConfig', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'Dpi' => [ - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'Fps' => [ - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - ], - 'LockResolution' => [ - 'type' => 'string', - 'required' => false, - 'enum' => [ - 'off', - 'on', - ], - ], - ], - 'required' => false, - ], + 'schema' => ['description' => 'The region where the backup is stored.', 'type' => 'string', 'required' => true, 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com', 'title' => ''], ], [ - 'name' => 'StreamMode', + 'name' => 'BackupFilePath', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['description' => 'The upload URL for the backup file.', 'type' => 'string', 'required' => true, 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/backupDir/acp-ig2bdpk374l12****_2024052014****.ab', 'title' => ''], ], [ - 'name' => 'NetworkType', + 'name' => 'BackupFileName', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The name of the backup file.', 'type' => 'string', 'required' => false, 'example' => 'abc', 'title' => ''], ], - [ - 'name' => 'NetworkInfo', - 'in' => 'query', - 'style' => 'json', + ], + 'responses' => [ + 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ - 'BandwidthPackageName' => [ - 'type' => 'string', - ], - 'CidrBlock' => [ - 'type' => 'string', - ], - 'LimitedBandwidth' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'InternetChargeType' => [ - 'type' => 'string', - ], - 'IpRatio' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'Isp' => [ - 'type' => 'string', - ], - 'PayType' => [ - 'type' => 'string', - ], - 'VisibleType' => [ - 'type' => 'string', + 'Data' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'BackupFileId' => ['description' => 'The ID of the backup file.', 'type' => 'string', 'example' => 'bf-b0qbg3pbpjkn7****', 'title' => ''], + 'BackupFileName' => ['description' => 'The name of the backup file.', 'type' => 'string', 'example' => 'a-58ftsoo90p0qa****.ab', 'title' => ''], + 'AndroidInstanceId' => ['description' => 'The cloud phone instance ID.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the task.', 'type' => 'string', 'example' => 't-bp67acfmxazb4p****', 'title' => ''], + ], + 'description' => 'The returned result object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The returned result objects.', + 'title' => '', + 'example' => '', ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1', 'title' => ''], + 'Count' => ['description' => 'The number of instances that were backed up.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the task.', 'type' => 'string', 'example' => 't-14xwibw7pyrjd****', 'title' => ''], ], + 'title' => '', + 'description' => 'PlainResult', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'BackupAndroidInstance', + 'description' => '1. To ensure that the backup is successful, shut down the instance before you start the data backup. The operation may fail if the cloud phone instance is used during the backup process.'."\n" + ."\n" + .'2. You should test the backup file to ensure that you can restore the instance from it. After the restoration is complete, verify that your data is complete and that all features function correctly. Do not delete the original backup file or reset the source instance until this verification is complete. Otherwise, you may lose your data.'."\n" + ."\n" + .'3. You cannot back up and restore data between different image versions, between custom images and public images, or across different architectures, such as cpm.gx7.10xlarge and cpm.gx8.16xlarge.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"a-58ftsoo90p0qa****.ab\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\"\\n }\\n ],\\n \\"RequestId\\": \\"440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-14xwibw7pyrjd****\\"\\n}","type":"json"}]', + ], + 'BackupApp' => [ + 'summary' => 'Backs up specified applications on a cloud phone instance. The backup includes the application and its cache.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'BandwidthPackageType', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], - ], - [ - 'name' => 'BandwidthPackageId', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneE62QJ7'], + ], + 'parameters' => [ [ - 'name' => 'UpBandwidthLimit', + 'name' => 'AndroidInstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', + 'type' => 'array', + 'items' => ['description' => 'An instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-34pqe4r0kd9kn****'."\n", 'title' => ''], + 'deprecated' => false, + 'required' => true, + 'maxItems' => 100, + 'description' => 'A list of instance IDs.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'DownBandwidthLimit', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['description' => 'The description of the application backup.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'this is a backup app'], ], [ - 'name' => 'UseTemplate', + 'name' => 'UploadEndpoint', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'Specifies the region where the backup is created.', 'type' => 'string', 'required' => true, 'example' => 'oss-cn-shanghai-internal.aliyuncs.com', 'title' => ''], ], [ - 'name' => 'PromotionId', + 'name' => 'BackupFilePath', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The URL of the backup file.', 'type' => 'string', 'required' => true, 'example' => 'oss://cloudphone-saved-bucket-****/backupDir/', 'title' => ''], ], [ - 'name' => 'SwapSize', + 'name' => 'BackupFileName', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['description' => 'The name of the backup file.', 'type' => 'string', 'required' => false, 'example' => 'MyBackup', 'title' => ''], ], [ - 'name' => 'IsSingleImgDisk', + 'name' => 'SourceAppList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'boolean', + 'type' => 'array', + 'items' => ['description' => 'The package name of an application to back up.', 'type' => 'string', 'required' => false, 'example' => 'com.example.xhs', 'title' => ''], + 'required' => true, + 'maxItems' => 100, + 'description' => 'A list of package names for the applications to back up.', + 'title' => '', + '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' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', - ], - 'OrderId' => [ - 'description' => 'The order ID.'."\n", - 'type' => 'string', - 'example' => '223684716098****', - ], - 'NodeInfos' => [ - 'description' => 'The cloud phone matrixes.'."\n", + 'Data' => [ 'type' => 'array', 'items' => [ - 'description' => 'The cloud phone matrix.'."\n", 'type' => 'object', 'properties' => [ - 'NodeId' => [ - 'description' => 'The ID of the cloud phone matrix.'."\n", - 'type' => 'string', - 'example' => 'cpn-e5kxgjyt8s1mb****', - ], - 'InstanceIds' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'cpn-e5kxgjyt8s1mb****', - ], - ], - ], - ], - ], - 'NetworkPackageOrderModel' => [ - 'type' => 'object', - 'properties' => [ - 'BandwidthPackageOrderId' => [ - 'type' => 'string', - ], - 'BandwidthPackageId' => [ - 'type' => 'string', + 'BackupFileId' => ['description' => 'The ID of the backup file.', 'type' => 'string', 'example' => 'bf-b0qbg3pbpjkn7****', 'title' => ''], + 'BackupFileName' => ['description' => 'The name of the backup file.', 'type' => 'string', 'example' => 'MyBackup', 'title' => ''], + 'AndroidInstanceId' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the task.', 'type' => 'string', 'example' => 't-4ks224ujixw****', 'title' => ''], ], + 'description' => 'The response elements.', + 'title' => '', + 'example' => '', ], + 'description' => 'The response elements.', + 'title' => '', + 'example' => '', ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], + 'Count' => ['description' => 'The number of instances that are backed up.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the batch task.', 'type' => 'string', 'example' => 't-14xwibw7pyrjd****', 'title' => ''], ], + 'title' => '', + 'description' => 'PlainResult', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'BackupApp', + 'description' => '1. Shut down the cloud phone instance before you back up data to ensure that the operation succeeds. Using the cloud phone during a backup may cause the operation to fail.'."\n" + ."\n" + .'2. Ensure that the backup file can be used to restore the instance successfully. After you restore from a backup, verify that your data is complete and that all features are working correctly. Do not delete the original backup file or reset the source instance until you complete this verification. Failure to do so may result in data loss.'."\n" + ."\n" + .'3. Backup and restore operations are not suppported across different image versions, between custom images and public images, or across different architectures, such as cpm.gx7.10xlarge and cpm.gx8.16xlarge.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\",\\n \\"OrderId\\": \\"223684716098****\\",\\n \\"NodeInfos\\": [\\n {\\n \\"NodeId\\": \\"cpn-e5kxgjyt8s1mb****\\",\\n \\"InstanceIds\\": [\\n \\"cpn-e5kxgjyt8s1mb****\\"\\n ]\\n }\\n ],\\n \\"NetworkPackageOrderModel\\": {\\n \\"BandwidthPackageOrderId\\": \\"25954415983*****\\",\\n \\"BandwidthPackageId\\": \\"cbwp-uf63gsv8j0ir53*****\\"\\n }\\n}","type":"json"}]', - 'title' => 'CreateCloudPhoneNode', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"MyBackup\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-4ks224ujixw****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-14xwibw7pyrjd****\\"\\n}","type":"json"}]', ], - 'DescribeCloudPhoneNodes' => [ - 'summary' => 'Queries the details of a cloud phone matrix.', - 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'BackupFile' => [ + 'summary' => 'Generates a backup file and uploads it to remote storage. You can use this operation for regular data backups. You can also back up files from one instance and restore them to multiple instances, a process similar to data replication or migration.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneTVG3Y7', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphoneE62QJ7'], ], 'parameters' => [ [ - 'name' => 'BizRegionId', + 'name' => 'AndroidInstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', + 'description' => 'A list of instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'aic-ig2bdpk374l12****', 'title' => ''], + 'deprecated' => false, + 'required' => true, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'MaxResults', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 20.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '20', - ], + 'schema' => ['description' => 'The description of the backup file.', 'type' => 'string', 'example' => 'This is a backup/data request.', 'required' => false, 'title' => ''], ], [ - 'name' => 'NextToken', + 'name' => 'SourceFilePathList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If a query doesn\'t return all results, the response includes a NextToken value for pagination. You must specify the token that is obtained from the previous query as the value of NextToken.'."\n", - 'type' => 'string', + 'description' => 'A list of file paths to back up.', + 'type' => 'array', + 'items' => ['description' => 'The absolute path of the source folder in the Android system.', 'type' => 'string', 'required' => false, 'example' => '/data', 'title' => ''], 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NodeIds', + 'name' => 'SourceAppList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The matrix IDs.'."\n", + 'description' => 'A list of application package names to back up.', 'type' => 'array', - 'items' => [ - 'description' => 'The matrix ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-192c32356ft1ov1m****', - ], + 'items' => ['description' => 'The application package name to back up.', 'type' => 'string', 'required' => false, 'example' => 'com.example.xhs', 'title' => ''], 'required' => false, 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NodeName', + 'name' => 'UploadType', 'in' => 'query', 'schema' => [ - 'description' => 'The matrix name.'."\n", + 'description' => 'The backup type.', + 'enumValueTitles' => ['OSS' => 'Uploads the backup file to an OSS bucket.'], 'type' => 'string', 'required' => false, - 'example' => 'node_name', + 'example' => 'OSS', + 'title' => '', ], ], [ - 'name' => 'Status', + 'name' => 'UploadEndpoint', 'in' => 'query', - 'schema' => [ - 'description' => 'The matrix status.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* FAILED: The matrix failed to be created.'."\n" - .'* RUNNING: The matrix is available.'."\n" - .'* DELETING: The matrix is being deleted.'."\n" - .'* NODE_READY: The matrix is ready, and cloud phone instances are being created.'."\n" - .'* DELETED: The matrix is deleted.'."\n" - .'* CREATING: The matrix is being created.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'FAILED' => '', - 'RUNNING' => '', - 'DELETING' => '', - 'NODE_READY' => '', - 'DELETED' => '', - 'CREATING' => '', - ], - 'example' => 'CREATING', - ], + 'schema' => ['description' => 'The domain name of the upload URL.'."\n" + ."\n" + .'> If you upload the file to an OSS bucket, call the DescribeBuckets operation to obtain the bucket information. If the cloud phone and the bucket are in the same region, use the value of the intranetEndpoint field. If they are in different regions, use the value of the extranetEndpoint field.', 'type' => 'string', 'required' => false, 'example' => 'oss-cn-shanghai-internal.aliyuncs.com', 'title' => ''], ], [ - 'name' => 'ServerType', + 'name' => 'BackupFilePath', 'in' => 'query', - 'schema' => [ - 'description' => 'The matrix specification.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* cpm.gn6.gx1'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'cpm.gn6.gx1' => 'cpm.gn6.gx1', - ], - 'example' => 'cpm.gn6.gx1', - ], + 'schema' => ['description' => 'The upload URL for the backup file.'."\n" + ."\n" + .'> If you upload the file to an OSS bucket, call the DescribeBuckets operation to get the bucketName. Then, select a key from ossObjectList. The key represents the folder path in the OSS bucket. Combine these values into the format `oss://${bucketName}/${key}`.', 'type' => 'string', 'required' => true, 'example' => 'oss://cloudphone-saved-bucket-****/backupDir/', 'title' => ''], ], [ - 'name' => 'ChargeType', + 'name' => 'BackupFileName', 'in' => 'query', - 'schema' => [ - 'description' => 'The billing method. Only the subscription billing method is supported.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'PrePaid' => '', - ], - 'example' => 'PrePaid', - ], + 'schema' => ['description' => 'The name of the backup file.', 'type' => 'string', 'required' => false, 'example' => 'MyBackup', 'title' => ''], ], [ - 'name' => 'BandwidthPackageId', + 'name' => 'BackupAll', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'Specifies whether to back up the entire instance.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ - 'name' => 'NodeNameList', + 'name' => 'ExcludeSourceFilePathList', 'in' => 'query', + 'allowEmptyValue' => false, 'style' => 'repeatList', 'schema' => [ 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], + 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'maxItems' => 100, + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'title' => 'PlainResult', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****', - ], - 'NodeModel' => [ - 'description' => 'The matrixes.'."\n", + 'Data' => [ + 'description' => 'The result object.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Status' => [ - 'description' => 'The matrix status.'."\n", - 'type' => 'string', - 'example' => 'RUNNING', - ], - 'ServerType' => [ - 'description' => 'The matrix specification.'."\n", - 'type' => 'string', - 'example' => 'cpm.gn6.gx1', - ], - 'ResolutionWidth' => [ - 'description' => 'The width of the resolution. Unit: pixel.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '720', - ], - 'NodeName' => [ - 'description' => 'The matrix name.'."\n", - 'type' => 'string', - 'example' => 'node_name', - ], - 'Memory' => [ - 'description' => 'The memory size. Unit: GB.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '32', - ], - 'VSwitchId' => [ - 'description' => 'The vSwitch ID.'."\n", - 'type' => 'string', - 'example' => 'vsw-2zeekryyc1q3sm72l****', - ], - 'GmtModified' => [ - 'description' => 'The last modification time.'."\n", - 'type' => 'string', - 'example' => '2025-02-13 02:03:14', - ], - 'Cpu' => [ - 'description' => 'The number of CPU cores.'."\n", - 'type' => 'string', - 'example' => '2', - ], - 'ResolutionHeight' => [ - 'description' => 'The height of the resolution. Unit: pixel.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1280', - ], - 'NetworkId' => [ - 'description' => 'The network ID.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou+dir-5mwr9azebliva****', - ], - 'GmtExpired' => [ - 'description' => 'The expiration time of the subscription matrix.'."\n", - 'type' => 'string', - 'example' => '2025-03-09 02:00:34', - ], - 'PhoneCount' => [ - 'description' => 'The number of cloud phone instances per matrix.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '25', - ], - 'GmtCreate' => [ - 'description' => 'The creation time.'."\n", - 'type' => 'string', - 'example' => '2024-11-13 02:03:14', - ], - 'ChargeType' => [ - 'description' => 'The billing method.'."\n", - 'type' => 'string', - 'example' => 'PrePaid', - ], - 'NodeId' => [ - 'description' => 'The matrix ID.'."\n", - 'type' => 'string', - 'example' => 'cpn-ehs0yoedq8ntm****', - ], - 'RegionId' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'InstanceType' => [ - 'type' => 'string', - ], - 'ShareDataVolume' => [ - 'description' => 'The size of the shared storage. Unit: GiB.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'PhoneDataInfo' => [ - 'type' => 'object', - 'properties' => [ - 'PhoneDataId' => [ - 'type' => 'string', - ], - 'PhoneDataVolume' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - ], - 'NetworkInfos' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'VSwitchId' => [ - 'type' => 'string', - ], - 'NetworkId' => [ - 'type' => 'string', - ], - 'NetworkType' => [ - 'type' => 'string', - ], - 'BandwidthPackageType' => [ - 'type' => 'string', - ], - 'BandwidthPackageId' => [ - 'type' => 'string', - ], - ], - ], - ], - 'NetworkType' => [ - 'type' => 'string', - ], - 'BandwidthPackageType' => [ - 'type' => 'string', - ], - 'BandwidthPackageId' => [ - 'type' => 'string', - ], - 'BizTags' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'type' => 'string', - ], - 'Value' => [ - 'type' => 'string', - ], - ], - ], - ], - 'BandwidthPackageStatus' => [ - 'type' => 'string', - ], - 'SwapSize' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'BackupFileId' => ['description' => 'The ID of the backup file.', 'type' => 'string', 'example' => 'bf-b0qbg3pbpjkn7****', 'title' => ''], + 'BackupFileName' => ['description' => 'The name of the backup file.', 'type' => 'string', 'example' => 'MyBackup', 'title' => ''], + 'AndroidInstanceId' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-22ex666a653gq****', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], + 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****'."\n", + 'title' => '', ], - 'TotalCount' => [ - 'description' => 'The total number of cloud phone instances.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '31', - ], - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. Valid values:'."\n" - ."\n" - .'* If **NextToken** is empty, no next page exists.'."\n" - .'* ****'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], - 'MaxResults' => [ - 'description' => 'The maximum number of entries per page.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '20', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****', 'title' => ''], + 'Count' => ['description' => 'The number of instances that are backed up.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + 'TaskId' => ['description' => 'The batch task ID.', 'type' => 'string', 'example' => 't-14xwibw7pyrjd****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"NodeModel\\": [\\n {\\n \\"Status\\": \\"RUNNING\\",\\n \\"ServerType\\": \\"cpm.gx7.10xlarge\\",\\n \\"ResolutionWidth\\": 720,\\n \\"NodeName\\": \\"node_name\\",\\n \\"Memory\\": 32,\\n \\"VSwitchId\\": \\"vsw-2zeekryyc1q3sm72l****\\",\\n \\"GmtModified\\": \\"2025-02-13 02:03:14\\",\\n \\"Cpu\\": \\"2\\",\\n \\"ResolutionHeight\\": 1280,\\n \\"NetworkId\\": \\"cn-hangzhou+dir-5mwr9azebliva****\\",\\n \\"GmtExpired\\": \\"2025-03-09 02:00:34\\",\\n \\"PhoneCount\\": 25,\\n \\"GmtCreate\\": \\"2024-11-13 02:03:14\\",\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"NodeId\\": \\"cpn-ehs0yoedq8ntm****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"ac.max\\",\\n \\"ShareDataVolume\\": 100,\\n \\"PhoneDataInfo\\": {\\n \\"PhoneDataId\\": \\"pd-dhusabisshj****\\",\\n \\"PhoneDataVolume\\": 20\\n },\\n \\"NetworkInfos\\": [\\n {\\n \\"VSwitchId\\": \\"vsw-j6cjgev6fv3ftw4f0****\\",\\n \\"NetworkId\\": \\"cn-hangzhou+dir-avcuocx9805oq****\\",\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageId\\": \\"cbwp-hn3tj409amvamz8mf****\\"\\n }\\n ],\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageId\\": \\"cbwp-7xvrl7axet2qg6yia******\\",\\n \\"BizTags\\": [\\n {\\n \\"Key\\": \\"keyname\\",\\n \\"Value\\": \\"valuename\\"\\n }\\n ],\\n \\"BandwidthPackageStatus\\": \\"1\\",\\n \\"SwapSize\\": 0\\n }\\n ],\\n \\"TotalCount\\": 31,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MaxResults\\": 20\\n}","type":"json"}]', - 'title' => 'DescribeCloudPhoneNodes', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"MyBackup\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-22ex666a653gq****\\"\\n }\\n ],\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-14xwibw7pyrjd****\\"\\n}","type":"json"}]', + 'title' => 'BackupFile', + 'description' => 'You can save backup files generated by cloud phones only to Object Storage Service (OSS).', + 'changeSet' => [ + ['createdAt' => '2025-01-03T11:17:53.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-17T05:04:23.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-12-06T02:39:25.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-11-14T10:59:55.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-10-16T09:05:59.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'translator' => 'manual', ], - 'ModifyCloudPhoneNode' => [ - 'summary' => 'Modifies a cloud phone matrix. Currently, you can only modify the name of a cloud phone matrix.', - 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'BatchGetAcpConnectionTicket' => [ + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneE7UBTJ', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneMEHI4H'], ], 'parameters' => [ [ - 'name' => 'NodeId', + 'name' => 'InstanceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the instance group.', 'type' => 'string', 'required' => false, 'example' => 'ag-25nt4kk9whjh****', 'title' => ''], + ], + [ + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the cloud phone matrix.'."\n", - 'type' => 'string', + 'description' => 'The IDs of the cloud phone instances. You can specify 1 to 100 IDs of cloud phone instances.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-bj9t2gmys****', 'title' => ''], 'required' => false, - 'example' => 'cpn-0ugbptfu473fy****', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NewNodeName', + 'name' => 'EndUserId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the user to whom the cloud phone instance is assigned.', 'type' => 'string', 'required' => false, 'example' => 'user', 'title' => ''], + ], + [ + 'name' => 'ConnectionMode', + 'in' => 'query', + 'schema' => ['description' => 'The connection mode.', 'type' => 'string', 'required' => false, 'example' => 'custom', 'title' => ''], + ], + [ + 'name' => 'InstanceTasks', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The name that you want to assign to the cloud phone matrix.'."\n", - 'type' => 'string', + 'description' => 'The instance connection task, which is used to query whether the ticket retrieval task is completed.', + 'type' => 'array', + 'items' => [ + 'description' => 'The instance connection task.', + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-fkuit0cmyfvzz****', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the task.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou@c9f5c2e8-f5c4-4b01-8602-000cae94****', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => 'node_name_new', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'StreamMode', + 'name' => 'Ports', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', + 'type' => 'array', + 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'maxItems' => 10, + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], @@ -1163,35 +797,68 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****'], + 'InstanceConnectionModels' => [ + 'description' => 'The results of the instance connection tasks.', + 'type' => 'array', + 'items' => [ + 'description' => 'The result of the instance connection task.', + 'type' => 'object', + 'properties' => [ + 'AppInstanceGroupId' => ['description' => 'The ID of the delivery group.', 'type' => 'string', 'example' => 'aig-1uzb6heg797z3****', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'example' => 'acp-ajxvwo1u0hqvd****', 'title' => ''], + 'TaskStatus' => ['description' => 'The state of the task. If FINISHED is returned, it indicates that a value can be retrieved from the Ticket field. If the returned value is not FINISHED, you still need to use this operation to query the Ticket generation result by using TaskId.', 'type' => 'string', 'example' => 'FINISHED', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the task.', 'type' => 'string', 'example' => 'cn-hangzhou@c9f5c2e8-f5c4-4b01-8602-000cae94****', 'title' => ''], + 'Ticket' => ['description' => 'The ticket used to connect to the cloud phone instance.', 'type' => 'string', 'example' => 'piVE58_AdmVSVW7SEW3*AE5*p8mmO5gvItsNOmv4S_f_cNpoU_BOTwChTBoNM1ZJeedfK9zxYnbN5hossqIZCr6t7SGxRigm2Cb4fGaCdBZWIzmgdHq6sXXZQg4KFWufyvpeV*0*Cm58slMT1tJw3****', 'title' => ''], + 'ErrorCode' => ['type' => 'string', 'description' => '', 'example' => 'InvalidResourceId.NotFound', 'title' => ''], + 'PersistentAppInstanceId' => ['type' => 'string', 'description' => '', 'example' => 'p-abdywvcksdb****', 'title' => ''], + 'AppInstanceId' => ['type' => 'string', 'description' => '', 'example' => 'ai-0caoetkqi8kj****', 'title' => ''], + 'Port' => ['description' => 'The port used for establishing a connection.', 'type' => 'integer', 'format' => 'int32', 'example' => '10000', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\"\\n}","type":"json"}]', - 'title' => 'ModifyCloudPhoneNode', - ], - 'RenewCloudPhoneNodes' => [ - 'summary' => 'Renews a cloud mobile matrix.', - 'path' => '', - 'methods' => [ - 'post', - 'get', + 'title' => 'BatchGetAcpConnectionTicket', + 'summary' => 'Retrieves connection tickets in batch. This operation generates connection tickets asynchronously. In most cases, the tickets are returned directly in the response of the first call. However, in some situations, the initial response will contain a `TaskId`. You must then poll this endpoint with the `TaskId` until the generation is complete and the tickets are returned.', + 'description' => ''."\n" + ."\n" + .'本接口的作用因云手机产品版本和实例串流模式而异:'."\n" + ."\n" + .'- 云手机实例版或云手机矩阵版(抢占模式):只能通过同一个`EnduserId`获取`Ticket`。'."\n" + ."\n" + .'- 云手机矩阵版(协同模式):可通过传入不同的`EnduserId`来为不同的用户(至多 5 个)同时获取`Ticket`并串流。每次只能传入 1 个`EnduserId`。'."\n" + ."\n" + .'> 实例串流模式可通过 [ModifyCloudPhoneNode](~~2878539~~) 接口的`StreamMode`参数来定义。'."\n" + ."\n" + .'', + 'changeSet' => [ + ['createdAt' => '2025-05-31T08:16:30.000Z', 'description' => 'Response parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\",\\n \\"InstanceConnectionModels\\": [\\n {\\n \\"AppInstanceGroupId\\": \\"aig-1uzb6heg797z3****\\",\\n \\"InstanceId\\": \\"acp-ajxvwo1u0hqvd****\\",\\n \\"TaskStatus\\": \\"FINISHED\\",\\n \\"TaskId\\": \\"cn-hangzhou@c9f5c2e8-f5c4-4b01-8602-000cae94****\\",\\n \\"Ticket\\": \\"piVE58_AdmVSVW7SEW3*AE5*p8mmO5gvItsNOmv4S_f_cNpoU_BOTwChTBoNM1ZJeedfK9zxYnbN5hossqIZCr6t7SGxRigm2Cb4fGaCdBZWIzmgdHq6sXXZQg4KFWufyvpeV*0*Cm58slMT1tJw3****\\",\\n \\"ErrorCode\\": \\"InvalidResourceId.NotFound\\",\\n \\"PersistentAppInstanceId\\": \\"p-abdywvcksdb****\\",\\n \\"AppInstanceId\\": \\"ai-0caoetkqi8kj****\\",\\n \\"Port\\": 10000\\n }\\n ]\\n}","type":"json"}]', + ], + 'CancelAgentTask' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -1201,136 +868,83 @@ 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', - 'riskType' => 'high', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone3XZF7I', - ], - ], + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], + ], 'parameters' => [ [ - 'name' => 'NodeIds', - 'in' => 'formData', + 'name' => 'TaskIds', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The cloud phone matrix IDs.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The cloud phone matrix ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-csbdhjcbvfd****', - ], - 'required' => false, + 'items' => ['description' => 'The task ID.', 'type' => 'string', 'required' => true, 'example' => 't-bp67acfmxazb4p****', 'title' => ''], + 'required' => true, 'maxItems' => 100, - 'minItems' => 1, - ], - ], - [ - 'name' => 'PeriodUnit', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The unit of the subscription duration.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Month (default)'."\n" - .'* Year'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Month' => '', - 'Year' => '', - ], - 'example' => 'Month', - ], - ], - [ - 'name' => 'Period', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The subscription duration. The unit is specified by `PeriodUnit`. Valid values:'."\n" - ."\n" - .'* When `PeriodUnit` is set to **year**: 1.'."\n" - .'* When `PeriodUnit` is set to **month**: 1, 2, 3, and 6.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], - ], - [ - 'name' => 'AutoRenew', - 'in' => 'formData', - 'schema' => [ - 'description' => 'Specifies whether to enable the auto-renewal feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: enables the auto-renewal feature. In this case, the system automatically renews the instance upon expiration.'."\n" - .'* false (default): disables the auto-renewal feature. In this case, you need to manually renew the instance upon expiration.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', - ], - 'example' => 'true', - ], - ], - [ - 'name' => 'AutoPay', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - ], - ], - [ - 'name' => 'PromotionId', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', + 'description' => 'A list of task IDs.', + 'title' => '', + '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-67E1FC****', - ], - 'OrderId' => [ - 'description' => 'The order ID.'."\n", - 'type' => 'string', - 'example' => '22365781890****', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '4B886792-2051-5DB4-8AE6-C8E45D3B4****'], + 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + 'Tasks' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TaskId' => ['description' => 'The globally unique task ID.', 'type' => 'string', 'example' => 't-imr0fufqd7cle****', 'title' => ''], + 'InstanceId' => ['description' => 'The mobile node ID.', 'type' => 'string', 'example' => 'acp-ek65k51zoxia3x8xz', 'title' => ''], + 'PreviousStatus' => ['description' => 'The task status before cancellation. Valid values include:'."\n" + ."\n" + .'PENDING: The task is being created.'."\n" + ."\n" + .'RUNNING: The task is running.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'CurrentStatus' => ['description' => 'The task status after the cancellation request. Possible values include:'."\n" + ."\n" + .'`CANCELLING` or `CANCELED`: The task is being or has been canceled.'."\n" + ."\n" + .'`COMPLETED`: The task was already complete and could not be canceled.', 'type' => 'string', 'example' => 'COMPLETED', 'title' => ''], + 'CancelAt' => ['description' => 'The task\'s cancellation time, in ISO 8601 format.', 'type' => 'string', 'example' => '2026-04-13T17:42:19Z'."\n", 'title' => ''], + 'FailedReason' => ['description' => 'The failure reason.', 'type' => 'string', 'example' => 'Task status [COMPLETED] does not support cancellation, only PENDING/RUNNING/CANCELLING tasks can be canceled.', 'title' => ''], + ], + 'description' => 'A task object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of task objects.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response schema.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'CancelAgentTask', + 'summary' => 'Cancels running agent tasks on a mobile node.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC****\\",\\n \\"OrderId\\": \\"22365781890****\\"\\n}","type":"json"}]', - 'title' => 'RenewCloudPhoneNodes', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4B886792-2051-5DB4-8AE6-C8E45D3B4****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\",\\n \\"Tasks\\": [\\n {\\n \\"TaskId\\": \\"t-imr0fufqd7cle****\\",\\n \\"InstanceId\\": \\"acp-ek65k51zoxia3x8xz\\",\\n \\"PreviousStatus\\": \\"RUNNING\\",\\n \\"CurrentStatus\\": \\"COMPLETED\\",\\n \\"CancelAt\\": \\"2026-04-13T17:42:19Z\\\\n\\",\\n \\"FailedReason\\": \\"Task status [COMPLETED] does not support cancellation, only PENDING/RUNNING/CANCELLING tasks can be canceled.\\"\\n }\\n ]\\n}","type":"json"}]', ], 'ChangeCloudPhoneNode' => [ - 'summary' => '修改云手机矩阵的配置', + 'summary' => 'Modifies the configuration of a cloud phone matrix, including the instance type and the number of cloud phone instances.', 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -1342,181 +956,135 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneUQT9QO', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneUQT9QO'], ], 'parameters' => [ [ 'name' => 'NodeId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-0ugbptfu473fy****', - ], + 'schema' => ['description' => 'The ID of the cloud phone matrix.', 'type' => 'string', 'required' => false, 'example' => 'cpn-0ugbptfu473fy****', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The instance type.', + 'enumValueTitles' => ['ac.max' => 'Nvidia T4, 8 vCPU, 12 GiB Memory', 'ac.plus' => 'Nvidia T4, 4 vCPU, 6 GiB Memory'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'ac.max' => '8vCPU 12GiB', - 'ac.plus' => '4vCPU 6GiB', - ], 'example' => 'ac.max', + 'title' => '', ], ], [ 'name' => 'PhoneCount', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], + 'schema' => ['description' => 'The number of cloud phone instances. Call the [](t2729804.xdita#)operation to query the minimum and maximum number of allowed instances.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'UpBandwidthLimit', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['description' => 'The upstream bandwidth limit, in Mbps.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], ], [ 'name' => 'DownBandwidthLimit', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['description' => 'The downstream bandwidth limit, in Mbps.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], ], [ 'name' => 'PhoneDataVolume', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['description' => 'The capacity of the internal storage, in GiB. Valid values: 10 to 4000. If you do not specify this parameter, the current capacity is retained.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'AutoPay', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - ], + 'schema' => ['description' => 'Indicates if automatic payment is enabled. Default: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'PromotionId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'example' => '50003308011****', 'title' => ''], ], [ 'name' => 'DisplayConfig', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'SwapSize', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ShareDataVolume', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '4610632D-D661-5982-B3D7-5D3FD183F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '4610632D-D661-5982-B3D7-5D3FD183F****'], 'NodeInfos' => [ - 'description' => '', + 'description' => 'Information about the modified cloud phone matrix.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'The matrix.', 'type' => 'object', 'properties' => [ - 'NodeId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cpn-e5kxgjyt8s1mb****', - ], + 'NodeId' => ['description' => 'The ID of the cloud phone matrix.', 'type' => 'string', 'example' => 'cpn-e5kxgjyt8s1mb****', 'title' => ''], 'InstanceInfos' => [ - 'description' => '', + 'description' => 'Information about the cloud phone instances.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'Information about the cloud phone instance.', 'type' => 'object', 'properties' => [ - 'InstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cpn-jewjt8xryuitu****', - ], - 'PhoneDataVolume' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'cpn-jewjt8xryuitu****', 'title' => ''], + 'PhoneDataVolume' => ['description' => 'The internal storage capacity, in GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'ShareDataVolume' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'ShareDataVolume' => ['description' => 'The size of the shared storage, in GiB. If the matrix uses independent internal storage, this defaults to a fixed 64 GiB for global files, such as images. If the matrix was configured with shared storage at purchase, this indicates the size of that storage.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'OrderId' => [ - 'type' => 'string', - ], + 'OrderId' => ['description' => 'The ID of the order for this change.', 'type' => 'string', 'example' => '223684716098****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ChangeCloudPhoneNode', + 'changeSet' => [ + ['createdAt' => '2025-09-12T10:37:06.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-09-05T06:13:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-08-08T10:57:57.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-08-08T09:54:32.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4610632D-D661-5982-B3D7-5D3FD183F****\\",\\n \\"NodeInfos\\": [\\n {\\n \\"NodeId\\": \\"cpn-e5kxgjyt8s1mb****\\",\\n \\"InstanceInfos\\": [\\n {\\n \\"InstanceId\\": \\"cpn-jewjt8xryuitu****\\",\\n \\"PhoneDataVolume\\": 200\\n }\\n ],\\n \\"ShareDataVolume\\": 100\\n }\\n ],\\n \\"OrderId\\": \\"223684716098****\\"\\n}","type":"json"}]', ], - 'ExpandDataVolume' => [ - 'summary' => '存储扩容', - 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'CheckResourceStock' => [ + 'summary' => 'Checks the inventory of Cloud Phone resources. Before you create an instance, call this operation to check whether resources are available in the target region. Create the instance only after you confirm that resources are available.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -1525,119 +1093,113 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'high', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneUQT9QO', - ], + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneQ1CSHT'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'BizRegionId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ - 'name' => 'NodeIds', + 'name' => 'ZoneId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-csbdhjcbvfd****', - ], - 'required' => false, - 'maxItems' => 100, - ], + 'schema' => ['description' => 'The zone where the resource resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-i', 'title' => ''], ], [ - 'name' => 'ShareDataVolume', + 'name' => 'AcpSpecId', 'in' => 'query', 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'The ID of the instance type.', + 'enumValueTitles' => ['acp.perf.large' => 'Enhanced', 'acp.basic.small' => 'Lightweight', 'acp.std.small' => 'General', 'acp.std.large' => 'Standard', 'acp.perf.small' => 'Enhanced'], + 'type' => 'string', 'required' => false, - 'example' => '100', - ], - ], - [ - 'name' => 'PhoneDataVolume', - 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', + 'enum' => [ + 'acp.basic.small', 'acp.std.small', 'acp.std.large', 'acp.perf.small', 'acp.perf.large', 'acp.basic-v3.small', 'acp.basic-g1.small', 'acp.basic-g2.small', 'acp.std-g3.large', 'acp.perf-g4.large', 'acp.pro.large', 'acp.pro-g6.large', 'cps.std', 'cps.std.gn6ia', 'cps.std.r8ys', 'cpm.gn6.gx1', 'cpm.gn6.gx2', 'ac.se', 'ac.plus', 'ac.pro', + 'ac.max', 'ac1.plus', 'acp.std.medium', 'acp.basic-g2r.small', 'acp.std-g3.medium', 'acp.std-g3s.large', 'acp.std-g3r.large', 'cpm.8yx.gx1', 'cps.std.64c256g', 'cps.perf.gn6ia', 'cpm.gx7.10xlarge', 'cpm.gx8.16xlarge', + ], + 'example' => 'acp.basic.small', + 'title' => '', ], ], [ - 'name' => 'AutoPay', + 'name' => 'GpuAcceleration', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'Specifies whether to enable GPU acceleration.', + 'enumValueTitles' => ['true' => 'Enables GPU acceleration.', 'false' => 'Disables GPU acceleration. This is the default value.'], 'type' => 'boolean', 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'true', + 'example' => 'false', + 'title' => '', ], ], [ - 'name' => 'PromotionId', + 'name' => 'Amount', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The number of Cloud Phone instances.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****', - ], - 'OrderId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '22326560487****', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '805D8FB6-512A-531C-9E4D-2A807D3C****'], + 'ResourceStockModels' => [ + 'description' => 'The resource inventory details.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RegionId' => ['description' => 'The ID of the region.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], + 'ZoneId' => ['description' => 'The ID of the zone.', 'type' => 'string', 'example' => 'cn-shanghai-b', 'title' => ''], + 'StockStatus' => [ + 'description' => 'The inventory status of the instance group.', + 'enumValueTitles' => ['SoldOut' => 'The resources are sold out.', 'Available' => 'The inventory is sufficient.'], + 'type' => 'string', + 'example' => 'Available', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"805D8FB6-512A-531C-9E4D-2A807D3C****\\",\\n \\"ResourceStockModels\\": [\\n {\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"ZoneId\\": \\"cn-shanghai-b\\",\\n \\"StockStatus\\": \\"Available\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'Check Resource Stock Status', + 'changeSet' => [ + ['createdAt' => '2025-07-22T07:09:20.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-06-04T07:07:34.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-01-22T12:26:48.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-01-13T12:18:27.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-11-18T16:14:29.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-09-05T14:17:06.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-07-29T15:02:41.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', ], - 'DeleteCloudPhoneNodes' => [ - 'summary' => 'Deletes a cloud phone matrix.', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CreateAndroidInstanceGroup' => [ + 'summary' => 'Create pay-as-you-go or subscription cloud phone instance groups. An instance group can manage multiple instances. You can group instances with similar functions into an instance group to manage them as a single unit.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -1649,923 +1211,738 @@ 'operationType' => 'none', 'riskType' => 'high', 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneZCSVZQ', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphoneYWRDCM'], ], 'parameters' => [ [ - 'name' => 'NodeIds', - 'in' => 'formData', - 'style' => 'repeatList', + 'name' => 'BizRegionId', + 'in' => 'query', 'schema' => [ - 'description' => 'The cloud phone matrix IDs.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The cloud phone matrix ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-05e4d1cec2urdh1j****', - ], - 'required' => false, - 'maxItems' => 100, - 'minItems' => 1, + 'description' => 'The region ID. You can call the [DescribeRegions](~~DescribeRegions~~) operation to query the regions where Cloud Phone instances are available.', + 'enumValueTitles' => ['cn-shenzhen' => 'China (Shenzhen)', 'cn-beijing' => 'China (Beijing)', 'cn-shanghai' => 'China (Shanghai)', 'cn-hongkong' => 'China (Hong Kong)', 'ap-southeast-1' => 'Singapore', 'cn-hangzhou' => 'China (Hangzhou)'], + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + 'title' => '', ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'InstanceGroupName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the instance group.'."\n" + ."\n" + .'> The name can be up to 30 characters in length. It must start with an uppercase or lowercase letter or a Chinese character, and cannot start with `http://` or `https://`. The name can contain only Chinese characters, letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).', 'type' => 'string', 'example' => 'Cloud phoneA', 'required' => false, 'title' => ''], + ], + [ + 'name' => 'NumberOfInstances', + 'in' => 'query', + 'schema' => ['description' => 'The number of instances in the instance group. The maximum value is 100.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '1000', 'minimum' => '1', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'ChargeType', + 'in' => 'query', '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-67E1FC****', - ], - ], + 'description' => 'The billing method.', + 'enumValueTitles' => ['PostPaid' => 'pay-as-you-go', 'PrePaid' => 'subscription'], + 'type' => 'string', + 'required' => false, + 'example' => 'PostPaid', + 'title' => '', ], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC****\\"\\n}","type":"json"}]', - 'title' => 'DeleteCloudPhoneNodes', - 'description' => 'Before you proceed, make sure that the cloud phone matrix that you want to delete expired.'."\n", - ], - 'DescribeRegions' => [ - 'summary' => 'Query available regions.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneTVG3Y7', + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['description' => 'The subscription duration. The PeriodUnit parameter specifies the unit.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], - ], - 'parameters' => [ [ - 'name' => 'AcceptLanguage', + 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => [ - 'description' => 'The display language of the console. Valid values:'."\n" - ."\n" - .'* cn: Simplified Chinese'."\n" - .'* en: English', + 'description' => 'The unit of the subscription duration.', + 'enumValueTitles' => ['Month' => 'Month', 'Year' => 'Year', 'Hour' => 'Hour. This value is valid only for the pay-as-you-go billing method.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'en' => 'en', - 'cn' => 'cn', - ], - 'example' => 'en', + 'example' => 'Month', + 'title' => '', ], ], [ - 'name' => 'SaleMode', + 'name' => 'InstanceGroupSpec', 'in' => 'query', 'schema' => [ - 'description' => 'The sales mode.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Instance: the instance group mode. [Default]'."\n" - .'* Node: the matrix mode. [Whitelist required]', + 'description' => 'The instance group specification. You can call the [DescribeSpec](~~DescribeSpec~~) operation to query the specifications that are available for Cloud Phone instances.', + 'enumValueTitles' => ['acp.perf.large' => 'compute-optimized (8 vCPUs, 16 GiB of memory, and 32 GiB of storage)', 'acp.basic.small' => 'lightweight (2 vCPUs, 4 GiB of memory, and 32 GiB of storage)', 'acp.std.large' => 'standard (4 vCPUs, 8 GiB of memory, and 32 GiB of storage)'], 'type' => 'string', + 'required' => true, + 'example' => 'acp.basic.small', + 'title' => '', + ], + ], + [ + 'name' => 'AutoPay', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable automatic payment. Default value: false.', + 'enumValueTitles' => ['true' => 'Automatic payment is enabled. Ensure that your account has a sufficient balance.', 'false' => 'Manual payment is required.'], + 'type' => 'boolean', 'required' => false, - 'enumValueTitles' => [ - 'Instance' => 'Instance', - 'Node' => 'Node', - ], - 'example' => 'Instance', - 'enum' => [ - 'Instance', - 'Node', - ], + 'example' => 'false', + 'title' => '', ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'AutoRenew', + 'in' => 'query', 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Return parameters.', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.', - 'type' => 'string', - 'example' => 'A87B3769-0D05-5383-B236-5798B455****', - ], - 'RegionModels' => [ - 'description' => 'Available regions.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'RegionId' => [ - 'description' => 'The region ID.', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'RegionName' => [ - 'description' => 'The region name.', - 'type' => 'string', - 'example' => 'China (Hangzhou)', - ], - ], - ], - ], - ], + 'description' => 'Specifies whether to enable auto-renewal for subscription resources. Default value: false.', + 'enumValueTitles' => ['true' => 'The resource automatically renews upon expiration.', 'false' => 'You must manually renew the resource after it expires.'], + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + 'title' => '', ], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A87B3769-0D05-5383-B236-5798B455****\\",\\n \\"RegionModels\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"RegionName\\": \\"华东1(杭州)\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'Query Available Regions', - ], - 'DescribeSpec' => [ - 'summary' => 'Query available specifications.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'OfficeSiteId', + 'in' => 'query', + 'schema' => ['description' => 'The network ID.'."\n" + ."\n" + .'- To create instances in a Shared Network: This parameter is optional. Specify the ID of a **Shared Network**. You can find the ID on the [Cloud Phone console > Network](https://wya.wuying.aliyun.com/network) page. If no Shared Network is available in the console, you can omit this parameter. The system automatically creates a Shared Network when you create the instance group.'."\n" + ."\n" + .'- To create instances in a VPC: This parameter is required. Specify the ID of a **VPC**. You can find the ID on the [Cloud Phone console > Network](https://wya.wuying.aliyun.com/network) page. If no VPC is available in the console, you must create one first.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou+dir-745976****', 'title' => ''], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneQ1CSHT', - 'FEATUREcloudphoneM9M7K0', - 'FEATUREcloudphone3VSOTB', - 'FEATUREcloudphone32DVRA', - 'FEATUREcloudphoneVYV97B', + [ + 'name' => 'VSwitchId', + 'in' => 'query', + 'schema' => ['description' => 'The vSwitch ID. You can call the [DescribeVSwitches](~~448774~~) operation to query available vSwitches.'."\n" + ."\n" + .'- If you create instances in a Shared Network, omit this parameter.'."\n" + ."\n" + .'- If you create instances in a VPC, this parameter is required. The system creates the instances in the specified vSwitch.', 'type' => 'string', 'required' => false, 'example' => 'vsw-uf61uvzhz8ejaw776****', 'title' => ''], ], - ], - 'parameters' => [ [ - 'name' => 'BizRegionId', + 'name' => 'PolicyGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The policy ID. You can call the [ListPolicyGroups](~~ListPolicyGroups~~) operation to query available policies.', 'type' => 'string', 'required' => false, 'example' => 'pg-b7bxrrwxkijjh****', 'title' => ''], + ], + [ + 'name' => 'ImageId', + 'in' => 'query', + 'schema' => ['description' => 'The image ID. You can call the [DescribeImageList](~~DescribeImageList~~) operation to query available images for Cloud Phone instances.', 'type' => 'string', 'required' => true, 'example' => 'imgc-06zyt9m93zwax****', 'title' => ''], + ], + [ + 'name' => 'Amount', + 'in' => 'query', + 'schema' => ['description' => 'The number of instance groups to create. Valid values: 1 to 100. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'required' => false, 'example' => '8', 'title' => ''], + ], + [ + 'name' => 'GpuAcceleration', 'in' => 'query', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'Specifies whether to enable GPU acceleration.', + 'enumValueTitles' => ['true' => 'Enabled', 'false' => 'Disabled (default)'], + 'type' => 'boolean', 'required' => false, - 'example' => 'cn-hangzhou', + 'example' => 'false', + 'title' => '', ], ], [ - 'name' => 'SpecIds', + 'name' => 'KeyPairId', + 'in' => 'query', + 'schema' => ['description' => 'The key pair ID. If you specify a valid key pair ID when you create the instance group, the system attaches the key pair to all successfully created instances. No separate API call is required to attach the key pair.'."\n" + ."\n" + .'> Attaching a key pair during a scale-out operation is not supported.', 'type' => 'string', 'required' => false, 'example' => 'kp-7o9xywwfutc1l****', 'title' => ''], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => 'A client-generated token to ensure request idempotence. This parameter prevents duplicate requests. The token can be up to 100 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'asadbuvwiabdbvchj****', 'title' => ''], + ], + [ + 'name' => 'EnableIpv6', + 'in' => 'query', + 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'null', 'title' => ''], + ], + [ + 'name' => 'Ipv6Bandwidth', + 'in' => 'query', + 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => 'null', 'title' => ''], + ], + [ + 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'List of specification IDs.', + 'description' => 'The resource tags.', 'type' => 'array', 'items' => [ - 'description' => 'Specification ID.', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'acp.perf.large' => 'Performance', - 'acp.basic.small' => 'Lightweight', - 'acp.std.small' => 'General', - 'acp.std.large' => 'Standard', - 'acp.perf.small' => 'Enhanced', + 'description' => 'A resource tag.', + 'type' => 'object', + 'properties' => [ + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'value', 'title' => ''], + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'key', 'title' => ''], ], - 'example' => 'acp.basic.small', + 'required' => false, + 'title' => '', + 'example' => '', ], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'SpecType', + 'name' => 'NetworkInfo', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => 'Specification type.', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'CPU' => '', - 'GPU' => '', + 'type' => 'object', + 'properties' => [ + 'BandwidthPackageName' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'CidrBlock' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'LimitedBandwidth' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'InternetChargeType' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'IpRatio' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'Isp' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'PayType' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'Period' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'PeriodUnit' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'AutoPay' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'AutoRenew' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'VisibleType' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + 'PromotionId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'PaidCallbackUrl' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], - 'example' => 'ARM', + 'required' => false, + 'description' => '', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'SpecStatus', + 'name' => 'BandwidthPackageType', 'in' => 'query', - 'schema' => [ - 'description' => 'Specification status.', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Unsupported' => 'Unsupported', - 'Available' => 'Available', - ], - 'example' => 'Available', - ], + 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ - 'name' => 'SaleMode', + 'name' => 'BandwidthPackageId', 'in' => 'query', - 'schema' => [ - 'description' => 'The purchase mode of cloud mobile phones.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Instance (default): the instance group mode.'."\n" - .'* Node: the matrix mode \\[whitelisted].'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Instance' => '', - 'Node' => '', - ], - 'example' => 'Instance', - 'enum' => [ - 'Instance', - 'Node', - ], - ], + 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ - 'name' => 'MaxResults', + 'name' => 'NetworkType', 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of items to return per page in a paginated query. The value range is 1 to 100, with a default value of 100.', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '0', - 'example' => '20', - ], + 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ - 'name' => 'NextToken', + 'name' => 'PromotionId', 'in' => 'query', - 'schema' => [ - 'description' => 'Indicates the starting position for reading. If left empty, it starts from the beginning.', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', - ], + 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ - 'name' => 'MatrixSpec', + 'name' => 'StreamMode', 'in' => 'query', - 'schema' => [ - 'description' => 'The matrix specification.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* cpm.gn6.gx1'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'cpm.gn6.gx1' => 'cpm.gn6.gx1', - ], - 'example' => 'cpm.gn6.gx1', - 'enum' => [ - 'cpm.gn6.gx2', - 'cpm.gn6.gx1', - ], - ], + 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], + ], + [ + 'name' => 'PaidCallBackUrl', + 'in' => 'query', + 'schema' => ['type' => 'string', 'example' => 'wya.wuying.aliyun.com/instanceGroup', 'description' => '', 'title' => ''], + ], + [ + 'name' => 'SaleMode', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + [ + 'name' => 'InstanceVersion', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => 'D9888DAD-331E-5FBC-B5A0-F2445115****', - ], - 'TotalCount' => [ - 'description' => 'Total number of items.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '4', - ], - 'NextToken' => [ - 'description' => 'Indicates the current read position returned by this call. An empty value means that all data has been read.', - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****', - ], - 'SpecInfoModel' => [ - 'description' => 'The specifications.'."\n", + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****'], + 'InstanceGroupInfos' => [ + 'description' => 'The created instance groups.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'SpecId' => [ - 'description' => 'Specification ID.', - 'type' => 'string', - 'example' => 'acp.basic.small', - ], - 'Core' => [ - 'description' => 'Number of CPU cores.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8', - ], - 'Memory' => [ - 'description' => 'Memory size.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '16', - ], - 'SystemDiskSize' => [ - 'description' => 'System disk size, in GB.', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '32', - ], - 'SpecType' => [ - 'description' => 'Specification type.', - 'type' => 'string', - 'example' => 'ARM', - ], - 'SpecStatus' => [ - 'description' => 'Specification status.', - 'type' => 'string', - 'example' => 'Available', - ], - 'PhoneCount' => [ - 'description' => '', - 'type' => 'string', - 'example' => '2', - ], - 'Resolution' => [ - 'description' => '', - 'type' => 'string', - 'example' => '1920*1080', - ], - 'MaxPhoneCount' => [ - 'description' => 'The maximum number of cloud phone instances.'."\n", - 'type' => 'string', - 'example' => '40', - ], - 'MinPhoneCount' => [ - 'description' => 'The minimum number of cloud phone instances.'."\n", - 'type' => 'string', - 'example' => '4', + 'InstanceGroupId' => ['description' => 'The instance group ID.', 'type' => 'string', 'example' => 'ag-cuv4scs4obxch****', 'title' => ''], + 'InstanceIds' => [ + 'description' => 'The instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-g40b9at5nhjo9****', 'title' => ''], + 'title' => '', + 'example' => '', ], ], 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '22365781890****', 'title' => ''], + 'InstanceGroupIds' => [ + 'description' => 'The instance group IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'example' => 'ag-cuv4scs4obxch****', 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'NetworkPackageOrderModel' => [ + 'type' => 'object', + 'properties' => [ + 'BandwidthPackageOrderId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'BandwidthPackageId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D9888DAD-331E-5FBC-B5A0-F2445115****\\",\\n \\"TotalCount\\": 4,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****\\",\\n \\"SpecInfoModel\\": [\\n {\\n \\"SpecId\\": \\"acp.basic.small\\",\\n \\"Core\\": 8,\\n \\"Memory\\": 16,\\n \\"SystemDiskSize\\": 32,\\n \\"SpecType\\": \\"ARM\\",\\n \\"SpecStatus\\": \\"Available\\",\\n \\"PhoneCount\\": \\"2\\",\\n \\"Resolution\\": \\"1920*1080\\",\\n \\"MaxPhoneCount\\": \\"40\\",\\n \\"MinPhoneCount\\": \\"4\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'DescribeSpec', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"InstanceGroupInfos\\": [\\n {\\n \\"InstanceGroupId\\": \\"ag-cuv4scs4obxch****\\",\\n \\"InstanceIds\\": [\\n \\"acp-g40b9at5nhjo9****\\"\\n ]\\n }\\n ],\\n \\"OrderId\\": \\"22365781890****\\",\\n \\"InstanceGroupIds\\": [\\n \\"ag-cuv4scs4obxch****\\"\\n ],\\n \\"NetworkPackageOrderModel\\": {\\n \\"BandwidthPackageOrderId\\": \\"\\",\\n \\"BandwidthPackageId\\": \\"\\"\\n }\\n}","type":"json"}]', + 'title' => 'CreateAndroidInstanceGroup', + 'description' => ''."\n" + ."\n" + .'Before you create a cloud phone instance group, you must complete identity verification. For more information, see [Individual identity verification](~~48263~~).'."\n" + ."\n" + .''."\n" + ."\n" + .'Note that creating a cloud phone instance group incurs charges. Before you proceed, make sure that you understand the [billing method](~~2807121~~).'."\n" + ."\n" + .'- If the billing method for the instance group is subscription (PrePaid), AutoPay is set to false by default. After you call the API, go to [Alibaba Cloud Expenses and Costs](https://usercenter2.aliyun.com/order/list)[Alibaba Cloud Expenses and Costs](https://usercenter2-intl.aliyun.com/order/list) to manually pay for the order.'."\n" + ."\n" + .'- To enable automatic payments, set AutoPay to true.', + 'changeSet' => [ + ['createdAt' => '2025-09-05T06:13:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-08-22T08:01:59.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-02-21T14:24:32.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-02-17T09:52:46.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-01-08T08:06:11.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-10-24T13:02:09.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-08-19T09:49:56.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-07-24T09:34:56.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-07-02T02:05:34.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'translator' => 'machine', ], - 'CheckResourceStock' => [ - 'summary' => 'Check the resource inventory.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CreateApp' => [ + 'summary' => 'Creates an Android application. Before you can install an application, you must use this API operation to create it. The application is not downloaded when it is created. It is downloaded only during installation. Ensure that the cloud phone can access the download URL.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneQ1CSHT', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphoneRPX4AN'], ], 'parameters' => [ + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The application name.', 'type' => 'string', 'required' => false, 'example' => 'Application name 1'], + ], + [ + 'name' => 'FileName', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The name of the application file stored in Object Storage Service (OSS). This parameter and `FilePath` together determine the unique OSS address.'."\n" + ."\n" + .'> - If you pass an application from the WUYING Workspace app center, you must pass `FileName` and `FilePath`, or `OssAppUrl`. The former takes precedence.'."\n" + .'>'."\n" + .'> - Log on to the [WUYING Workspace console](https://eds.console.aliyun.com/osshelp). Follow the on-screen instructions to upload your application file to the WUYING Workspace app center to obtain this parameter.', 'type' => 'string', 'required' => false, 'example' => 'testApp.apk'], + ], + [ + 'name' => 'FilePath', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The storage address of the application file in an OSS bucket. This parameter and `FileName` together determine the unique OSS address.'."\n" + ."\n" + .'> - If you pass an application from the WUYING Workspace app center, you must pass `FileName` and `FilePath`, or `OssAppUrl`. The former takes precedence.'."\n" + .'>'."\n" + .'> - Log on to the [WUYING Workspace console](https://eds.console.aliyun.com/osshelp). Follow the on-screen instructions to upload your application file to the WUYING Workspace app center to obtain this parameter.', 'type' => 'string', 'required' => false, 'example' => 'tenant/1642150****/'], + ], + [ + 'name' => 'IconUrl', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The URL of the application icon.', 'type' => 'string', 'required' => false, 'example' => 'https://www.example.com/icon.png'], + ], + [ + 'name' => 'OssAppUrl', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The OSS address of the application.'."\n" + ."\n" + .'> - If you pass an application from the WUYING Workspace app center, you must pass `FileName` and `FilePath`, or `OssAppUrl`. The former takes precedence.'."\n" + .'>'."\n" + .'> - Log on to the [WUYING Workspace console](https://eds.console.aliyun.com/osshelp). Follow the on-screen instructions to upload your application file to the WUYING Workspace app center to obtain this parameter.', 'type' => 'string', 'required' => false, 'example' => 'http://testApp.apk'], + ], [ 'name' => 'BizRegionId', 'in' => 'query', - 'schema' => [ - 'description' => 'Region ID.', - 'type' => 'string', - 'required' => true, - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'cn-hangzhou'], ], [ - 'name' => 'ZoneId', + 'name' => 'InstallParam', 'in' => 'query', - 'schema' => [ - 'description' => 'The availability zone of the resource.', - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou-i', - ], + 'schema' => ['description' => 'The installation parameters. The `-r` installation parameter is included by default when you install the application.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '-d'], ], [ - 'name' => 'AcpSpecId', + 'name' => 'Description', 'in' => 'query', - 'schema' => [ - 'description' => 'Specification ID.', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'acp.perf.large' => 'Performance', - 'acp.basic.small' => 'Lightweight', - 'acp.std.small' => 'General', - 'acp.std.large' => 'Standard', - 'acp.perf.small' => 'Enhanced', - ], - 'example' => 'acp.basic.small', - 'enum' => [ - 'acp.basic.small', - 'acp.std.small', - 'acp.std.large', - 'acp.perf.small', - 'acp.perf.large', - 'acp.basic-v3.small', - 'acp.basic-g1.small', - 'acp.basic-g2.small', - 'acp.std-g3.large', - 'acp.perf-g4.large', - 'acp.pro.large', - 'acp.pro-g6.large', - 'cps.std', - 'cps.std.64c256g', - 'cps.perf.gn6ia', - 'cps.std.gn6ia', - 'cps.std.r8ys', - 'cpm.gn6.gx1', - 'cpm.gn6.gx2', - 'ac.se', - 'ac.plus', - 'ac.pro', - 'ac.max', - 'ac1.plus', - 'acp.std.medium', - 'acp.basic-g2r.small', - 'acp.std-g3.medium', - 'acp.std-g3s.large', - 'acp.std-g3r.large', - ], - ], + 'schema' => ['description' => 'The application description.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'Application description'], ], [ - 'name' => 'GpuAcceleration', + 'name' => 'CustomAppInfo', 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'type' => 'boolean', + 'description' => 'The custom application information.'."\n" + ."\n" + .'> - If you pass a custom application, pass the `CustomAppInfo` parameter. All six fields in this object parameter are required.'."\n" + .'>'."\n" + .'> - Custom applications have a higher priority than applications from the WUYING Workspace app center. If you pass the `CustomAppInfo` parameter, `FileName` and `FilePath`, or `OssAppUrl` will be invalid.', + 'type' => 'object', + 'properties' => [ + 'DownloadUrl' => ['description' => 'The download URL of the application.', 'type' => 'string', 'required' => false, 'maxLength' => 1024, 'title' => '', 'example' => 'http://testApp.apk'], + 'Version' => ['description' => 'The application version.', 'type' => 'string', 'required' => false, 'maxLength' => 64, 'title' => '', 'example' => '1.0.0'], + 'VersionCode' => ['description' => 'The application version code.', 'type' => 'string', 'required' => false, 'maxLength' => 64, 'title' => '', 'example' => '10000'], + 'PackageName' => ['description' => 'The application package name.', 'type' => 'string', 'required' => false, 'maxLength' => 128, 'title' => '', 'example' => 'com.example.demo'], + 'ApkSize' => ['description' => 'The size of the .apk file. Unit: MB.', 'type' => 'string', 'required' => false, 'maxLength' => 128, 'title' => '', 'example' => '10'], + 'Md5' => ['description' => 'The MD5 value of the .apk package.', 'type' => 'string', 'required' => false, 'maxLength' => 128, 'title' => '', 'example' => 'df3f46ce5844ddb278f14c5a9cd2****'], + ], 'required' => false, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'Amount', + 'name' => 'SignApk', 'in' => 'query', 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', + 'type' => 'string', + 'description' => 'Specifies whether to perform a system signature.', 'required' => false, + 'enumValueTitles' => ['false' => 'A signature is not required.', 'true' => 'A signature is required.'], + 'title' => '', + 'example' => 'false', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Return parameters.', + 'title' => 'PlainResult', + 'description' => 'The returned parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '805D8FB6-512A-531C-9E4D-2A807D3C****', - ], - 'ResourceStockModels' => [ - 'description' => 'Details of resource inventory.', - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'RegionId' => [ - 'description' => 'Region ID.', - 'type' => 'string', - 'example' => 'cn-shanghai', - ], - 'ZoneId' => [ - 'description' => 'Zone ID.', - 'type' => 'string', - 'example' => 'cn-shanghai-b', - ], - 'StockStatus' => [ - 'description' => 'Inventory status of the instance group.', - 'type' => 'string', - 'enumValueTitles' => [ - 'SoldOut' => 'Sold out', - 'Available' => 'Available', - ], - 'example' => 'Available', - ], - ], - ], - ], + 'AppId' => ['description' => 'The application ID.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1234'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"805D8FB6-512A-531C-9E4D-2A807D3C****\\",\\n \\"ResourceStockModels\\": [\\n {\\n \\"RegionId\\": \\"cn-shanghai\\",\\n \\"ZoneId\\": \\"cn-shanghai-b\\",\\n \\"StockStatus\\": \\"Available\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'Check Resource Stock Status', - ], - 'CreateAndroidInstanceGroup' => [ - 'summary' => 'Creates pay-as-you-go or subscription instance groups.', - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AppId\\": 1234,\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\"\\n}","type":"json"}]', + 'title' => 'CreateApp', + 'description' => 'When you create an application, you can pass the application information in one of the following two ways:'."\n" + ."\n" + .'- Method 1: Pass an application from the WUYING Workspace app center.'."\n" + ."\n" + .' - Supported methods:'."\n" + ."\n" + .' - Method 1: Pass `FileName` and `FilePath`. Both parameters are required.'."\n" + ."\n" + .' - Method 2: Pass `OssAppUrl`.'."\n" + ."\n" + .' - Rule: If you pass an application from the WUYING Workspace app center, you must use at least one of the two methods. If you use both, Method 1 takes precedence.'."\n" + ."\n" + .' - Prerequisite: Log on to the [Elastic Desktop Service Enterprise console](https://eds.console.aliyun.com/osshelp). Follow the on-screen instructions to upload your application file to the WUYING Workspace app center. You can then obtain the required request parameters for this operation: `FileName` and `FilePath`, or `OssAppUrl`.'."\n" + ."\n" + .'- Method 2: Pass a custom application.'."\n" + ."\n" + .' - Supported method: Pass `CustomAppInfo`.'."\n" + ."\n" + .' - Rule: If you pass `CustomAppInfo`, all six fields in this object parameter are required.'."\n" + ."\n" + .'> If you use both Method 1 and Method 2, the information passed in Method 2 takes precedence.', + 'changeSet' => [ + ['createdAt' => '2025-04-11T01:45:19.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-02-21T14:24:31.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-11-15T02:07:18.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-06-26T12:41:04.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'translator' => 'manual', + ], + 'CreateCloudPhoneNode' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'create', 'riskType' => 'high', 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneYWRDCM', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneTVG3Y7'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'BizRegionId', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the region. You can call the DescribeRegions operation to query the regions where Cloud Phone is supported.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* cn-shenzhen: China (Shenzhen).'."\n" - .'* cn-beijing: China (Beijing).'."\n" - .'* cn-shanghai: China (Shanghai).'."\n" - .'* cn-hongkong: China (Hong Kong).'."\n" - .'* ap-southeast-1: Singapore.'."\n" - .'* cn-hangzhou: China (Hangzhou).', + 'description' => 'The region ID.', + 'enumValueTitles' => ['cn-shanghai' => 'China (Shanghai)', 'ap-southeast-1' => 'Singapore', 'eu-central-1' => 'Germany (Frankfurt)', 'cn-hangzhou' => 'China (Hangzhou)'], 'type' => 'string', 'required' => true, - 'enumValueTitles' => [ - 'cn-shenzhen' => '', - 'cn-beijing' => '', - 'cn-shanghai' => '', - 'cn-hongkong' => '', - 'ap-southeast-1' => '', - 'cn-hangzhou' => '', - ], 'example' => 'cn-hangzhou', + 'title' => '', ], ], [ - 'name' => 'InstanceGroupName', + 'name' => 'NodeName', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the instance group.'."\n" - ."\n" - .'> The name can be up to 30 characters in length. It can contain letters, digits, colons (:), underscores (\\_), periods (.), or hyphens (-). It must start with letters but cannot start with `http://` or `https://`.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'defaultInstanceGroup', - ], + 'schema' => ['description' => 'The name of the Cloud Phone matrix.', 'type' => 'string', 'required' => false, 'example' => 'node_name', 'title' => ''], ], [ - 'name' => 'NumberOfInstances', + 'name' => 'ServerType', 'in' => 'query', 'schema' => [ - 'description' => 'The number of cloud phones in the instance group. Maximum value: 100.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '1000', - 'minimum' => '1', - 'example' => '1', + 'description' => 'The server type.', + 'enumValueTitles' => ['cpm.gn6.gx1' => 'cpm.gn6.gx1'], + 'type' => 'string', + 'required' => true, + 'example' => 'cpm.gx7.10xlarge', + 'title' => '', ], ], [ - 'name' => 'ChargeType', + 'name' => 'InstanceType', 'in' => 'query', 'schema' => [ - 'description' => 'The billing method.'."\n" - ."\n" - .'Valid values:'."\n" + 'description' => 'The instance type.'."\n" ."\n" - .'* PostPaid: pay-as-you-go.'."\n" - .'* PrePaid: subscription.'."\n", + .'> To purchase more instance types, [contact pre-sales support](https://smartservice.console.aliyun.com/service/pre-sales-chat?spm=5176.6d6ecb63.0.0.729adda2VqVQx7).', + 'enumValueTitles' => ['ac.max' => 'This instance type defaults to 25 instances. You can use the PhoneCount parameter to specify a value from 4 to 40.', 'ac.plus' => 'This instance type defaults to 40 instances. You can use the PhoneCount parameter to specify a value from 4 to 40.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'PostPaid' => '', - 'PrePaid' => '', - ], - 'example' => 'PostPaid', + 'example' => 'ac.max', + 'title' => '', ], ], [ - 'name' => 'Period', + 'name' => 'ChargeType', 'in' => 'query', 'schema' => [ - 'description' => 'The subscription duration. The unit is specified by PeriodUnit.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'The billing method. Only the subscription billing method is supported.', + 'enumValueTitles' => ['PrePaid' => 'Subscription'], + 'type' => 'string', 'required' => false, - 'example' => '1', + 'example' => 'PrePaid', + 'title' => '', ], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => [ - 'description' => 'The unit of the subscription duration.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Month'."\n" - .'* Year'."\n" - .'* Hour (Note that this unit is supported only by pay-as-you-go.)'."\n", + 'description' => 'The unit of the subscription duration.', + 'enumValueTitles' => ['Month' => 'Month (default)', 'Year' => 'Year'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'Month' => '', - 'Year' => '', - 'Hour' => '', - ], 'example' => 'Month', + 'title' => '', ], ], [ - 'name' => 'InstanceGroupSpec', + 'name' => 'Period', 'in' => 'query', - 'schema' => [ - 'description' => 'The specifications of the instance group. You can call the [DescribeSpec](~~2807299~~) operation to query the available specifications.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* acp.perf.large: Performance (8 vCPUs, 16 GiB of memory, and 32 GiB of storage.'."\n" - .'* acp.basic.small: Lightweight (2 vCPUs, 4 GiB of memory, and 32 GiB of storage).'."\n" - .'* acp.std.large: Standard (4 vCPUs, 8 GiB of memory, and 32 GiB of storage).', - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [ - 'acp.perf.large' => '', - 'acp.basic.small' => '', - 'acp.std.large' => '', - ], - 'example' => 'acp.basic.small', - ], + 'schema' => ['description' => 'The subscription duration. The unit is specified by the `PeriodUnit` parameter.'."\n" + ."\n" + .'- If `PeriodUnit` is set to **Year**, this parameter can only be set to 1.'."\n" + ."\n" + .'- If `PeriodUnit` is set to **Month**, valid values are 1, 2, 3, and 6.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'AutoPay', 'in' => 'query', 'schema' => [ - 'description' => 'Specifies whether to enable automatic payment. Default value: false.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: enables automatic payment. Make sure that your Alibaba Cloud account has sufficient balance.'."\n" - .'* false: disables automatic payment. You must manually complete the payment.'."\n", + 'description' => 'Specifies whether to enable automatic payment.', + 'enumValueTitles' => ['flase' => 'Requires manual payment in the Alibaba Cloud Billing Management console. (Default)', 'true' => 'Automatic payment is enabled.'], 'type' => 'boolean', 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', - ], - 'example' => 'false', + 'example' => 'true', + 'title' => '', ], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => [ - 'description' => 'Specifies whether to enable auto-renewal. Default value: false.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: automatically renew resource upon expiration.'."\n" - .'* false: manually renew resources upon expiration.'."\n", + 'description' => 'Specifies whether to enable auto-renewal.', + 'enumValueTitles' => ['true' => 'The resource is automatically renewed upon expiration.', 'false' => 'The resource is not automatically renewed. You must manually renew it before it expires. (Default)'], 'type' => 'boolean', 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', - ], - 'example' => 'false', + 'example' => 'true', + 'title' => '', ], ], [ - 'name' => 'OfficeSiteId', + 'name' => 'ImageId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the network.'."\n" - ."\n" - .'* This parameter is required if you assign a shared network to cloud phones. You can go to the [Network](https://wya.wuying.aliyun.com/network) page of the Cloud Phone console to retrieve the ID of a **shared network**. If no shared network is available in the Cloud Phone console, you can leave this parameter empty. The system automatically creates one when you create an instance group.'."\n" - .'* This parameter is required if you assign a virtual private cloud (VPC) to cloud phones. You can go to the [Network](https://wya.wuying.aliyun.com/network) page of the Cloud Phone console to retrieve the ID of a **VPC**. If no VPC is available in the Cloud Phone console, you must first create one.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou+dir-745976****', - ], + 'schema' => ['description' => 'The image ID.', 'type' => 'string', 'required' => false, 'example' => 'imgc-075cllfeuazh0****', 'title' => ''], ], [ - 'name' => 'VSwitchId', + 'name' => 'Count', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the vSwitch. You can call the [DescribeVSwitches](~~448774~~) operation to query vSwitches.'."\n" - ."\n" - .'* This parameter is not required if you assign a shared network to cloud phones.'."\n" - .'* This parameter is required if you assign a VPC to cloud phones. The vSwitch specified by this parameter is used to create cloud phones.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'vsw-uf61uvzhz8ejaw776****', - ], + 'schema' => ['description' => 'The number of Cloud Phone matrices to purchase.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'PolicyGroupId', + 'name' => 'NetworkId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the policy. You can call the [ListPolicyGroups](~~2807352~~) operation to query policies.', - 'type' => 'string', - 'required' => false, - 'example' => 'pg-b7bxrrwxkijjh****', - ], + 'schema' => ['description' => 'The office network ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou+dir-5mwr9azebliva****', 'title' => ''], ], [ - 'name' => 'ImageId', + 'name' => 'VSwitchId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the image. You can call the [DescribeImageList](~~2807324~~) operation to query images.', - 'type' => 'string', - 'required' => true, - 'example' => 'imgc-06zyt9m93zwax****', - ], + 'schema' => ['description' => 'The VSwitch ID.', 'type' => 'string', 'required' => false, 'example' => 'vsw-2zeekryyc1q3sm72l****', 'title' => ''], ], [ - 'name' => 'Amount', + 'name' => 'Tag', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The number of instance groups. Default value: 1. Maximum value: 1.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'The resource tags.', + 'type' => 'array', + 'items' => [ + 'description' => 'A resource tag.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'keyname', 'title' => ''], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'valuename', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '8', + 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'GpuAcceleration', + 'name' => 'PhoneDataVolume', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable GPU acceleration.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: enables GPU acceleration.'."\n" - .'* false (default): disables GPU acceleration.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', - ], - 'example' => 'false', - ], + 'schema' => ['description' => 'The size of the independent internal storage, in GiB.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'KeyPairId', + 'name' => 'ServerShareDataVolume', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the key pair. When you create an instance group and specify a valid key pair ID, all cloud phone instances within the group will automatically be bound to that key pair upon creation. This eliminates the need to manually bind key pairs to individual cloud phone instances.'."\n" - ."\n" - .'> Binding key pairs to cloud phone instances is currently not supported during instance group resizing.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'kp-7o9xywwfutc1l****', - ], + 'schema' => ['description' => 'The size of the shared internal storage, in GiB.'."\n" + ."\n" + .'> The size must exceed 10 GiB per instance in the matrix.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '4000', 'minimum' => '100', 'required' => false, 'example' => '200', 'title' => ''], ], [ - 'name' => 'ClientToken', + 'name' => 'ResolutionHeight', 'in' => 'query', - 'schema' => [ - 'description' => 'The client token that is used to ensure the idempotence of the request. The value cannot exceed 100 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'asadbuvwiabdbvchjsbj', - ], + 'schema' => ['description' => 'The vertical resolution, in pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1280', 'title' => ''], ], [ - 'name' => 'EnableIpv6', + 'name' => 'ResolutionWidth', + 'in' => 'query', + 'schema' => ['description' => 'The horizontal resolution, in pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '720', 'title' => ''], + ], + [ + 'name' => 'PhoneCount', 'in' => 'query', + 'schema' => ['description' => 'The number of Cloud Phone instances to create in a single Cloud Phone matrix.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '25', 'title' => ''], + ], + [ + 'name' => 'DisplayConfig', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => '> This parameter is not publicly available.'."\n", - 'type' => 'boolean', + 'type' => 'object', + 'properties' => [ + 'Dpi' => ['description' => 'The dots per inch (DPI). Valid values: 72 to 600.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '240', 'title' => ''], + 'Fps' => ['description' => '> This parameter is not yet publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => 'null', 'title' => ''], + 'LockResolution' => [ + 'description' => 'Specifies whether to lock the resolution.', + 'enumValueTitles' => ['off' => 'The resolution is not locked.', 'on' => 'The resolution is locked.'], + 'type' => 'string', + 'enum' => ['off', 'on'], + 'required' => false, + 'example' => 'off', + 'title' => '', + ], + ], 'required' => false, - 'example' => 'null', + 'description' => 'The display settings.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'Ipv6Bandwidth', + 'name' => 'StreamMode', 'in' => 'query', 'schema' => [ - 'description' => '> This parameter is not publicly available.'."\n", + 'description' => 'The streaming mode for instances in the Cloud Phone matrix. Defaults to preemption mode.', + 'enumValueTitles' => [1 => 'Preemption mode', 'Collaboration mode'], 'type' => 'integer', 'format' => 'int32', 'required' => false, - 'example' => 'null', + 'example' => '1', + 'title' => '', ], ], [ - 'name' => 'Tag', + 'name' => 'NetworkType', 'in' => 'query', - 'style' => 'repeatList', 'schema' => [ - 'description' => 'The tags'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The tag'."\n", - 'type' => 'object', - 'properties' => [ - 'Value' => [ - 'description' => 'The tag value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'value', - ], - 'Key' => [ - 'description' => 'The tag key.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'key', - ], - ], - 'required' => false, - ], + 'description' => 'The network type of the instance.', + 'enumValueTitles' => ['network_pro_ecd' => 'Premium office network for Elastic Desktop Service'], + 'type' => 'string', 'required' => false, - 'maxItems' => 20, + 'example' => 'network_pro_ecd', + 'title' => '', ], ], [ @@ -2575,654 +1952,668 @@ 'schema' => [ 'type' => 'object', 'properties' => [ - 'BandwidthPackageName' => [ - 'type' => 'string', - ], - 'CidrBlock' => [ - 'type' => 'string', - ], - 'LimitedBandwidth' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'BandwidthPackageName' => ['description' => 'The name of the bandwidth package.', 'type' => 'string', 'required' => false, 'example' => 'inst-bandwidth-pkg-1', 'title' => ''], + 'CidrBlock' => ['description' => 'The private CIDR block.', 'type' => 'string', 'required' => false, 'example' => '10.10.13.0/24', 'title' => ''], + 'LimitedBandwidth' => ['description' => 'The maximum bandwidth of the bandwidth package, in Mbit/s. This value limits the aggregate bandwidth of all instances that use the package.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200', 'title' => ''], 'InternetChargeType' => [ + 'description' => 'The billing method for the bandwidth package. Valid values:'."\n" + ."\n" + .''."\n" + ."\n" + .'- **PayByBandwidth** (default): pay-by-bandwidth.'."\n" + ."\n" + .'- **PayBy95**: pay-by-95th-percentile. Note: This billing method is not supported for IPv6 public bandwidth by default. To enable it, contact your account manager.'."\n" + ."\n" + .''."\n" + ."\n" + .'\\-'."\n" + ."\n" + .''."\n" + ."\n" + .'**PayByBandwidth** (default): pay-by-bandwidth.'."\n" + ."\n" + .'', + 'enumValueTitles' => ['PayBy95' => 'Pay-by-95th-percentile', 'PayByBandwidth' => 'Pay-by-bandwidth'], 'type' => 'string', + 'required' => false, + 'example' => 'PayByBandwidth', + 'title' => '', ], 'IpRatio' => [ + 'description' => 'The number of Cloud Phone instances that share one elastic IP address (EIP).', + 'enumValueTitles' => [128 => '128 instances share a single EIP.'], 'type' => 'integer', 'format' => 'int32', + 'required' => false, + 'example' => '128', + 'title' => '', ], 'Isp' => [ + 'description' => 'The line type.', + 'enumValueTitles' => ['ChinaUnicom' => 'China Unicom', 'ChinaTelecom' => 'China Telecom', 'ChinaMobile' => 'China Mobile', 'BGP' => 'BGP (Multi-ISP) line'], 'type' => 'string', + 'required' => false, + 'example' => 'ChinaTelecom', + 'title' => '', ], 'PayType' => [ + 'description' => 'The billing method.', + 'enumValueTitles' => ['PostPaid' => 'Pay-as-you-go', 'PrePaid' => 'Subscription'], 'type' => 'string', + 'required' => false, + 'example' => 'PostPaid', + 'title' => '', ], - 'Period' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'PeriodUnit' => [ - 'type' => 'string', - ], - 'AutoPay' => [ - 'type' => 'boolean', - ], - 'AutoRenew' => [ - 'type' => 'boolean', - ], - 'VisibleType' => [ - 'type' => 'string', - ], + 'VisibleType' => ['description' => 'The visibility scope.', 'type' => 'string', 'required' => false, 'example' => 'CPS', 'title' => ''], + 'PaidCallbackUrl' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], + 'description' => 'The network settings for the instance.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], [ 'name' => 'BandwidthPackageType', 'in' => 'query', 'schema' => [ + 'description' => 'The bandwidth type.', + 'enumValueTitles' => ['cbwp_ecd' => 'premium bandwidth package'], 'type' => 'string', + 'required' => false, + 'example' => 'cbwp_ecd', + 'title' => '', ], ], [ 'name' => 'BandwidthPackageId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The ID of the Shared Bandwidth instance.', 'type' => 'string', 'required' => false, 'example' => 'cbwp-uf6g3hgg*******8s3lxiob3', 'title' => ''], ], [ - 'name' => 'NetworkType', + 'name' => 'UpBandwidthLimit', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['description' => 'The upstream bandwidth limit, in Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], + ], + [ + 'name' => 'DownBandwidthLimit', + 'in' => 'query', + 'schema' => ['description' => 'The downstream bandwidth limit, in Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], + ], + [ + 'name' => 'UseTemplate', + 'in' => 'query', + 'schema' => ['description' => 'The template for instance creation. Set this parameter to `Random` to use a random template, or specify a template ID to use a specific template.', 'type' => 'string', 'required' => false, 'example' => 'Random', 'title' => ''], ], [ 'name' => 'PromotionId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ - 'name' => 'StreamMode', + 'name' => 'PaidCallBackUrl', 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + [ + 'name' => 'SwapSize', + 'in' => 'query', + 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + ], + [ + 'name' => 'IsSingleImgDisk', + 'in' => 'query', + 'schema' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response data.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****', - ], - 'InstanceGroupInfos' => [ - 'description' => 'The instance groups.'."\n", + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '223684716098****', 'title' => ''], + 'NodeInfos' => [ + 'description' => 'A list of Cloud Phone matrices.', 'type' => 'array', 'items' => [ + 'description' => 'A Cloud Phone matrix.', 'type' => 'object', 'properties' => [ - 'InstanceGroupId' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'example' => 'ag-cuv4scs4obxch****', - ], + 'NodeId' => ['description' => 'The ID of the Cloud Phone matrix.', 'type' => 'string', 'example' => 'cpn-e5kxgjyt8s1mb****', 'title' => ''], 'InstanceIds' => [ - 'description' => 'The IDs of the instances.'."\n", + 'description' => 'A list of Cloud Phone instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance.'."\n", - 'type' => 'string', - 'example' => 'acp-g40b9at5nhjo9****', - ], + 'items' => ['description' => 'The ID of the Cloud Phone instance.', 'type' => 'string', 'example' => 'cpn-e5kxgjyt8s1mb****', 'title' => ''], + 'title' => '', + 'example' => '', ], ], - 'description' => '', - ], - ], - 'OrderId' => [ - 'description' => 'The ID of the order.'."\n", - 'type' => 'string', - 'example' => '22365781890****', - ], - 'InstanceGroupIds' => [ - 'description' => 'The IDs of the instance groups.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'example' => 'ag-cuv4scs4obxch****', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], 'NetworkPackageOrderModel' => [ 'type' => 'object', 'properties' => [ - 'BandwidthPackageOrderId' => [ - 'type' => 'string', - ], - 'BandwidthPackageId' => [ - 'type' => 'string', - ], + 'BandwidthPackageOrderId' => ['description' => 'The order ID of the bandwidth package.', 'type' => 'string', 'example' => '25954415983*****', 'title' => ''], + 'BandwidthPackageId' => ['description' => 'The ID of the Internet Shared Bandwidth instance.', 'type' => 'string', 'example' => 'cbwp-uf63gsv8j0ir53*****', 'title' => ''], ], + 'description' => 'Details of the bandwidth package order.', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'CreateCloudPhoneNode', + 'summary' => 'In Cloud Phone, a matrix is a logical resource management unit that represents a physical server instance. Creating a matrix provisions a physical server, which you can then partition into multiple independent Cloud Phone instances. These instances share the compute, storage, and network resources of the matrix. The matrix configuration determines how many instances you can create.', + 'changeSet' => [ + ['createdAt' => '2025-09-05T06:13:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-08-22T08:01:59.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-08-15T10:57:06.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-07-28T04:34:39.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-07-15T07:46:27.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-07-07T02:42:05.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-06-28T12:53:31.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-04-03T10:00:32.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"InstanceGroupInfos\\": [\\n {\\n \\"InstanceGroupId\\": \\"ag-cuv4scs4obxch****\\",\\n \\"InstanceIds\\": [\\n \\"acp-g40b9at5nhjo9****\\"\\n ]\\n }\\n ],\\n \\"OrderId\\": \\"22365781890****\\",\\n \\"InstanceGroupIds\\": [\\n \\"ag-cuv4scs4obxch****\\"\\n ],\\n \\"NetworkPackageOrderModel\\": {\\n \\"BandwidthPackageOrderId\\": \\"\\",\\n \\"BandwidthPackageId\\": \\"\\"\\n }\\n}","type":"json"}]', - 'title' => 'CreateAndroidInstanceGroup', - 'description' => 'Before creating an instance group, ensure you understand the [billing methods](~~2807121~~) supported by Cloud Phone.'."\n" - ."\n" - .'* If the billing method of an instance group is PrePaid, AutoPay is set to false by default. In this case, you need to go to [Expenses and Costs](https://usercenter2-intl.aliyun.com/order/list) to manually complete the payment.'."\n" - .'* You can also set AutoPay to true based on your business requirements.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\",\\n \\"OrderId\\": \\"223684716098****\\",\\n \\"NodeInfos\\": [\\n {\\n \\"NodeId\\": \\"cpn-e5kxgjyt8s1mb****\\",\\n \\"InstanceIds\\": [\\n \\"cpn-e5kxgjyt8s1mb****\\"\\n ]\\n }\\n ],\\n \\"NetworkPackageOrderModel\\": {\\n \\"BandwidthPackageOrderId\\": \\"25954415983*****\\",\\n \\"BandwidthPackageId\\": \\"cbwp-uf63gsv8j0ir53*****\\"\\n }\\n}","type":"json"}]', ], - 'DescribeAndroidInstanceGroups' => [ - 'summary' => 'Queries the details of an instance group.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateCreditPackage' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneQNMLJ7', - ], + 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneWY4NGN'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'BizRegionId', + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['description' => 'The subscription duration. The PeriodUnit parameter specifies the unit for the duration.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '6', 'title' => ''], + ], + [ + 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the region.'."\n", + 'description' => 'The unit of the subscription duration.'."\n" + .'Valid values:'."\n" + ."\n" + .'- **Month**: The period is measured in months.'."\n" + ."\n" + .'- **Year**: The period is measured in years.', + 'enumValueTitles' => ['Month' => 'month', 'Year' => 'year'], 'type' => 'string', 'required' => false, - 'example' => 'cn-hangzhou', + 'example' => 'Month', + 'title' => '', ], ], [ - 'name' => 'InstanceGroupIds', + 'name' => 'AutoPay', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the instance groups.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-25nt4kk9whhdh****', - ], - 'required' => false, - 'maxItems' => 100, - 'minItems' => 1, - ], + 'schema' => ['description' => 'Whether to enable auto-payment. Valid values:'."\n" + ."\n" + .'- **true**: Enables auto-payment. Make sure that your account has a sufficient balance.'."\n" + ."\n" + .'- **false** (Default): Creates an unpaid order.'."\n" + ."\n" + .'> If your account has an insufficient balance, you can set this parameter to false. This generates an unpaid order. You can then pay for the order in the Wuying Cloud Phone management console.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ - 'name' => 'InstanceGroupName', + 'name' => 'CreditAmount', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the instance group. Instance groups support fuzzy search by name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'defaultInstanceGroup', - ], + 'schema' => ['description' => 'The number of credits.', 'type' => 'string', 'required' => false, 'example' => '1000', 'title' => ''], ], [ - 'name' => 'Status', + 'name' => 'PromotionId', 'in' => 'query', + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'example' => '50003308011****', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The status of the instance group.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* UPDATING_FAILED: The image update for the instance group failed.'."\n" - .'* FAILED: The instance group failed to be created.'."\n" - .'* RUNNING: The instance group is available.'."\n" - .'* EXPIRED: The instance group expired.'."\n" - .'* DELETING: The instance group is being deleted.'."\n" - .'* DELETED: The instance group is deleted.'."\n" - .'* UPDATING: The instance group is undergoing an image update.'."\n" - .'* CREATING: The instance group is being created.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'UPDATING_FAILED' => 'Update failed', - 'FAILED' => 'Create failed', - 'RUNNING' => 'Running', - 'EXPIRED' => 'Expired', - 'DELETING' => 'Deleting', - 'DELETED' => 'Deleted', - 'UPDATING' => 'Updating', - 'CREATING' => 'Creating', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '223684716098****', 'title' => ''], + 'CreditPackageId' => ['description' => 'The credit package ID.', 'type' => 'string', 'example' => 'crp-bt7e2t4anbq50****', 'title' => ''], + 'EffectiveTime' => ['description' => 'The time when the credit package takes effect.', 'type' => 'string', 'example' => '2026-04-30 00:00:00', 'title' => ''], + 'ExpiredTime' => ['description' => 'The time when the credit package expires.', 'type' => 'string', 'example' => '2026-10-30 00:00:00', 'title' => ''], ], - 'example' => 'CREATING', + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'CreateCreditPackage', + 'summary' => 'Creates an order for a credit package.', + 'description' => 'This is a billable operation. Before calling this operation, ensure that you understand the [billing methods and pricing](https://help.aliyun.com/zh/ecp/jvs-mobile-billing-instructions?spm=a2c4g.11186623.help-menu-254658.d_0_1_1.78bc5732j49PWP) of Wuying Cloud Phone.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"OrderId\\": \\"223684716098****\\",\\n \\"CreditPackageId\\": \\"crp-bt7e2t4anbq50****\\",\\n \\"EffectiveTime\\": \\"2026-04-30 00:00:00\\",\\n \\"ExpiredTime\\": \\"2026-10-30 00:00:00\\"\\n}","type":"json"}]', + ], + 'CreateCustomImage' => [ + 'summary' => 'Creates a custom image from a cloud phone instance. Then, you can use the image to create more cloud phones with the same configuration.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneCPBVX1'], + ], + 'parameters' => [ [ - 'name' => 'SaleMode', - 'in' => 'query', + 'name' => 'InstanceId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'acp-2zecay9ponatdc4m****'], + ], + [ + 'name' => 'ImageName', + 'in' => 'formData', + 'schema' => ['description' => 'The name of the custom image.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'custom image name'], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => ['description' => 'The description of the custom image.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'create for cc5g group auth rules test'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'formData', + 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. By default, this parameter is left empty. The token cannot exceed 100 characters in length. Requests with the same ClientToken triggers only one creation.', 'type' => 'string', 'maxLength' => 100, 'required' => false, 'example' => '20393E53-8FF1-524C-B494-B478A5369733', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The purchase mode of cloud phone instances.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Instance (default): the instance group mode.'."\n" - .'* Node: the matrix mode \\[whitelisted].'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Instance' => '', - 'Node' => '', + 'title' => 'PageListResult', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '20393E53-8FF1-524C-B494-B478A5369733', 'title' => ''], + 'ImageId' => ['description' => 'The ID of the custom image.', 'type' => 'string', 'example' => 'imgc-075cllfeuazh0****', 'title' => ''], ], - 'example' => 'standard', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"20393E53-8FF1-524C-B494-B478A5369733\\",\\n \\"ImageId\\": \\"imgc-075cllfeuazh0****\\"\\n}","type":"json"}]', + 'title' => 'CreateCustomImage', + 'changeSet' => [ + ['createdAt' => '2024-08-19T09:36:23.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'CreateEdgeMobileAgentPackage' => [ + 'path' => '', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneLI0KSA'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The region where the agent is located.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], + ], [ - 'name' => 'ChargeType', + 'name' => 'Quantity', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The number of packages.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The subscription duration of the resource. The unit is specified by PeriodUnit.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '1'], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The unit of the subscription duration. Valid values:'."\n" + ."\n" + .'- **Month**: month.'."\n" + .'- **Year**: year.', 'type' => 'string', 'required' => true, 'example' => 'Month'], + ], + [ + 'name' => 'AutoRenew', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'Specifies whether to enable auto-renewal. Valid values:'."\n" + ."\n" + .'* **true**: enables auto-renewal.'."\n" + .'* **false** (default): disables auto-renewal.', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'AutoPay', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'Specifies whether to enable automatic payment. Valid values:'."\n" + ."\n" + .'- **true**: enables automatic payment. Make sure that your account balance is sufficient.'."\n" + .'- **false** (default): generates the order without charging the account.'."\n" + ."\n\n" + ."\n\n" + .'> If your payment method has an insufficient balance, set this parameter to false. An unpaid order is generated. You can then log on to the Cloud Phone console to complete the payment.'."\n" + .'>', 'type' => 'boolean', 'required' => false, 'example' => 'false'], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The idempotency token.', 'type' => 'string', 'required' => false, 'example' => 'ETnLKlblzczshOTUbOCz****'], + ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The ID of the promotional activity.', 'type' => 'string', 'required' => false, 'example' => '50003308011****'], + ], + [ + 'name' => 'DeviceClass', 'in' => 'query', + 'schema' => ['description' => 'The device form factor.', 'type' => 'string', 'required' => false, 'example' => 'BOX', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The billing method.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* PrePaid: subscription'."\n" - .'* PostPaid: pay-as-you-go'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - ' PrePaid' => 'Subscription', - 'PostPaid' => 'Pay-as-you-go', + 'title' => '', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******'], + 'OrderId' => ['title' => '', 'description' => 'The order ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '22326560487****'], + 'PackageIds' => [ + 'description' => 'The list of package IDs.', + 'type' => 'array', + 'items' => ['description' => 'The package ID.', 'type' => 'string', 'example' => 'cmag-0c1g77wjljl9hc****', 'title' => ''], + 'title' => '', + 'example' => '', + ], ], - 'example' => 'PostPaid', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Purchase an edge agent package', + 'summary' => 'Places an order to purchase an edge smart gateway agent package.', + 'description' => 'This operation involves billing. Before you call this operation, make sure that you fully understand the [billing methods and pricing](https://www.alibabacloud.com/help/en/ecp/jvs-mobile-billing-instructions) of the Cloud Phone product.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\",\\n \\"OrderId\\": 0,\\n \\"PackageIds\\": [\\n \\"cmag-0c1g77wjljl9hc****\\"\\n ]\\n}","type":"json"}]', + ], + 'CreateKeyPair' => [ + 'summary' => 'You can connect to Cloud Phones using the Android Debug Bridge (ADB). ADB lets you manage devices and applications, and transfer files. These operations require high permissions. Because Cloud Phones do not have physical interfaces, you cannot use a USB connection to trigger an authorization dialog box on the device. Therefore, you must configure a key pair before you connect to a Cloud Phone with ADB over a network. This key pair ensures that the device trusts the client and that all operations are secure. You can call the CreateKeyPair operation to create an ADB key pair. The system stores the public key and returns the private key. The private key is in PEM-encoded PKCS#8 format and complies with ADB connection standards. You must securely store the private key.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'PolicyGroupId', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'KeyPairName', 'in' => 'query', + 'schema' => ['description' => 'The name of the key pair. The name must be 2 to 128 characters in length. The name can contain letters, Chinese characters, digits, colons (:), underscores (\\_), and hyphens (-). It must start with a letter or a Chinese character and cannot start with http\\:// or https\\://.', 'type' => 'string', 'required' => true, 'maxLength' => 128, 'minLength' => 2, 'example' => 'testKeyPairName', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'pg-1b77w6xrqfubi****', + 'title' => 'PlainResult', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned data.', + 'type' => 'object', + 'properties' => [ + 'KeyPairId' => ['description' => 'The ID of the key pair.', 'type' => 'string', 'example' => 'kp-6v2q33ae4tw3*****', 'title' => ''], + 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], + 'PrivateKeyBody' => ['description' => 'The private key of the key pair. The private key is PEM-encoded in PKCS#8 format and is compatible with ADB.', 'type' => 'string', 'example' => 'MIIEpAIBAAKCAQEAtReyMzLIcBH78EV2zj****', 'title' => ''], + 'GmtCreated' => ['description' => 'The time when the key pair was created.', 'type' => 'string', 'title' => '', 'example' => '2024-06-30 08:45:09.0'], + ], + 'title' => '', + 'example' => '', + ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', 'title' => ''], + ], + 'example' => '', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3*****\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"PrivateKeyBody\\": \\"MIIEpAIBAAKCAQEAtReyMzLIcBH78EV2zj****\\",\\n \\"GmtCreated\\": \\"2024-06-30 08:45:09.0\\"\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', + 'title' => 'CreateKeyPair', + 'description' => 'You can also use the Android Debug Bridge (ADB) tool to create a key pair and then upload it to the Cloud Phone console by calling the [](t2729840.xdita#)operation. This key pair can be used in the same way as a key pair created by the system.'."\n" + ."\n" + .'Each tenant can have a maximum of 500 key pairs.', + 'changeSet' => [ + ['createdAt' => '2025-06-04T08:01:33.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'CreateMobileAgentPackage' => [ + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'KeyPairId', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneWY4NGN'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['description' => 'The subscription period. The unit of the period is specified by the `PeriodUnit` parameter.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the key pair.'."\n", + 'description' => 'The unit of the subscription period.'."\n" + .'Valid values:'."\n" + ."\n" + .'- **Month**'."\n" + ."\n" + .'- **Year**', + 'enumValueTitles' => ['Month' => 'Month', 'Year' => 'Year'], 'type' => 'string', 'required' => false, - 'example' => 'kp-5htf0ymsrnb7q****', + 'example' => 'Month', + 'title' => '', ], ], [ - 'name' => 'MaxResults', + 'name' => 'AutoPay', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable auto-payment. Valid values:'."\n" + ."\n" + .'- **true**: Enables auto-payment. You must ensure that your account balance is sufficient.'."\n" + ."\n" + .'- **false** (default): An unpaid order is generated. Your account is not charged.'."\n" + ."\n" + .'> If your account balance is insufficient, you can set this parameter to `false` to generate an unpaid order. Then, you can log in to the Wuying Cloud Phone management console to pay for the order.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'CreditAmount', + 'in' => 'query', + 'schema' => ['description' => 'The credit amount.', 'type' => 'string', 'required' => false, 'example' => '10000.0', 'title' => ''], + ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'example' => '50003308011****', 'title' => ''], + ], + [ + 'name' => 'MobileAgentPackageSpec', 'in' => 'query', 'schema' => [ - 'description' => 'The maximum number of entries per page. Value range: 0 to 100. Default value: 100.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'The package specification.', + 'enumValueTitles' => ['advanced' => 'Advanced', 'ultimate' => 'Ultimate'], + 'type' => 'string', 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '10', + 'example' => 'advanced', + 'title' => '', ], ], [ - 'name' => 'NextToken', + 'name' => 'InstanceName', + 'in' => 'query', + 'schema' => ['description' => 'The instance name.', 'type' => 'string', 'required' => false, 'example' => 'CloudPhone', 'title' => ''], + ], + [ + 'name' => 'CreditConfig', + 'in' => 'query', + 'schema' => ['description' => 'The credit limit configuration.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'Amount', + 'in' => 'query', + 'schema' => ['description' => 'The number of packages.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'PaidCallbackUrl', + 'in' => 'query', + 'schema' => ['description' => 'The callback URL to which the user is redirected after a successful payment.', 'type' => 'string', 'required' => false, 'example' => 'https://aim.wuying.aliyun.com/nodes', 'title' => ''], + ], + [ + 'name' => 'AutoRenew', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable auto-renewal for the instance. Valid values:'."\n" + ."\n" + .'- **true**: Enables auto-renewal.'."\n" + ."\n" + .'- **false** (default): Disables auto-renewal.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'BizRegionId', 'in' => 'query', 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", + 'description' => 'The region where the instance is located. Currently, only `cn-hangzhou` is supported.', + 'enumValueTitles' => ['cn-hangzhou' => 'China (Hangzhou)'], 'type' => 'string', 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', + 'example' => 'cn-hangzhou', + 'title' => '', ], ], [ - 'name' => 'Tags', + 'name' => 'ImageId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'type' => 'string', - ], - 'Value' => [ - 'type' => 'string', - ], - ], - ], - 'maxItems' => 20, - ], + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], - ], + [ + 'name' => 'PackageSpecId', + 'in' => 'query', + 'schema' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''], + ], + ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', - ], - 'InstanceGroupModel' => [ - 'description' => 'The instance group.'."\n", + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '22326560487****', 'title' => ''], + 'MobileAgentPackageIds' => [ 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InstanceGroupId' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'example' => 'ag-h67a2cs0zprfdh****'."\n", - ], - 'InstanceGroupName' => [ - 'description' => 'The name of the instance group.'."\n", - 'type' => 'string', - 'example' => 'defaultInstanceGroup'."\n", - ], - 'InstanceGroupStatus' => [ - 'description' => 'The status of the instance group.'."\n", - 'type' => 'string', - 'example' => 'RUNNING', - ], - 'InstanceGroupSpec' => [ - 'description' => 'The specifications of the instance group.'."\n", - 'type' => 'string', - 'example' => 'acp.basic.small', - ], - 'InstanceGroupSpecDescribe' => [ - 'description' => 'The description of the instance group specifications.'."\n", - 'type' => 'string', - 'example' => 'ARM-2vCPU4GiB 32GiB', - ], - 'OfficeSiteId' => [ - 'description' => 'The ID of the network.'."\n", - 'type' => 'string', - 'example' => 'cn-shanghai+dir-030598****', - ], - 'ImageId' => [ - 'description' => 'The ID of the image.'."\n", - 'type' => 'string', - 'example' => 'imgc-06zyt9m93zwax****', - ], - 'NumberOfInstances' => [ - 'description' => 'The number of instances in the instance group.'."\n", - 'type' => 'string', - 'example' => '10', - ], - 'ChargeType' => [ - 'description' => 'The billing method.'."\n", - 'type' => 'string', - 'example' => 'PrePaid', - ], - 'RegionId' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'GmtCreate' => [ - 'description' => 'The time when the instance group was created.'."\n", - 'type' => 'string', - 'example' => '2024-02-01 10:56:36', - ], - 'GmtModified' => [ - 'description' => 'The time when the instance group was updated.'."\n", - 'type' => 'string', - 'example' => '2024-02-01 10:56:36', - ], - 'SaleMode' => [ - 'description' => 'The sales mode.'."\n", - 'type' => 'string', - 'example' => 'standard', - ], - 'InstalledAppList' => [ - 'description' => 'The list of installed applications.'."\n", - 'type' => 'string', - 'example' => '"TikTok","WeChat"', - ], - 'GmtExpired' => [ - 'description' => 'The time when the subscription instance group expires.'."\n", - 'type' => 'string', - 'example' => '2027-06-29 07:25:31', - ], - 'AppInstanceGroupId' => [ - 'description' => 'The ID of the delivery group.'."\n", - 'type' => 'string', - 'example' => 'aig-48xr63m4dybjk****', - ], - 'PolicyGroupId' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'example' => 'pg-c6n38xucps8kl****', - ], - 'VSwitchId' => [ - 'description' => 'The ID of the vSwitch.'."\n", - 'type' => 'string', - 'example' => 'vsw-t4n0yqs009ho024wt****', - ], - 'ResolutionHeight' => [ - 'description' => 'The height of the resolution.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1280', - ], - 'ResolutionWidth' => [ - 'description' => 'The width of the resolution.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '720', - ], - 'SystemVersion' => [ - 'description' => 'The version of the operating system.'."\n", - 'type' => 'string', - 'example' => 'Android 12', - ], - 'ArchitectureType' => [ - 'description' => 'The type of the architecture.'."\n", - 'type' => 'string', - 'example' => 'ARM', - ], - 'Memory' => [ - 'description' => 'The memory size.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '8', - ], - 'Cpu' => [ - 'description' => 'The number of vCPUs.'."\n", - 'type' => 'string', - 'example' => '8', - ], - 'Disks' => [ - 'description' => 'The disks.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'DiskType' => [ - 'description' => 'The type of the disk.'."\n", - 'type' => 'string', - 'example' => 'SYSTEM', - ], - 'DiskSize' => [ - 'description' => 'The size of the disk. Unit: GB.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '32', - ], - ], - 'description' => '', - ], - ], - 'ErrorCode' => [ - 'description' => 'The cause of the creation failure.'."\n", - 'type' => 'string', - 'example' => '0', - ], - 'RenderingType' => [ - 'description' => 'The rendering mode of the instance group.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* GPURemote: GPU remote rendering.'."\n" - .'* CPU: CPU rendering.'."\n" - .'* GPUocal: GPU local rendering.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'GPURemote' => '', - 'CPU' => '', - 'GPULocal' => '', - ], - 'example' => 'CPU', - ], - 'AvailableInstanceAmount' => [ - 'description' => 'The number of available instances.'."\n" - ."\n" - .'> Available instances are those not in the Deleting or Deleted state.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '5', - ], - 'EnableIpv6' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'true', - ], - 'Ipv6Bandwidth' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '50', - ], - 'BandwidthPackageId' => [ - 'type' => 'string', - ], - 'BandwidthPackageType' => [ - 'type' => 'string', - ], - 'BandwidthPackageStatus' => [ - 'type' => 'string', - ], - 'NetworkType' => [ - 'type' => 'string', - ], - 'ImageVersion' => [ - 'type' => 'string', - ], - 'BindQosRules' => [ - 'type' => 'object', - 'properties' => [ - 'totalCount' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'InstanceQosRule' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InstanceId' => [ - 'type' => 'string', - ], - 'QosRuleId' => [ - 'type' => 'string', - ], - ], - ], - ], - ], - ], - 'ZoneId' => [ - 'type' => 'string', - ], - 'Tags' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'type' => 'string', - ], - 'Value' => [ - 'type' => 'string', - ], - ], - ], - ], - ], - 'description' => '', - ], + 'items' => ['description' => 'The package ID.', 'type' => 'string', 'example' => 'cmag-sbbhdajsds**** ', 'title' => ''], + 'description' => 'A list of package IDs.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response body.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'CreateMobileAgentPackage', + 'summary' => 'Places an order for a package.', + 'description' => 'This is a billable operation. Before you call this operation, review the [billing methods and pricing](https://help.aliyun.com/zh/ecp/jvs-mobile-billing-instructions?spm=a2c4g.11174283.help-menu-254658.d_0_1_1.23695732Cpmwbs) of Wuying Cloud Phone.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"TotalCount\\": 10,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****\\",\\n \\"InstanceGroupModel\\": [\\n {\\n \\"InstanceGroupId\\": \\"ag-h67a2cs0zprfdh****\\\\n\\",\\n \\"InstanceGroupName\\": \\"云手机A\\",\\n \\"InstanceGroupStatus\\": \\"RUNNING\\",\\n \\"InstanceGroupSpec\\": \\"acp.basic.small\\",\\n \\"InstanceGroupSpecDescribe\\": \\"ARM-2vCPU4GiB 32GiB\\",\\n \\"OfficeSiteId\\": \\"cn-shanghai+dir-030598****\\",\\n \\"ImageId\\": \\"imgc-06zyt9m93zwax****\\",\\n \\"NumberOfInstances\\": \\"10\\",\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"GmtCreate\\": \\"2024-02-01 10:56:36\\",\\n \\"GmtModified\\": \\"2024-02-01 10:56:36\\",\\n \\"SaleMode\\": \\"standard\\",\\n \\"InstalledAppList\\": \\"\\\\\\"抖音\\\\\\",\\\\\\"淘宝\\\\\\"\\",\\n \\"GmtExpired\\": \\"2027-06-29 07:25:31\\",\\n \\"AppInstanceGroupId\\": \\"aig-48xr63m4dybjk****\\",\\n \\"PolicyGroupId\\": \\"pg-c6n38xucps8kl****\\",\\n \\"VSwitchId\\": \\"vsw-t4n0yqs009ho024wt****\\",\\n \\"ResolutionHeight\\": 1280,\\n \\"ResolutionWidth\\": 720,\\n \\"SystemVersion\\": \\"Android 12\\",\\n \\"ArchitectureType\\": \\"ARM\\",\\n \\"Memory\\": 8,\\n \\"Cpu\\": \\"8\\",\\n \\"Disks\\": [\\n {\\n \\"DiskType\\": \\"SYSTEM\\",\\n \\"DiskSize\\": 32\\n }\\n ],\\n \\"ErrorCode\\": \\"InternalError\\",\\n \\"RenderingType\\": \\"CPU\\",\\n \\"AvailableInstanceAmount\\": 2,\\n \\"EnableIpv6\\": true,\\n \\"Ipv6Bandwidth\\": 50,\\n \\"BandwidthPackageId\\": \\"np-0q6ixs7vpxciz****\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageStatus\\": \\"Creating\\",\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"ImageVersion\\": \\"25.09.2\\",\\n \\"BindQosRules\\": {\\n \\"totalCount\\": 2,\\n \\"InstanceQosRule\\": [\\n {\\n \\"InstanceId\\": \\"acp-h3m8b5dusopp5****\\",\\n \\"QosRuleId\\": \\"qos-3kh93uu0vdbka****\\"\\n }\\n ]\\n },\\n \\"ZoneId\\": \\"cn-hangzhou-j\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"phone\\",\\n \\"Value\\": \\"2025\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'DescribeAndroidInstanceGroups', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\",\\n \\"OrderId\\": \\"22326560487****\\",\\n \\"MobileAgentPackageIds\\": [\\n \\"cmag-sbbhdajsds**** \\"\\n ]\\n}","type":"json"}]', ], - 'ModifyAndroidInstanceGroup' => [ - 'summary' => 'Modifies attributes of an instance group.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CreatePolicyGroup' => [ + 'summary' => 'Creates a policy that applies unified settings to cloud phones. These settings include features such as network redirection, watermarks, resolution, and the clipboard.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3231,260 +2622,206 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVGR0HK', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneS5VM56'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'InstanceGroupId', - 'in' => 'query', + 'name' => 'Html5FileTransfer', + 'in' => 'formData', 'schema' => [ - 'description' => 'The ID of the instance group.'."\n", + 'description' => 'The file transfer policy for the web client.', 'type' => 'string', 'required' => false, - 'example' => 'ag-cuv4scs4obxhs****'."\n", + 'enumValueTitles' => ['all' => 'Allows uploads and downloads.', 'download' => 'Allows downloads.', 'upload' => 'Allows uploads.', 'off' => 'Disables file transfers.'], + 'title' => '', + 'example' => 'off', ], ], [ - 'name' => 'NewInstanceGroupName', - 'in' => 'query', + 'name' => 'LocalDrive', + 'in' => 'formData', 'schema' => [ - 'description' => 'The new name of the instance group.'."\n" - ."\n" - .'> '."\n" - ."\n" - .'* The name can be up to 30 characters in length. It can contain letters, digits, colons (:), underscores (\\_), periods (.), or hyphens (-). It must start with letters but cannot start with http:// or https://.'."\n", + 'description' => 'The local disk mapping permission.', 'type' => 'string', 'required' => false, - 'example' => 'newName', + 'enumValueTitles' => ['read' => 'Read-only.', 'readwrite' => 'Read and write.', 'off' => 'Disabled.'], + 'title' => '', + 'example' => 'off', ], ], [ - 'name' => 'PolicyGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'pg-2w97kp89gnsif****', - ], + 'name' => 'PolicyGroupName', + 'in' => 'formData', + 'schema' => ['description' => 'The policy name.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'Default policy'], ], [ - 'name' => 'StreamMode', - 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - ], - 'responses' => [ - 200 => [ + 'name' => 'CameraRedirect', + 'in' => 'formData', 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '6C83EBE3-F267-5F11-ABF8-4E7B90B****', - ], - ], + 'description' => 'Specifies whether to enable local camera redirection.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], + 'title' => '', + 'example' => 'off', ], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6C83EBE3-F267-5F11-ABF8-4E7B90B****\\"\\n}","type":"json"}]', - 'title' => 'ModifyAndroidInstanceGroup', - ], - 'UpgradeAndroidInstanceGroup' => [ - 'summary' => 'Upgrades an instance group. Currently, this operation allows you to only increase the number of instances in an instance group.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'high', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMGJBSL', - ], - ], - 'parameters' => [ [ - 'name' => 'InstanceGroupId', - 'in' => 'query', + 'name' => 'Clipboard', + 'in' => 'formData', 'schema' => [ - 'description' => 'The ID of the instance group.'."\n", + 'description' => 'The clipboard permission.', 'type' => 'string', 'required' => false, - 'example' => 'ag-asguicdjh****', + 'enumValueTitles' => ['read' => 'Allows copying from the cloud phone to the client.', 'readwrite' => 'Allows bidirectional copying.', 'off' => 'Disables the clipboard.'], + 'title' => '', + 'example' => 'readwrite', ], ], [ - 'name' => 'IncreaseNumberOfInstance', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of instances that you want to increase.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '10', - ], + 'name' => 'ResolutionHeight', + 'in' => 'formData', + 'schema' => ['description' => 'The resolution height, in pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => '1280'], ], [ - 'name' => 'AutoPay', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable the auto-payment feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: enables the auto-payment feature. Make sure that your Alibaba Cloud account has sufficient balance.'."\n" - .'* false: disables the auto-payment feature. You need to manually complete the payment process.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', - ], - 'example' => 'true', - ], + 'name' => 'ResolutionWidth', + 'in' => 'formData', + 'schema' => ['description' => 'The resolution width, in pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => '720'], ], [ - 'name' => 'PromotionId', - 'in' => 'query', + 'name' => 'LockResolution', + 'in' => 'formData', 'schema' => [ + 'description' => 'Specifies whether to lock the resolution.', 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], + 'title' => '', + 'example' => 'off', ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'NetRedirectPolicy', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'Network redirection.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", + 'NetRedirect' => [ + 'description' => 'Specifies whether to enable network redirection.', 'type' => 'string', - 'example' => '310A783E-CC46-5452-A8A3-71AE5DB59****', + 'required' => false, + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], + 'title' => '', + 'example' => 'off', ], - 'OrderId' => [ - 'description' => 'The ID of the order.'."\n", + 'CustomProxy' => [ + 'description' => 'Specifies whether to manually configure a transparent proxy.', 'type' => 'string', - 'example' => '223684716098****', + 'required' => false, + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], + 'title' => '', + 'example' => 'off', ], - 'InstanceIds' => [ + 'ProxyType' => [ + 'description' => 'The proxy protocol type.', 'type' => 'string', - 'description' => 'The instance ID.'."\n", - 'example' => '[\'acp-3vzqq4y3f31f3z3df\']', + 'required' => false, + 'enumValueTitles' => ['socks5' => 'socks5'], + 'title' => '', + 'example' => 'socks5', + ], + 'HostAddr' => ['description' => 'The IP address of the transparent proxy. The IP address must be in IPv4 format.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '47.100.XX.XX'], + 'Port' => ['description' => 'The port of the transparent proxy. Valid values: 1 to 65535.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '1145'], + 'ProxyUserName' => ['description' => 'The proxy username. The username must be 1 to 256 characters in length. It cannot contain Chinese characters or whitespace characters.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'username'], + 'ProxyPassword' => ['description' => 'The proxy password. The password must be 1 to 256 characters in length. It cannot contain Chinese characters or whitespace characters.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'password'], + 'Rules' => [ + 'description' => 'The list of proxy rules. You can specify up to 100 rules.', + 'type' => 'array', + 'items' => [ + 'description' => 'A proxy rule.', + 'type' => 'object', + 'properties' => [ + 'Target' => ['description' => 'The application package name or domain name.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '*.baidu.com'], + 'RuleType' => [ + 'description' => 'The rule type.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => ['prc' => 'Application package name.', 'domain' => 'Domain name.'], + 'title' => '', + 'example' => 'domain', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'title' => '', + 'example' => '', ], ], + 'required' => false, + 'title' => '', + 'example' => '', ], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"310A783E-CC46-5452-A8A3-71AE5DB59****\\",\\n \\"OrderId\\": \\"223684716098****\\",\\n \\"InstanceIds\\": \\"[\'acp-2iowaqjyw9nrd****\', \'acp-2iowaqjyw9nrd****\']\\"\\n}","type":"json"}]', - 'title' => 'UpgradeAndroidInstanceGroup', - 'description' => 'Currently, this operation allows you to only increase the size of an instance group.'."\n", - ], - 'DowngradeAndroidInstanceGroup' => [ - 'summary' => 'Downgrades an instance group. Currently, this operation allows you to only delete specific cloud phone instances from an instance group.', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'high', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMGJBSL', - ], - ], - 'parameters' => [ [ - 'name' => 'InstanceGroupId', - 'in' => 'query', + 'name' => 'PolicyType', + 'in' => 'formData', 'schema' => [ - 'description' => 'The ID of the instance group.'."\n", 'type' => 'string', - 'required' => true, - 'example' => 'ag-cuv4scs4obxhs****', - ], - ], - [ - 'name' => 'AndroidInstanceIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the cloud phone instances that you want to delete.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance that you want to delete.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-hangzhouarmw****', - ], + 'enum' => ['Instance', 'Node'], + 'description' => 'The policy type.', 'required' => false, - 'maxItems' => 100, + 'title' => '', + 'example' => 'Instance', ], ], [ - 'name' => 'AutoPay', - 'in' => 'query', + 'name' => 'Watermark', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => 'Specifies whether to enable the auto-payment feature. Default value: false.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: enables the auto-payment feature. Ensure your account has sufficient balance to use this feature.'."\n" - .'* false: disables the auto-payment feature. This requires manual payment each time you place an order.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', + 'type' => 'object', + 'properties' => [ + 'WatermarkSwitch' => [ + 'type' => 'string', + 'description' => 'Specifies whether to enable the screen watermark.', + 'required' => false, + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], + 'title' => '', + 'example' => 'off', + ], + 'WatermarkTypes' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'string', + 'description' => 'The screen watermark content.', + 'required' => false, + 'enumValueTitles' => ['Username' => 'Username', 'CustomText' => 'Custom text', 'ClientIpAddress' => 'Client IP address', 'IpAddress' => 'IP address', 'ClientTime' => 'Current time'], + 'title' => '', + 'example' => 'Username', + ], + 'description' => 'The screen watermark content.', + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'WatermarkCustomText' => ['type' => 'string', 'description' => 'The custom text for the watermark. The text can be up to 10 characters long and cannot contain emojis.', 'required' => false, 'title' => '', 'example' => 'custom text'], + 'WatermarkFontSize' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The font size of the watermark. Valid values: 10 to 20.', 'required' => false, 'title' => '', 'example' => '12'], + 'WatermarkColor' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The font color of the watermark. Valid values: 0 to 16777215.', 'required' => false, 'title' => '', 'example' => '0'], + 'WatermarkTransparencyValue' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The opacity of the watermark. A larger value indicates lower transparency. Valid values: 10 to 100.', 'required' => false, 'title' => '', 'example' => '25'], ], - 'example' => 'true', + 'description' => 'Screen watermark.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], ], @@ -3492,40 +2829,41 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '3AF82CE1-2801-52CE-BF64-B491DD7C****', - ], - 'OrderId' => [ - 'description' => 'The ID of the order.'."\n", - 'type' => 'string', - 'example' => '22326560487****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******'], + 'PolicyGroupId' => ['description' => 'The policy ID.', 'type' => 'string', 'title' => '', 'example' => 'pg-exbuu6yrpvb******'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3AF82CE1-2801-52CE-BF64-B491DD7C****\\",\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', - 'title' => 'DowngradeAndroidInstanceGroup', - 'description' => 'This operation only allows you to scale down an instance group.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\",\\n \\"PolicyGroupId\\": \\"pg-exbuu6yrpvb******\\"\\n}","type":"json"}]', + 'title' => 'CreatePolicyGroup', + 'changeSet' => [ + ['createdAt' => '2025-04-25T11:27:20.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-04-03T10:00:32.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-01-09T15:07:06.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-11-15T01:35:07.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-09-26T11:32:59.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-08-20T03:54:01.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-08-19T09:42:45.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'translator' => 'machine', ], - 'RenewAndroidInstanceGroups' => [ - 'summary' => 'Renews instance groups.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'CreateScreenshot' => [ + 'summary' => 'This asynchronous API operation generates a screenshot of a cloud phone.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3534,127 +2872,93 @@ 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'high', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMR1L7E', - ], + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneQNMLJ7'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'InstanceGroupIds', + 'name' => 'AndroidInstanceIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the instance groups.'."\n", + 'description' => 'The list of instance IDs. Batch screenshots are supported.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-aobj3xwnvexhs****', - ], - 'required' => false, + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'acp-ig2bdpk374l12****'], + 'deprecated' => false, + 'required' => true, 'maxItems' => 100, - 'minItems' => 1, - ], - ], - [ - 'name' => 'Period', - 'in' => 'query', - 'schema' => [ - 'description' => 'The duration of the renewal, measured in units defined by PeriodUnit.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '6', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'PeriodUnit', + 'name' => 'OssBucketName', 'in' => 'query', - 'schema' => [ - 'description' => 'The unit of the renewal duration. Default value: Month.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Month'."\n" - .'* Year'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Month' => '', - 'Year' => '', - ], - 'example' => 'Month', - ], + 'schema' => ['description' => 'The custom OSS bucket. The bucket name must start with the cloudphone-saved-bucket- prefix. The cloud phone instance and the OSS bucket must be in the same region. If you leave this parameter empty, a default bucket named cloudphone-saved-bucket-{RegionOfCloudPhone}-{AliUid} is created.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'cloudphone-saved-bucket-cn-shanghai-default'], ], [ - 'name' => 'AutoPay', + 'name' => 'SkipCheckPolicyConfig', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enable the auto-payment feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true: enables the auto-payment feature. Ensure your account has sufficient balance to use this feature.'."\n" - .'* false: disables the auto-payment feature. You need to manually complete the payment process.'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => '', - 'false' => '', - ], - 'example' => 'true', - ], + 'schema' => ['description' => 'Specifies whether to skip the screenshot policy check. The default value is false.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'false'], ], [ - 'name' => 'PromotionId', + 'name' => 'ScreenshotId', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['type' => 'string', 'description' => 'The screenshot ID. The generated screenshot is named "ScreenshotId\\_AndroidInstanceId.png."'."\n" + ."\n" + .'>'."\n" + ."\n" + .'The ScreenshotId must be 2 to 128 characters long, beginning with a letter, but cannot start with http\\:// or https\\://. Allowed characters include letters, digits, underscores (\\_), and hyphens (-).'."\n" + ."\n" + .'>', 'required' => false, 'title' => '', 'example' => 'image'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'title' => 'PlainResult', + 'description' => 'PlainResult\\', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4B886792-2051-5DB4-8AE6-C8E45D3B4****', - ], - 'OrderId' => [ - 'description' => 'The ID of the order.'."\n", - 'type' => 'string', - 'example' => '22326560487****', + 'RequestId' => ['description' => 'The unique ID of the request. If you encounter an issue, provide this request ID for troubleshooting.', 'type' => 'string', 'title' => '', 'example' => '3AF82CE1-2801-52CE-BF64-B491DD7C****'], + 'Tasks' => [ + 'description' => 'The list of tasks.', + 'type' => 'array', + 'items' => [ + 'description' => 'The task.', + 'type' => 'object', + 'properties' => [ + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'title' => '', 'example' => 'acp-bwhtebzah2fse****'], + 'TaskId' => ['description' => 'The task ID. You can use this ID to call the DescribeTasks operation and query the screenshot task. When the task is complete, you can get the download link for the screenshot.', 'type' => 'string', 'title' => '', 'example' => 't-imr0fufqd7cle****'], + 'ScreenshotId' => ['type' => 'string', 'description' => 'The screenshot ID. The generated screenshot is named "ScreenshotId\\_AndroidInstanceId.png."', 'title' => '', 'example' => 'image'], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3AF82CE1-2801-52CE-BF64-B491DD7C****\\",\\n \\"Tasks\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-bwhtebzah2fse****\\",\\n \\"TaskId\\": \\"t-imr0fufqd7cle****\\",\\n \\"ScreenshotId\\": \\"image\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'CreateScreenshot', + 'description' => 'This operation creates a screenshot of a cloud phone and uploads it to the default Object Storage Service (OSS) bucket. The operation returns a task ID. You can then call the DescribeTasks operation to retrieve the download link for the screenshot.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4B886792-2051-5DB4-8AE6-C8E45D3B4****\\",\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', - 'title' => 'RenewAndroidInstanceGroups', ], - 'UpdateInstanceGroupImage' => [ - 'summary' => 'Changes the image of an instance group.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'CreateSystemPropertyTemplate' => [ + 'summary' => 'Creates a system property template. The key-value pairs defined in the template are sent to cloud phones and set as properties in their Android systems using the setprop command. APKs or related programs can then read these property values.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -3663,102 +2967,132 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'high', + 'operationType' => 'none', + 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneE7UBTJ', - ], + 'abilityTreeNodes' => ['FEATUREcloudphone3OZQF8'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'InstanceGroupIds', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the instance groups.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-3kzpiqqsjwpy9****', - ], - 'required' => true, - 'maxItems' => 100, - 'minItems' => 1, - ], + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the template. The name must meet the following requirements:'."\n" + ."\n" + .'- Be 2 to 32 characters in length.'."\n" + ."\n" + .'- Start with an uppercase or lowercase letter or a Chinese character. It cannot start with `http://` or `https://`.'."\n" + ."\n" + .'- Contain letters, digits, colons (:), underscores (\\_), and hyphens (-). Periods (.) are not supported.', 'type' => 'string', 'required' => false, 'example' => 'Template1', 'title' => ''], ], [ - 'name' => 'ImageId', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the image.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'imgc-075cllfeuazh****', - ], - ], - ], - 'responses' => [ - 200 => [ + 'name' => 'SystemPropertyInfo', + 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", + 'description' => 'The information about the system property template.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '55726272-E40B-530D-914F-5126B19C79B3', - ], - ], - ], - ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"55726272-E40B-530D-914F-5126B19C79B3\\"\\n}","type":"json"}]', - 'title' => 'UpdateInstanceGroupImage', - 'description' => 'Before you call this operation, make sure the image is in the Available state and the region of the image is included in the region list of the desired instance group. In addition, the instance group itself is available.'."\n", - ], - 'DeleteAndroidInstanceGroup' => [ - 'summary' => 'Delete an instance group.', - 'methods' => [ - 'post', - 'get', + 'RoBuildFingerprint' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductModel' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductManufacturer' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductBrand' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildUser' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildId' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBootloader' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildTags' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductBoard' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductDevice' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildProduct' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildType' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildHost' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildDisplayId' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RwRoSerialNo' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'CustomPropertyInfos' => [ + 'description' => 'A list of custom properties.', + 'type' => 'array', + 'items' => [ + 'description' => 'A custom property.', + 'type' => 'object', + 'properties' => [ + 'PropertyName' => ['description' => 'The key of the custom property.', 'type' => 'string', 'required' => false, 'example' => 'propKey', 'title' => ''], + 'PropertyValue' => ['description' => 'The value of the custom property.', 'type' => 'string', 'required' => false, 'example' => 'propValue', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', + ], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'FilePath', + 'in' => 'query', + 'schema' => ['description' => 'The URL of the property template file. The API parses the file synchronously. An error is returned if the file format is invalid.'."\n" + ."\n" + .'> The file must be in the following format: `{ "properties":{"key1":"value1"}}`.', 'type' => 'string', 'maxLength' => 512, 'required' => false, 'example' => 'https://filepath****.com'."\n", 'title' => ''], + ], + [ + 'name' => 'EnableAuto', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to automatically generate preset system properties.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The data structure of the response.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'], + 'TemplateId' => ['description' => 'The ID of the property template.', 'type' => 'string', 'example' => 'ap-g6gyv4a4xlf****', 'title' => ''], + ], + 'example' => '', + ], + ], ], - 'schemes' => [ - 'http', - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TemplateId\\": \\"ap-g6gyv4a4xlf****\\"\\n}","type":"json"}]', + 'title' => 'CreateSystemPropertyTemplate', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'DeleteAndroidInstanceGroup' => [ + 'summary' => 'Deletes an Android instance group. All instances in the group are also deleted. This operation cannot be undone. Proceed with caution.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ 'name' => 'InstanceGroupIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the instance groups.'."\n", + 'description' => 'A list of instance group IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-h67a2cs0zpruy****', - ], + 'items' => ['description' => 'An instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-h67a2cs0zpruy****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], ], @@ -3766,852 +3100,162 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'CB95E410-FD1D-53C5-9F7D-93CC44D7****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'CB95E410-FD1D-53C5-9F7D-93CC44D7****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB95E410-FD1D-53C5-9F7D-93CC44D7****\\"\\n}","type":"json"}]', 'title' => 'DeleteAndroidInstanceGroup', - 'description' => 'You can delete only pay-as-you-go instance groups.'."\n" + 'description' => 'Pay-as-you-go instance groups can be deleted at any time.'."\n" ."\n" - .'You can delete subscription instance groups only after they expire.'."\n", - ], - 'DescribeAndroidInstances' => [ - 'summary' => 'Queries cloud phone instances.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', + .'Subscription instance groups can be deleted only after they expire.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'DeleteApps' => [ + 'summary' => 'Deletes an application. Before you delete an application, make sure that the application is not installed on any instances.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneTVG3Y7', - ], - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ - 'name' => 'InstanceGroupId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-25nt4kk9whjh****', - ], - ], - [ - 'name' => 'KeyPairId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the bound key pair.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'kp-5hh431emkpuoi****', - ], - ], - [ - 'name' => 'AndroidInstanceIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-25nt4kk9whhok****', - ], - 'required' => false, - 'maxItems' => 1000, - 'minItems' => 1, - ], - ], - [ - 'name' => 'AndroidInstanceName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'name', - ], - ], - [ - 'name' => 'Status', - 'in' => 'query', - 'schema' => [ - 'description' => 'The state of the instance.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* BACKUPING: The instance is being backed up.'."\n" - .'* STARTING: The instance is being started.'."\n" - .'* RUNNING: The instance group is available.'."\n" - .'* DELETING: The instance is being deleted.'."\n" - .'* BACKUP_FAILED: The backup operation failed.'."\n" - .'* DELETED: The instance is deleted.'."\n" - .'* FAILED: The instance failed to be created.'."\n" - .'* STOPPED: The instance is stopped.'."\n" - .'* RECOVERING: The instance has an ongoing file recovery task.'."\n" - .'* UNAVAILABLE: The instance has an exception.'."\n" - .'* REBOOTING: The instance is being restarted.'."\n" - .'* RESETTING: The instance is being reset.'."\n" - .'* STOPPING: The instance is being stopped.'."\n" - .'* RECOVER_FAILED: The file recovery task failed.'."\n" - .'* CREATING: The instance is being created.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'BACKUPING' => '', - 'STARTING' => '', - 'RUNNING' => '', - 'DELETING' => '', - 'BACKUP_FAILED' => '', - 'DELETED' => '', - 'FAILED' => '', - 'STOPPED' => '', - 'RECOVERING' => '', - 'UNAVAILABLE' => '', - 'REBOOTING' => '', - 'RESETTING' => '', - 'STOPPING' => '', - 'RECOVER_FAILED' => '', - 'CREATING' => '', - ], - 'example' => 'RUNNING', - ], - ], - [ - 'name' => 'SaleMode', - 'in' => 'query', - 'schema' => [ - 'description' => 'The sales mode.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Instance: the standard mode.'."\n" - .'* Node: the node mode.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Instance' => '', - 'Node' => '', - ], - 'example' => 'Instance', - ], - ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 100.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '20', - ], - ], - [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****', - ], - ], - [ - 'name' => 'InstanceGroupIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the instance groups.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-25nt4kk9whhdh****', - ], - 'required' => false, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'InstanceGroupName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], - ], - [ - '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' => false, - 'enumValueTitles' => [ - 'PostPaid' => '', - 'PrePaid' => '', - ], - 'example' => 'PostPaid', - ], - ], - [ - 'name' => 'Tag', + 'name' => 'AppIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The tags of the resources.'."\n", + 'description' => 'The IDs of the applications.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The tag of the resource.'."\n", - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The key of the tag.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'key', - ], - 'Value' => [ - 'description' => 'The value of the tag.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'value', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 20, - ], - ], - [ - 'name' => 'BizRegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The region ID. You can call the [DescribeRegions](~~2807298~~) operation to query the regions where Cloud Phone is supported.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-shanghai', - ], - ], - [ - 'name' => 'NodeId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the node.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'node_id', - ], - ], - [ - 'name' => 'NodeName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the node.'."\n", - 'type' => 'string', + 'items' => ['description' => 'The ID of the application.'."\n", 'type' => 'string', 'required' => false, 'example' => '1234', 'title' => ''], 'required' => false, - 'example' => 'node_name', - ], - ], - [ - 'name' => 'OfficeSiteIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - 'maxItems' => 100, - ], - ], - [ - 'name' => 'AuthorizedUserId', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], - ], - [ - 'name' => 'QosRuleIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], 'maxItems' => 100, - ], - ], - [ - 'name' => 'AppManagePolicyId', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], - ], - [ - 'name' => 'PrivateIpAddress', - 'in' => 'query', - 'schema' => [ - '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 ID of the request.'."\n", - 'type' => 'string', - 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kmma/xxE9WtwL/ADvZ****', - ], - 'InstanceModel' => [ - 'description' => 'The cloud phone instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The cloud phone instance.'."\n", - 'type' => 'object', - 'properties' => [ - 'AndroidInstanceGroupId' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'example' => 'ag-ayyhomlal7po****', - ], - 'AndroidInstanceGroupName' => [ - 'description' => 'The name of the instance group.'."\n", - 'type' => 'string', - 'example' => 'AndroidInstanceGroupName', - ], - 'AndroidInstanceId' => [ - 'description' => 'The ID of the instance.'."\n", - 'type' => 'string', - 'example' => 'acp-8at8h6ejkadjh****', - ], - 'AndroidInstanceName' => [ - 'description' => 'The name of the instance.'."\n", - 'type' => 'string', - 'example' => 'name', - ], - 'AndroidInstanceStatus' => [ - 'description' => 'The state of the instance.'."\n", - 'type' => 'string', - 'example' => 'RUNNING', - ], - 'NetworkInterfaceIp' => [ - 'description' => 'The IP address of the ENI.'."\n", - 'type' => 'string', - 'example' => '192.168.22.48', - ], - 'AuthorizedUserId' => [ - 'description' => 'The ID of the user to whom the instance is assigned.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'BindUserId' => [ - 'description' => 'The ID of the bound user.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'PersistentAppInstanceId' => [ - 'description' => 'The ID of the persistent session.'."\n", - 'type' => 'string', - 'example' => 'p-0btrd5zj8epo****', - ], - 'AppInstanceId' => [ - 'description' => 'The ID of the physical instance.'."\n", - 'type' => 'string', - 'example' => 'ai-9ey6io0q58rcd****', - ], - 'KeyPairId' => [ - 'description' => 'The ID of the key pair.'."\n", - 'type' => 'string', - 'example' => 'kp-5hh431emkpucs****', - ], - 'GmtCreate' => [ - 'description' => 'The time when the instance was created.'."\n", - 'type' => 'string', - 'example' => '2023-05-06 10:42:10', - ], - 'GmtModified' => [ - 'description' => 'The time when the instance was modified.'."\n", - 'type' => 'string', - 'example' => '2023-05-06 10:42:10', - ], - 'AppInstanceGroupId' => [ - 'description' => 'The ID of the delivery group.'."\n", - 'type' => 'string', - 'example' => 'aig-i7yv6tkn7kh8dv****', - ], - 'RegionId' => [ - 'description' => 'The region ID of the instance.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'Rate' => [ - 'description' => 'The progress of instance data backup or restoration.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'ErrorCode' => [ - 'description' => 'The cause of the instance data backup failure or restoration failure.'."\n", - 'type' => 'string', - 'example' => 'FilePathNotFound', - ], - 'RenderingType' => [ - 'description' => 'The rendering type.'."\n", - 'type' => 'string', - 'example' => 'local', - ], - 'InstanceType' => [ - 'description' => 'The type of the instance.'."\n", - 'type' => 'string', - 'example' => 'acp.basic.small', - ], - 'ChargeType' => [ - 'description' => 'The billing method of the instance.'."\n", - 'type' => 'string', - 'example' => 'PrePaid', - ], - 'GmtExpired' => [ - 'description' => 'The time when the subscription instance group expires.'."\n", - 'type' => 'string', - 'example' => '2024-07-15T02:03:33Z', - ], - 'PolicyGroupId' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'example' => 'pg-0bszojpu0seql****', - ], - 'OfficeSiteId' => [ - 'description' => 'The office network ID.'."\n", - 'type' => 'string', - 'example' => 'cn-shenzhen+dir-211620****', - ], - 'VSwitchId' => [ - 'type' => 'string', - ], - 'Memory' => [ - 'description' => 'The memory size.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1024', - ], - 'Cpu' => [ - 'description' => 'The number of vCPUs.'."\n", - 'type' => 'string', - 'example' => '4', - ], - 'Disks' => [ - 'description' => 'The disks.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The disk.'."\n", - 'type' => 'object', - 'properties' => [ - 'DiskType' => [ - 'description' => 'The type of the disk.'."\n", - 'type' => 'string', - 'example' => 'SYSTEM', - ], - 'DiskSize' => [ - 'description' => 'The disk size. Unit: GB.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '32', - ], - ], - ], - ], - 'Tags' => [ - 'description' => 'The tags.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The tag.'."\n", - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => 'The key of the tag.'."\n", - 'type' => 'string', - 'example' => 'key', - ], - 'Value' => [ - 'description' => 'The value of the tag.'."\n", - 'type' => 'string', - 'example' => 'value', - ], - ], - ], - ], - 'ImageVersion' => [ - 'description' => 'The version of the image.'."\n", - 'type' => 'string', - 'example' => '3.5.3.867', - ], - 'PublicIpAddress' => [ - 'description' => 'The public IP address.'."\n", - 'type' => 'string', - 'example' => '10.32.1.41', - ], - 'SessionStatus' => [ - 'description' => 'The session status.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* disConnect: The session is disconnected.'."\n" - .'* connect: The session is connected.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'disConnect' => '', - 'connect' => '', - ], - 'example' => 'connect', - ], - 'NetworkInterfaceIpv6Address' => [ - 'description' => '> This parameter is not publicly available.'."\n", - 'type' => 'string', - 'example' => 'null', - ], - 'PublicIpv6Address' => [ - 'description' => '> This parameter is not publicly available.'."\n", - 'type' => 'string', - 'example' => 'null', - ], - 'ImageId' => [ - 'type' => 'string', - ], - 'DisplayConfig' => [ - 'type' => 'object', - 'properties' => [ - 'ResolutionHeight' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'ResolutionWidth' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'Dpi' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'Fps' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'LockResolution' => [ - 'type' => 'string', - ], - ], - ], - 'QosRuleId' => [ - 'type' => 'string', - ], - 'AppManagePolicy' => [ - 'type' => 'object', - 'properties' => [ - 'AppManagePolicyId' => [ - 'type' => 'string', - ], - 'AppManagePolicyName' => [ - 'type' => 'string', - ], - ], - ], - 'ZoneId' => [ - 'type' => 'string', - ], - 'PhoneDataInfo' => [ - 'type' => 'object', - 'properties' => [ - 'PhoneDataId' => [ - 'type' => 'string', - ], - 'PhoneDataVolume' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - ], - 'StreamMode' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'NetworkType' => [ - 'type' => 'string', - ], - 'BandwidthPackageType' => [ - 'type' => 'string', - ], - 'BandwidthPackageId' => [ - 'type' => 'string', - ], - 'UpBandwidthLimit' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'DownBandwidthLimit' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'ServerType' => [ - 'type' => 'string', - ], - 'BizTags' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'type' => 'string', - ], - 'Value' => [ - 'type' => 'string', - ], - ], - ], - ], - 'ServerStatus' => [ - 'type' => 'string', - ], - 'SystemVersion' => [ - 'type' => 'string', - ], - 'InternetStatus' => [ - 'type' => 'string', - ], - 'BizImageType' => [ - 'type' => 'string', - ], - ], - ], - ], - ], + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '310A783E-CC46-5452-A8A3-71AE5DB5****'], + ], + 'example' => '', + ], + ], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"310A783E-CC46-5452-A8A3-71AE5DB5****\\"\\n}","type":"json"}]', + 'title' => 'DeleteApps', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"TotalCount\\": 10,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kmma/xxE9WtwL/ADvZ****\\",\\n \\"InstanceModel\\": [\\n {\\n \\"AndroidInstanceGroupId\\": \\"ag-ayyhomlal7po****\\",\\n \\"AndroidInstanceGroupName\\": \\"AndroidInstanceGroupName\\",\\n \\"AndroidInstanceId\\": \\"acp-8at8h6ejkadjh****\\",\\n \\"AndroidInstanceName\\": \\"name\\",\\n \\"AndroidInstanceStatus\\": \\"RUNNING\\",\\n \\"NetworkInterfaceIp\\": \\"192.168.22.48\\",\\n \\"AuthorizedUserId\\": \\"test\\",\\n \\"BindUserId\\": \\"test\\",\\n \\"PersistentAppInstanceId\\": \\"p-0btrd5zj8epo****\\",\\n \\"AppInstanceId\\": \\"ai-9ey6io0q58rcd****\\",\\n \\"KeyPairId\\": \\"kp-5hh431emkpucs****\\",\\n \\"GmtCreate\\": \\"2023-05-06 10:42:10\\",\\n \\"GmtModified\\": \\"2023-05-06 10:42:10\\",\\n \\"AppInstanceGroupId\\": \\"aig-i7yv6tkn7kh8dv****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Rate\\": 100,\\n \\"ErrorCode\\": \\"FilePathNotFound\\",\\n \\"RenderingType\\": \\"local\\",\\n \\"InstanceType\\": \\"acp.basic.small\\",\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"GmtExpired\\": \\"2024-07-15T02:03:33Z\\",\\n \\"PolicyGroupId\\": \\"pg-0bszojpu0seql****\\",\\n \\"OfficeSiteId\\": \\"cn-shenzhen+dir-211620****\\",\\n \\"VSwitchId\\": \\"vsw-2zepmau2hsbhos42****\\",\\n \\"Memory\\": 1024,\\n \\"Cpu\\": \\"4\\",\\n \\"Disks\\": [\\n {\\n \\"DiskType\\": \\"SYSTEM\\",\\n \\"DiskSize\\": 32\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"ImageVersion\\": \\"3.5.3.867\\",\\n \\"PublicIpAddress\\": \\"10.32.1.41\\",\\n \\"SessionStatus\\": \\"connect\\",\\n \\"NetworkInterfaceIpv6Address\\": \\"null\\",\\n \\"PublicIpv6Address\\": \\"null\\",\\n \\"ImageId\\": \\"imgc-075cllfeuazh0****\\",\\n \\"DisplayConfig\\": {\\n \\"ResolutionHeight\\": 1280,\\n \\"ResolutionWidth\\": 720,\\n \\"Dpi\\": 240,\\n \\"Fps\\": 30,\\n \\"LockResolution\\": \\"off\\"\\n },\\n \\"QosRuleId\\": \\"qos-5605u0gelk200****\\",\\n \\"AppManagePolicy\\": {\\n \\"AppManagePolicyId\\": \\"amp-dgiavcvibfdds****\\",\\n \\"AppManagePolicyName\\": \\"应用组1\\"\\n },\\n \\"ZoneId\\": \\"cn-hangzhou-h\\",\\n \\"PhoneDataInfo\\": {\\n \\"PhoneDataId\\": \\"pd-sbcudgidbhb****\\",\\n \\"PhoneDataVolume\\": 20\\n },\\n \\"StreamMode\\": 1,\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageId\\": \\"np-0q6ixs7vpxcizp***\\",\\n \\"UpBandwidthLimit\\": 5,\\n \\"DownBandwidthLimit\\": 30,\\n \\"ServerType\\": \\"cpm.gx7.10xlarge\\",\\n \\"BizTags\\": [\\n {\\n \\"Key\\": \\"releaseFlag\\",\\n \\"Value\\": \\"on\\"\\n }\\n ],\\n \\"ServerStatus\\": \\"RUNNING\\",\\n \\"SystemVersion\\": \\"Android 11\\",\\n \\"InternetStatus\\": \\"\\",\\n \\"BizImageType\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'DescribeAndroidInstances', ], - 'ModifyAndroidInstance' => [ - 'summary' => 'Modifies attributes of a cloud phone instance. Currently, this operation allows you to modify only the name of a cloud phone instance.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DeleteBackupFile' => [ + 'summary' => 'Deletes a batch of backup files.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVGR0HK', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneMPR6T6'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-8v5bjld0r7tkl****'."\n", - ], - ], - [ - 'name' => 'NewAndroidInstanceName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The new name of the cloud phone instance.'."\n" - ."\n" - .'> The name can be up to 30 characters in length. It can contain letters, digits, colons (:), underscores (\\_), periods (.), or hyphens (-). It must start with letters but cannot start with http:// or https://.', - 'type' => 'string', - 'required' => false, - 'example' => 'new_name', - ], - ], - [ - 'name' => 'InstanceIds', + 'name' => 'BackupFileIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ + 'description' => 'A list of backup file IDs.', 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], + 'items' => ['description' => 'The ID of a backup file.', 'type' => 'string', 'required' => false, 'example' => 'bf-islptramvb730****', 'title' => ''], + 'required' => true, 'maxItems' => 100, - ], - ], - [ - 'name' => 'UpBandwidthLimit', - 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - [ - 'name' => 'DownBandwidthLimit', - 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'title' => 'PlainResult', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****', - ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\"\\n}","type":"json"}]', + 'title' => 'DeleteBackupFile', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\"\\n}","type":"json"}]', - 'title' => 'ModifyAndroidInstance', ], - 'AuthorizeAndroidInstance' => [ - 'summary' => 'Authorize/unauthorize Android instances for users.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DeleteCloudPhoneNodes' => [ + 'summary' => 'Deletes a cloud phone matrix.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneZCSVZQ'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIds', - 'in' => 'query', + 'name' => 'NodeIds', + 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'List of instance IDs.', + 'description' => 'The cloud phone matrix IDs.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'Instance ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-8v5bjld0r7pl****', - ], + 'items' => ['description' => 'The cloud phone matrix ID.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cpn-05e4d1cec2urdh1j****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'minItems' => 1, - ], - ], - [ - 'name' => 'AuthorizeUserId', - 'in' => 'query', - 'schema' => [ - 'description' => 'User ID to be assigned.', - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], - ], - [ - 'name' => 'UnAuthorizeUserId', - 'in' => 'query', - 'schema' => [ - 'description' => 'User ID to be unassigned.', - 'type' => 'string', - 'required' => false, - 'example' => 'test', + 'title' => '', + 'example' => '', ], ], ], @@ -4619,169 +3263,229 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Return parameters.', + 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC****\\"\\n}","type":"json"}]', + 'title' => 'DeleteCloudPhoneNodes', + 'description' => 'Before you proceed, make sure that the cloud phone matrix that you want to delete expired.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\"\\n}","type":"json"}]', - 'title' => 'Assign Users to Instances & Unassign', - 'description' => 'Instance states that support user assignment: Available, Shutting Down, Stopped, Starting, Backing Up, Restoring, Backup Failed, Restore Failed.'."\n" - ."\n" - .'Instance states that support unassignment: Available, Shutting Down, Stopped, Starting, Backing Up, Restoring, Backup Failed, Restore Failed, Expired, Overdue, Deleted.', ], - 'StartAndroidInstance' => [ - 'summary' => 'Start instances.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DeleteImages' => [ + 'summary' => 'Deletes a custom image.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone5C0MVL', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneXWUML7'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIds', - 'in' => 'query', - 'style' => 'repeatList', + 'name' => 'ImageIds', + 'in' => 'formData', + 'style' => 'json', 'schema' => [ - 'description' => 'List of instances.', + 'description' => 'The IDs of the images.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'Instance ID.', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-hk34lbnw0qhi7****', + 'items' => ['description' => 'The ID of the image.'."\n", 'type' => 'string', 'required' => false, 'example' => 'imgc-kjsdfkjsk****', 'title' => ''], + 'required' => true, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResult', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The images.'."\n", + 'type' => 'object', + 'properties' => [ + 'SuccessDeleteImageIds' => [ + 'title' => '', + 'description' => 'The IDs of the images that are successfully deleted.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The ID of the image that is successfully deleted.'."\n", 'type' => 'string', 'example' => 'imgc-jkafjsjk****', 'title' => ''], + 'example' => '', + ], + 'FailDeleteImageIds' => [ + 'title' => '', + 'description' => 'The IDs of the images that failed to be deleted.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The ID of the image that failed to be deleted.'."\n", 'type' => 'string', 'example' => 'imgc-sjkdfs8****', 'title' => ''], + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '4610632D-D661-5982-B3D7-5D3FD183F595', 'title' => ''], ], - 'required' => false, - 'maxItems' => 1000, + 'example' => '', ], ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"SuccessDeleteImageIds\\": [\\n \\"imgc-jkafjsjk****\\"\\n ],\\n \\"FailDeleteImageIds\\": [\\n \\"imgc-sjkdfs8****\\"\\n ]\\n },\\n \\"RequestId\\": \\"4610632D-D661-5982-B3D7-5D3FD183F595\\"\\n}","type":"json"}]', + 'title' => 'DeleteImages', + 'description' => 'You cannot delete an image that is currently in use by an instance group.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'DeleteKeyPairs' => [ + 'summary' => 'Deletes Android Debug Bridge (ADB) key pairs.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'SaleMode', + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'delete'], + 'parameters' => [ + [ + 'name' => 'KeyPairIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'string', - 'enum' => [ - 'Instance', - 'Node', - ], + 'description' => 'The IDs of the ADB key pairs.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The ID of the ADB key pair.'."\n", 'type' => 'string', 'required' => false, 'example' => 'kp-6v2q33ae4tw3a****', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Return parameters.', + 'title' => 'BaseResult', + 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Request ID.', - 'type' => 'string', - 'example' => '17C731AB-AAEE-5844-A352-D8D0352D****', - ], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\"\\n}","type":"json"}]', + 'title' => 'DeleteKeyPairs', + 'description' => '* If a cloud phone instance is currently associated with the ADB key pair you intend to delete, the ADB key pair cannot be deleted.'."\n" + .'* Once an ADB key pair is deleted, it cannot be retrieved or queried by using the DescribeKeyPairs operation.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"17C731AB-AAEE-5844-A352-D8D0352D****\\"\\n}","type":"json"}]', - 'title' => 'Start Instance', - 'description' => 'Only supports starting when the instance is in the **Stopped, Backup Failed, or Recovery Failed** state.', ], - 'StopAndroidInstance' => [ - 'summary' => 'Stops a cloud phone instance.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DeleteMobileAgentPackage' => [ + 'summary' => 'Deletes a node package.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneRXVHCU', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIds', + 'name' => 'PackageIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", + 'description' => 'The list of packages.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-3kzpiqqsjwtw7****', - ], + 'items' => ['description' => 'The package ID.', 'type' => 'string', 'required' => false, 'example' => 'cmag-0c1g77wjljl9h****', 'title' => ''], 'required' => false, 'maxItems' => 1000, + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'ForceStop', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to enforce a stop operation. If a cloud phone instance fails to stop due to system or network issues, a forced stop can be triggered, though it may result in data loss.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'false', + 'title' => '', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****'], + 'Code' => ['description' => 'The status code. A value of 200 indicates success.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + ], + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Delete a package', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\"\\n}","type":"json"}]', + ], + 'DeletePolicyGroup' => [ + 'summary' => 'Deletes one or more policy groups.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'none'], + 'parameters' => [ [ - 'name' => 'SaleMode', + 'name' => 'PolicyGroupIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'string', - 'enum' => [ - 'Instance', - 'Node', - ], + 'description' => 'A list of policy group IDs. If any specified policy group is associated with an existing instance group, the entire operation fails.', + 'type' => 'array', + 'items' => ['description' => 'A policy group ID.', 'type' => 'string', 'required' => false, 'example' => 'pg-gx4ger9hynfov****', 'title' => ''], + 'required' => true, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], ], @@ -4789,105 +3493,54 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'E38B41A8-8E00-5AE4-A957-6636ACB8****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '17C731AB-AAEE-5844-A352-D8D0352D3F0B'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"17C731AB-AAEE-5844-A352-D8D0352D3F0B\\"\\n}","type":"json"}]', + 'title' => 'DeletePolicyGroup', + 'description' => 'A policy group cannot be deleted if it is associated with an instance group.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E38B41A8-8E00-5AE4-A957-6636ACB8****\\"\\n}","type":"json"}]', - 'title' => 'StopAndroidInstance', - 'description' => 'Before you stop a cloud phone instance, make sure it is in one of the following states: **Available, Backup failure, and Restoration failure**.'."\n", ], - 'RebootAndroidInstancesInGroup' => [ - 'summary' => 'Restarts one or more cloud phone instances.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DeleteSystemPropertyTemplates' => [ + 'summary' => 'Deletes system property templates.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneO96MC6', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIds', + 'name' => 'TemplateIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", + 'description' => 'The IDs of the property templates.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-sgicbcdadjs****', - ], + 'items' => ['description' => 'The ID of the property template.', 'type' => 'string', 'required' => false, 'example' => 'ap-6f1z5z9d85qq7****', 'title' => ''], 'required' => false, 'maxItems' => 100, - 'minItems' => 1, - ], - ], - [ - 'name' => 'ForceStop', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to enforce a restart operation. If a cloud phone instance fails to stop due to system or network issues, a forced restart can be triggered, though it may result in data loss.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', - ], - 'example' => 'false', - ], - ], - [ - 'name' => 'SaleMode', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'enum' => [ - 'Instance', - 'Node', - ], - ], - ], - [ - 'name' => 'IgnoreParamValidation', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', + 'title' => '', + 'example' => '', ], ], ], @@ -4895,36 +3548,33 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '227CBB4C-F5DC-589D-A667-C5CA3D52****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], + 'Code' => ['description' => 'The error code.'."\n" + ."\n" + .'> This parameter is returned only when the API call fails.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\"\\n}","type":"json"}]', + 'title' => 'DeleteSystemPropertyTemplates', + 'description' => 'Deleting property templates does not affect instances for which you have already called the [](t3010125.xdita#)operation to send templates.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"227CBB4C-F5DC-589D-A667-C5CA3D52****\\"\\n}","type":"json"}]', - 'title' => 'RebootAndroidInstancesInGroup', - 'description' => 'Before you restart a cloud phone instance, make sure it is in one of the following states: **Available, Abnormal, Backup failure, and Restoration failure**.'."\n", ], - 'ResetAndroidInstancesInGroup' => [ - 'summary' => 'Resets one or more cloud phone instances.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeAgentTask' => [ + 'summary' => 'Retrieves details of specified Agent Tasks.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -4936,90 +3586,85 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneEDCJTJ', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIds', + 'name' => 'TaskIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-scaucydkl****', - ], - 'required' => false, + 'items' => ['description' => 'The task ID.', 'type' => 'string', 'required' => false, 'example' => 't-bp67acfmxazb4p****', 'title' => ''], 'maxItems' => 100, - 'minItems' => 1, - ], - ], - [ - 'name' => 'SaleMode', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'enum' => [ - 'Instance', - 'Node', - ], - ], - ], - [ - 'name' => 'SettingResetType', - 'in' => 'query', - 'schema' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - [ - 'name' => 'IgnoreParamValidation', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', + 'description' => 'A list of task IDs.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '310A783E-CC46-5452-A8A3-71AE5DB5****'], + 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => 'For example, "200" indicates success.', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + 'Count' => ['description' => 'The task count.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Tasks' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TaskId' => ['description' => 'The globally unique task ID.', 'type' => 'string', 'example' => 't-imr0fufqd7cle****', 'title' => ''], + 'InstanceId' => ['description' => 'The mobile node ID.', 'type' => 'string', 'example' => 'acp-anzzuho371azi44xr', 'title' => ''], + 'UserPrompt' => ['description' => 'The user prompt that the Agent uses to perform the task.', 'type' => 'string', 'example' => 'Download DingTalk from App Store', 'title' => ''], + 'CurrentStatus' => ['description' => 'The task\'s current status. Valid values:'."\n" + ."\n" + .'`PENDING`: The task is being created.'."\n" + ."\n" + .'`RUNNING`: The task is running.'."\n" + ."\n" + .'`COMPLETED`: The task has completed.'."\n" + ."\n" + .'`FAILED`: The task failed.'."\n" + ."\n" + .'`TIMEOUT`: The task timed out.', 'type' => 'string', 'example' => 'COMPLETED', 'title' => ''], + 'RunningAt' => ['description' => 'The task\'s creation time, in ISO 8601 format.', 'type' => 'string', 'example' => '2026-04-13T17:42:19Z', 'title' => ''], + 'Steps' => ['description' => 'The number of steps executed.', 'type' => 'string', 'example' => '30', 'title' => ''], + 'TaskResult' => ['description' => 'The task result. This field is returned only when `CurrentStatus` is `COMPLETED` or `FAILED`.', 'type' => 'string', 'example' => 'Download DingTalk succeeded.', 'title' => ''], + 'TaskDuration' => ['description' => 'The task duration. This field is returned only when `CurrentStatus` is `FAILED` or `COMPLETED`.', 'type' => 'string', 'example' => '50', 'title' => ''], + ], + 'description' => 'A task object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of tasks.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'Schema of Response', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeAgentTask', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - 'title' => 'ResetAndroidInstancesInGroup', - 'description' => 'Before you reset a cloud phone instance, make sure it is in one of the following states: **Available, Stopped, Abnormal, Backup failure, and Restoration failure**.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"310A783E-CC46-5452-A8A3-71AE5DB5****\\",\\n \\"Code\\": \\"For example, \\\\\\"200\\\\\\" indicates success.\\",\\n \\"Message\\": \\"Success.\\",\\n \\"Count\\": 1,\\n \\"Tasks\\": [\\n {\\n \\"TaskId\\": \\"t-imr0fufqd7cle****\\",\\n \\"InstanceId\\": \\"acp-anzzuho371azi44xr\\",\\n \\"UserPrompt\\": \\"Download DingTalk from App Store\\",\\n \\"CurrentStatus\\": \\"COMPLETED\\",\\n \\"RunningAt\\": \\"2026-04-13T17:42:19Z\\",\\n \\"Steps\\": \\"30\\",\\n \\"TaskResult\\": \\"Download DingTalk succeeded.\\",\\n \\"TaskDuration\\": \\"50\\"\\n }\\n ]\\n}","type":"json"}]', + 'translator' => 'machine', ], - 'ModifyInstanceChargeType' => [ - 'summary' => 'Modifies the billing method. Currently, this operation only allows you to change the billing method from pay-as-you-go to subscription.', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeAndroidInstanceGroups' => [ + 'summary' => 'Queries the details of a cloud phone instance group.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -5028,779 +3673,1277 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'list', 'riskType' => 'none', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneTVG3Y7', - ], + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneQNMLJ7'], ], 'parameters' => [ + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], + ], [ 'name' => 'InstanceGroupIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the instance groups.'."\n", + 'description' => 'The list of instance group IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-25nt4kk9whhdh****', - ], - 'required' => true, + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-25nt4kk9whhdh****', 'title' => ''], + 'required' => false, 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ChargeType', + 'name' => 'InstanceGroupName', 'in' => 'query', - 'schema' => [ - 'description' => 'The billing method. Valid values:'."\n" - ."\n" - .'> Currently, this operation only allows you to change the billing method from **pay-as-you-go to subscription**.'."\n", - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [ - 'PrePaid' => '', - ], - 'example' => 'PrePaid', - ], + 'schema' => ['description' => 'The instance group name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'Cloud phone', 'title' => ''], ], [ - 'name' => 'Period', + 'name' => 'Status', 'in' => 'query', 'schema' => [ - 'description' => 'The subscription duration. The unit is specified by PeriodUnit. Valid values: 1 Month, 2 Months, 3 Months, 6 Months, and 1 Year.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'The instance group status.', + 'enumValueTitles' => ['UPDATING_FAILED' => 'Image update failed.', 'FAILED' => 'Creation failed.', 'RUNNING' => 'Active.', 'EXPIRED' => 'Expired.', 'DELETING' => 'Deleting.', 'DELETED' => 'Deleted.', 'UPDATING' => 'Image updating.', 'CREATING' => 'Creating.'], + 'type' => 'string', 'required' => false, - 'example' => '1', + 'example' => 'CREATING', + 'title' => '', ], ], [ - 'name' => 'PeriodUnit', + 'name' => 'SaleMode', 'in' => 'query', 'schema' => [ - 'description' => 'The unit of the subscription duration. Valid values:'."\n" - ."\n" - .'* **Month**'."\n" - .'* **Year**'."\n", + 'description' => 'The purchase mode of the cloud phone.', + 'enumValueTitles' => ['STANDARD' => 'Standard mode [default value].'], 'type' => 'string', 'required' => false, - 'example' => 'Month', + 'example' => 'standard', + 'title' => '', ], ], [ - 'name' => 'AutoPay', + 'name' => 'ChargeType', 'in' => 'query', 'schema' => [ - 'description' => 'Specifies whether to enable the auto-payment feature. Default value: false.'."\n", - 'type' => 'boolean', + 'description' => 'The billing type.'."\n" + .'[_single.params.ChargeType.enum. PrePaid]Subscription.', + 'enumValueTitles' => [' PrePaid' => '包年包月', 'PostPaid' => 'Pay-as-you-go.'], + 'type' => 'string', 'required' => false, - 'example' => 'false', + 'example' => 'PostPaid', + 'title' => '', ], ], [ - 'name' => 'AutoRenew', + 'name' => 'PolicyGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'example' => 'pg-1b77w6xrqfubi****', 'title' => ''], + ], + [ + 'name' => 'KeyPairId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the key pair.', 'type' => 'string', 'required' => false, 'example' => 'kp-5htf0ymsrnb7q****', 'title' => ''], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of entries per page for a paged query. Valid values: 1 to 100. Default value: 100.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '1000', 'minimum' => '1', 'required' => false, 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The pagination token that indicates the position from which the current read operation starts. Leave this parameter empty to read from the beginning.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', 'title' => ''], + ], + [ + 'name' => 'Tags', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'Specifies whether to enable the auto-renewal feature. Default value: false.'."\n", - 'type' => 'boolean', + 'description' => 'The tags of the instance group. You can bind up to 20 tags to each instance.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tag information.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key. You can specify 1 to 20 tag keys.'."\n" + .'>The tag key can be up to 128 characters in length. It cannot start with aliyun or acs: and cannot contain http:// or https://.>.', 'type' => 'string', 'required' => false, 'example' => 'phone', 'title' => ''], + 'Value' => ['description' => 'The tag value.'."\n" + .'>The tag value can be up to 128 characters in length. It cannot start with `aliyun` or `acs:` and cannot contain `http://` or `https://`.>.', 'type' => 'string', 'required' => false, 'example' => '2025', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => 'false', + 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'PromotionId', + 'name' => 'InstanceVersion', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'title' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****', - ], - 'InstanceGroupIds' => [ - 'description' => 'The IDs of the instance groups.'."\n", + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****'], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'NextToken' => ['description' => 'The pagination token that indicates the position where the current call returns. An empty value indicates that all data has been read.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', 'title' => ''], + 'InstanceGroupModel' => [ + 'description' => 'The details of the instance group.', 'type' => 'array', 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'example' => 'ag-cuv4scs4obxch****', + 'description' => 'The details of the instance group.', + 'type' => 'object', + 'properties' => [ + 'InstanceGroupId' => ['description' => 'The instance group ID.', 'type' => 'string', 'example' => 'ag-h67a2cs0zprfdh****'."\n", 'title' => ''], + 'InstanceGroupName' => ['description' => 'The instance group name.', 'type' => 'string', 'example' => 'Cloud phoneA', 'title' => ''], + 'InstanceGroupStatus' => ['description' => 'The instance group status.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'InstanceGroupSpec' => ['description' => 'The instance group specifications.', 'type' => 'string', 'example' => 'acp.basic.small', 'title' => ''], + 'InstanceGroupSpecDescribe' => ['description' => 'The description of the instance group specifications.', 'type' => 'string', 'example' => 'ARM-2vCPU4GiB 32GiB', 'title' => ''], + 'OfficeSiteId' => ['description' => 'The network ID.', 'type' => 'string', 'example' => 'cn-shanghai+dir-030598****', 'title' => ''], + 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'example' => 'imgc-06zyt9m93zwax****', 'title' => ''], + 'NumberOfInstances' => ['description' => 'The number of instances in the instance group.', 'type' => 'string', 'example' => '10', 'title' => ''], + 'ChargeType' => ['description' => 'The billing method.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''], + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'GmtCreate' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2024-02-01 10:56:36', 'title' => ''], + 'GmtModified' => ['description' => 'The update time.', 'type' => 'string', 'example' => '2024-02-01 10:56:36', 'title' => ''], + 'SaleMode' => ['description' => 'The sales mode.', 'type' => 'string', 'example' => 'standard', 'title' => ''], + 'InstalledAppList' => ['description' => 'The list of installed applications.', 'type' => 'string', 'example' => '"抖音","淘宝"', 'title' => ''], + 'GmtExpired' => ['description' => 'The expiration time of the subscription instance group.', 'type' => 'string', 'example' => '2027-06-29 07:25:31', 'title' => ''], + 'AppInstanceGroupId' => ['description' => 'The delivery group ID.', 'type' => 'string', 'example' => 'aig-48xr63m4dybjk****', 'title' => ''], + 'PolicyGroupId' => ['description' => 'The policy ID.', 'type' => 'string', 'example' => 'pg-c6n38xucps8kl****', 'title' => ''], + 'VSwitchId' => ['description' => 'The vSwitch ID in the VPC.', 'type' => 'string', 'example' => 'vsw-t4n0yqs009ho024wt****', 'title' => ''], + 'ResolutionHeight' => ['description' => 'The height of the resolution.', 'type' => 'integer', 'format' => 'int32', 'example' => '1280', 'title' => ''], + 'ResolutionWidth' => ['description' => 'The width of the resolution.', 'type' => 'integer', 'format' => 'int32', 'example' => '720', 'title' => ''], + 'SystemVersion' => ['description' => 'The system version.', 'type' => 'string', 'example' => 'Android 12', 'title' => ''], + 'ArchitectureType' => ['description' => 'The architecture type.', 'type' => 'string', 'example' => 'ARM', 'title' => ''], + 'Memory' => ['description' => 'The memory size.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], + 'Cpu' => ['description' => 'The number of CPU cores.', 'type' => 'string', 'example' => '8', 'title' => ''], + 'Disks' => [ + 'description' => 'The disk information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The disk information.', + 'type' => 'object', + 'properties' => [ + 'DiskType' => ['description' => 'The disk type.', 'type' => 'string', 'example' => 'SYSTEM', 'title' => ''], + 'DiskSize' => ['description' => 'The disk size, in GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '32', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'ErrorCode' => ['description' => 'The reason for the creation failure.', 'type' => 'string', 'example' => 'InternalError', 'title' => ''], + 'RenderingType' => [ + 'description' => 'The rendering type of the instance group.', + 'enumValueTitles' => ['GPURemote' => 'GPU remote rendering.', 'CPU' => 'CPU rendering.', 'GPULocal' => 'GPU local rendering.'], + 'type' => 'string', + 'example' => 'CPU', + 'title' => '', + ], + 'AvailableInstanceAmount' => ['description' => 'The number of active instances.'."\n" + ."\n" + .'> An instance is considered active if its instance status is not "Deleting" or "Deleted".', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], + 'EnableIpv6' => ['description' => '> This parameter is not publicly available.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'Ipv6Bandwidth' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], + 'BandwidthPackageId' => ['description' => 'The ID of the bandwidth package.', 'type' => 'string', 'example' => 'np-0q6ixs7vpxciz****', 'title' => ''], + 'BandwidthPackageType' => ['description' => 'The type of the bandwidth package.', 'type' => 'string', 'example' => 'cbwp_ecd', 'title' => ''], + 'BandwidthPackageStatus' => ['description' => 'The status of the bandwidth package.'."\n" + .'Valid values:'."\n" + .'- Creating: being created.'."\n" + .'- Releasing: being released.'."\n" + .'- InUse: in use.'."\n" + .'- Failed: failed.'."\n" + .'- Expired: expired.'."\n" + .'- Available: unbound and being billed.', 'type' => 'string', 'example' => 'Creating', 'title' => ''], + 'NetworkType' => ['description' => 'The network type of the instance.'."\n" + ."\n" + .'> This field is returned only for instance groups with a standard network.', 'type' => 'string', 'example' => 'network_pro_ecd', 'title' => ''], + 'ImageVersion' => ['description' => 'The image version.', 'type' => 'string', 'example' => '25.09.2', 'title' => ''], + 'BindQosRules' => [ + 'description' => 'The public network bandwidth throttling rules for the instance group.', + 'type' => 'object', + 'properties' => [ + 'totalCount' => ['description' => 'The total number of public network bandwidth throttling rules for the instance group.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], + 'InstanceQosRule' => [ + 'description' => 'The public network bandwidth throttling rules bound to the instance.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-h3m8b5dusopp5****', 'title' => ''], + 'QosRuleId' => ['description' => 'The ID of the public network bandwidth throttling rule. This rule applies only to premium bandwidth.', 'type' => 'string', 'example' => 'qos-3kh93uu0vdbka****', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-j', 'title' => ''], + 'Tags' => [ + 'description' => 'The tag information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tag information.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'phone', 'title' => ''], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => '2025', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Channel' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'PackageId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'title' => '', + 'example' => '', ], - ], - 'OrderId' => [ - 'description' => 'The ID of the order.'."\n", - 'type' => 'string', - 'example' => '22326560487****', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"InstanceGroupIds\\": [\\n \\"ag-cuv4scs4obxch****\\"\\n ],\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', - 'title' => 'ModifyInstanceChargeType', - ], - 'UpdateInstanceImage' => [ - 'summary' => '更新实例镜像', - 'path' => '', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Query instance group details', + 'changeSet' => [ + ['createdAt' => '2025-09-29T09:53:37.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-08-22T08:01:59.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-03-14T11:00:47.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-12-05T14:41:29.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-07-24T09:34:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-07-02T02:05:34.000Z', 'description' => 'Response parameters changed'], ], - 'schemes' => [ - 'http', - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"TotalCount\\": 10,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****\\",\\n \\"InstanceGroupModel\\": [\\n {\\n \\"InstanceGroupId\\": \\"ag-h67a2cs0zprfdh****\\\\n\\",\\n \\"InstanceGroupName\\": \\"Cloud phoneA\\",\\n \\"InstanceGroupStatus\\": \\"RUNNING\\",\\n \\"InstanceGroupSpec\\": \\"acp.basic.small\\",\\n \\"InstanceGroupSpecDescribe\\": \\"ARM-2vCPU4GiB 32GiB\\",\\n \\"OfficeSiteId\\": \\"cn-shanghai+dir-030598****\\",\\n \\"ImageId\\": \\"imgc-06zyt9m93zwax****\\",\\n \\"NumberOfInstances\\": \\"10\\",\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"GmtCreate\\": \\"2024-02-01 10:56:36\\",\\n \\"GmtModified\\": \\"2024-02-01 10:56:36\\",\\n \\"SaleMode\\": \\"standard\\",\\n \\"InstalledAppList\\": \\"\\\\\\"抖音\\\\\\",\\\\\\"淘宝\\\\\\"\\",\\n \\"GmtExpired\\": \\"2027-06-29 07:25:31\\",\\n \\"AppInstanceGroupId\\": \\"aig-48xr63m4dybjk****\\",\\n \\"PolicyGroupId\\": \\"pg-c6n38xucps8kl****\\",\\n \\"VSwitchId\\": \\"vsw-t4n0yqs009ho024wt****\\",\\n \\"ResolutionHeight\\": 1280,\\n \\"ResolutionWidth\\": 720,\\n \\"SystemVersion\\": \\"Android 12\\",\\n \\"ArchitectureType\\": \\"ARM\\",\\n \\"Memory\\": 8,\\n \\"Cpu\\": \\"8\\",\\n \\"Disks\\": [\\n {\\n \\"DiskType\\": \\"SYSTEM\\",\\n \\"DiskSize\\": 32\\n }\\n ],\\n \\"ErrorCode\\": \\"InternalError\\",\\n \\"RenderingType\\": \\"CPU\\",\\n \\"AvailableInstanceAmount\\": 2,\\n \\"EnableIpv6\\": true,\\n \\"Ipv6Bandwidth\\": 50,\\n \\"BandwidthPackageId\\": \\"np-0q6ixs7vpxciz****\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageStatus\\": \\"Creating\\",\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"ImageVersion\\": \\"25.09.2\\",\\n \\"BindQosRules\\": {\\n \\"totalCount\\": 2,\\n \\"InstanceQosRule\\": [\\n {\\n \\"InstanceId\\": \\"acp-h3m8b5dusopp5****\\",\\n \\"QosRuleId\\": \\"qos-3kh93uu0vdbka****\\"\\n }\\n ]\\n },\\n \\"ZoneId\\": \\"cn-hangzhou-j\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"phone\\",\\n \\"Value\\": \\"2025\\"\\n }\\n ],\\n \\"Channel\\": \\"\\",\\n \\"PackageId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeAndroidInstances' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'high', + 'operationType' => 'none', + 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone3OZQF8', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneTVG3Y7'], ], 'parameters' => [ [ - 'name' => 'InstanceIdList', + 'name' => 'InstanceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-25nt4kk9whjh****', 'title' => ''], + ], + [ + 'name' => 'KeyPairId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the bound key pair.', 'type' => 'string', 'required' => false, 'example' => 'kp-5hh431emkpuoi****', 'title' => ''], + ], + [ + 'name' => 'AndroidInstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The list of instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-dvbhknfasf123****', - ], + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-25nt4kk9whhok****', 'title' => ''], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 1000, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ImageId', + 'name' => 'AndroidInstanceName', + 'in' => 'query', + 'schema' => ['description' => 'The instance name.', 'type' => 'string', 'required' => false, 'example' => 'name', 'title' => ''], + ], + [ + 'name' => 'Status', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The instance status.', + 'enumValueTitles' => [ + 'BACKUPING' => 'file backup in progress.', 'STARTING' => 'starting.', 'RUNNING' => 'available.', 'DELETING' => 'deleting.', 'BACKUP_FAILED' => 'file backup failed.', 'DELETED' => 'deleted.', 'FAILED' => 'creation failed.', 'STOPPED' => 'stopped.', 'RECOVERING' => 'file recovery in progress.', 'UNAVAILABLE' => 'abnormal.', + 'REBOOTING' => 'rebooting.', 'RESETTING' => 'resetting.', 'STOPPING' => 'stopping.', 'RECOVER_FAILED' => 'file recovery failed.', 'CREATING' => 'creating.', + ], 'type' => 'string', 'required' => false, - 'example' => 'imgc-075cllfeuazh0****', + 'example' => 'RUNNING', + 'title' => '', ], ], [ - 'name' => 'Reset', + 'name' => 'SaleMode', 'in' => 'query', 'schema' => [ - 'type' => 'boolean', + 'description' => 'The sales mode.', + 'enumValueTitles' => ['Instance' => 'cloud phone instance mode.', 'Node' => 'cloud phone matrix mode.'], + 'type' => 'string', + 'required' => false, + 'example' => 'Instance', + 'title' => '', ], ], [ - 'name' => 'IgnoreParamValidation', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', - ], + 'schema' => ['description' => 'The maximum number of entries per page for a paged query. Valid values: 1 to 100. Default value: 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The pagination token that indicates the position from which to start reading. Leave this parameter empty to start reading from the beginning.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****', 'title' => ''], + ], + [ + 'name' => 'InstanceGroupIds', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-1ljew7on6ay0j****', - ], - ], + 'description' => 'The list of instance group IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-25nt4kk9whhdh****', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\"\\n}","type":"json"}]', - ], - 'ExpandPhoneDataVolume' => [ - 'summary' => '扩容实例的独立机身存储', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'high', - 'chargeType' => 'paid', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneUQT9QO', + 'name' => 'InstanceGroupName', + 'in' => 'query', + 'schema' => ['description' => 'The instance group name.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], - ], - 'parameters' => [ [ - 'name' => 'BizRegionId', + 'name' => 'ChargeType', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The billing type.', + 'enumValueTitles' => ['PostPaid' => 'pay-as-you-go.', 'PrePaid' => 'subscription.'], 'type' => 'string', 'required' => false, - 'example' => 'cn-hangzhou', + 'example' => 'PostPaid', + 'title' => '', ], ], [ - 'name' => 'InstanceIds', + 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The tags of the resource.', 'type' => 'array', 'items' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'The tags of the resource.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'key', 'title' => ''], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'value', 'title' => ''], + ], 'required' => false, - 'example' => 'cpn-aw14zoevk6809****', + 'title' => '', + 'example' => '', ], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'PhoneDataVolume', + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~2807298~~) to query the list of regions that support purchasing cloud phones of different editions (Instance Edition/Matrix Edition).'."\n" + ."\n" + .'The region ID. You can call [DescribeRegions](~~2807298~~) to query the list of regions that support purchasing cloud phones..', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], + ], + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => ['description' => 'The matrix ID.'."\n" + .'This parameter is not publicly available..', 'type' => 'string', 'required' => false, 'example' => 'node_id', 'title' => ''], + ], + [ + 'name' => 'NodeName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the matrix.'."\n" + .'This parameter is not publicly available..', 'type' => 'string', 'required' => false, 'example' => 'node_name', 'title' => ''], + ], + [ + 'name' => 'OfficeSiteIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'The cloud phone network ID.', + 'type' => 'array', + 'items' => ['description' => 'The cloud phone network ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou+dir-744962****', 'title' => ''], 'required' => false, - 'example' => '10', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'AutoPay', + 'name' => 'AuthorizedUserId', + 'in' => 'query', + 'schema' => ['description' => 'The user ID assigned to the instance, which is the China Wuying convenience account ID.', 'type' => 'string', 'required' => false, 'example' => 'user', 'title' => ''], + ], + [ + 'name' => 'QosRuleIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'boolean', + 'description' => 'The public network rate limiting rule group ID. The rate limiting rule for instances in the basic shared network.', + 'type' => 'array', + 'items' => ['description' => 'The public network rate limiting rule group ID.', 'type' => 'string', 'required' => false, 'example' => 'qos-g6no280ed8byi****', 'title' => ''], 'required' => false, - 'example' => 'false', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'PromotionId', + 'name' => 'AppManagePolicyId', + 'in' => 'query', + 'schema' => ['description' => 'The application management policy ID.', 'type' => 'string', 'required' => false, 'example' => 'amp-shigvudbyeuib****', 'title' => ''], + ], + [ + 'name' => 'PrivateIpAddress', + 'in' => 'query', + 'schema' => ['description' => 'The private IP address of the instance.', 'type' => 'string', 'required' => false, 'example' => '10.0.162.136', 'title' => ''], + ], + [ + 'name' => 'SortKey', 'in' => 'query', 'schema' => [ + 'type' => 'string', + 'enum' => ['CreationTime', 'ExpiredTime'], 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'SortType', + 'in' => 'query', + 'schema' => [ 'type' => 'string', - 'required' => false, - 'example' => '50003308011****', + 'enum' => ['ASC', 'DESC'], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'InstanceVersion', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '', + 'title' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'DB070C80-45AC-52CA-8101-937C25DA****', - ], - 'OrderId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '223684716098****', + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****'], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'NextToken' => ['description' => 'The pagination token that indicates the position to which the current call has read. An empty value indicates that all data has been read.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kmma/xxE9WtwL/ADvZ****', 'title' => ''], + 'InstanceModel' => [ + 'description' => 'The instance information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The instance information.', + 'type' => 'object', + 'properties' => [ + 'AndroidInstanceGroupId' => ['description' => 'The ID of the instance group to which the instance belongs.', 'type' => 'string', 'example' => 'ag-ayyhomlal7po****', 'title' => ''], + 'AndroidInstanceGroupName' => ['description' => 'The instance group name.', 'type' => 'string', 'example' => 'AndroidInstanceGroupName', 'title' => ''], + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-8at8h6ejkadjh****', 'title' => ''], + 'AndroidInstanceName' => ['description' => 'The instance name.', 'type' => 'string', 'example' => 'name', 'title' => ''], + 'AndroidInstanceStatus' => ['description' => 'The instance status.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'NetworkInterfaceIp' => ['description' => 'The IP address of the network interface.', 'type' => 'string', 'example' => '192.168.22.48', 'title' => ''], + 'AuthorizedUserId' => ['description' => 'The assigned user.', 'type' => 'string', 'example' => 'test', 'title' => ''], + 'BindUserId' => ['description' => 'The bound user.', 'type' => 'string', 'example' => 'test', 'title' => ''], + 'PersistentAppInstanceId' => ['description' => 'The persistent session ID.', 'type' => 'string', 'example' => 'p-0btrd5zj8epo****', 'title' => ''], + 'AppInstanceId' => ['description' => 'The physical instance ID.', 'type' => 'string', 'example' => 'ai-9ey6io0q58rcd****', 'title' => ''], + 'KeyPairId' => ['description' => 'The key pair ID.', 'type' => 'string', 'example' => 'kp-5hh431emkpucs****', 'title' => ''], + 'GmtCreate' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2023-05-06 10:42:10', 'title' => ''], + 'GmtModified' => ['description' => 'The modification time.', 'type' => 'string', 'example' => '2023-05-06 10:42:10', 'title' => ''], + 'AppInstanceGroupId' => ['description' => 'The delivery group ID.', 'type' => 'string', 'example' => 'aig-i7yv6tkn7kh8dv****', 'title' => ''], + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'Rate' => ['description' => 'The progress of instance data backup or recovery.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'ErrorCode' => ['description' => 'The error reason for instance data backup failure or recovery failure.', 'type' => 'string', 'example' => 'FilePathNotFound', 'title' => ''], + 'RenderingType' => ['description' => 'The rendering type.', 'type' => 'string', 'example' => 'local', 'title' => ''], + 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'acp.basic.small', 'title' => ''], + 'ChargeType' => ['description' => 'The billing type of the instance.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''], + 'GmtExpired' => ['description' => 'The expiration time of the subscription instance group.', 'type' => 'string', 'example' => '2024-07-15T02:03:33Z', 'title' => ''], + 'PolicyGroupId' => ['description' => 'The policy group ID.', 'type' => 'string', 'example' => 'pg-0bszojpu0seql****', 'title' => ''], + 'OfficeSiteId' => ['description' => 'The network ID. This corresponds to the network selected during creation in the console (basic shared network or advanced shared network).', 'type' => 'string', 'example' => 'cn-shenzhen+dir-211620****', 'title' => ''], + 'VSwitchId' => ['description' => 'The vSwitch ID in the VPC.', 'type' => 'string', 'example' => 'vsw-2zepmau2hsbhos42****', 'title' => ''], + 'Memory' => ['description' => 'The memory size.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024', 'title' => ''], + 'Cpu' => ['description' => 'The number of CPU cores.', 'type' => 'string', 'example' => '4', 'title' => ''], + 'Disks' => [ + 'description' => 'The disk information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The disk information.', + 'type' => 'object', + 'properties' => [ + 'DiskType' => ['description' => 'The disk type.', 'type' => 'string', 'example' => 'SYSTEM', 'title' => ''], + 'DiskSize' => ['description' => 'The disk size. Unit: GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '32', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'Tags' => [ + 'description' => 'The list of tags.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tag information.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'key', 'title' => ''], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'value', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'ImageVersion' => ['description' => 'The image version.', 'type' => 'string', 'example' => '3.5.3.867', 'title' => ''], + 'PublicIpAddress' => ['description' => 'The public IP address.', 'type' => 'string', 'example' => '10.32.1.41', 'title' => ''], + 'SessionStatus' => [ + 'description' => 'The session connection status.', + 'enumValueTitles' => ['disConnect' => 'disconnected.', 'connect' => 'connected.'], + 'type' => 'string', + 'example' => 'connect', + 'title' => '', + ], + 'NetworkInterfaceIpv6Address' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], + 'PublicIpv6Address' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], + 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'example' => 'imgc-075cllfeuazh0****', 'title' => ''], + 'DisplayConfig' => [ + 'description' => 'The display settings.', + 'type' => 'object', + 'properties' => [ + 'ResolutionHeight' => ['description' => 'The height of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '1280', 'title' => ''], + 'ResolutionWidth' => ['description' => 'The width of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '720', 'title' => ''], + 'Dpi' => ['description' => 'DPI。', 'type' => 'integer', 'format' => 'int32', 'example' => '240', 'title' => ''], + 'Fps' => ['description' => 'The frame rate.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], + 'LockResolution' => [ + 'description' => 'Indicates whether the resolution is locked.', + 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], + 'type' => 'string', + 'example' => 'off', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'QosRuleId' => ['description' => 'The public network rate limiting rule ID (applies only to premium bandwidth).', 'type' => 'string', 'example' => 'qos-5605u0gelk200****', 'title' => ''], + 'AppManagePolicy' => [ + 'description' => 'The application management policy information. This corresponds to the blacklists and whitelists management of application management policies in the console.', + 'type' => 'object', + 'properties' => [ + 'AppManagePolicyId' => ['description' => 'The application management policy ID.', 'type' => 'string', 'example' => 'amp-dgiavcvibfdds****', 'title' => ''], + 'AppManagePolicyName' => ['description' => 'The name of the application management policy.', 'type' => 'string', 'example' => 'Application group 1', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'ZoneId' => ['description' => 'The zone ID to which the instance belongs.', 'type' => 'string', 'example' => 'cn-hangzhou-h', 'title' => ''], + 'PhoneDataInfo' => [ + 'description' => 'The independent device storage information of the cloud phone matrix edition instance.'."\n" + .'This parameter is not publicly available..', + 'type' => 'object', + 'properties' => [ + 'PhoneDataId' => ['description' => 'The independent device storage ID.', 'type' => 'string', 'example' => 'pd-sbcudgidbhb****', 'title' => ''], + 'PhoneDataVolume' => ['description' => 'The capacity of the independent device storage. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'StreamMode' => ['description' => 'The streaming mode of instances in the cloud phone matrix.'."\n" + .'This parameter is not publicly available..', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'NetworkType' => ['description' => 'The network type of the instance.', 'type' => 'string', 'example' => 'network_pro_ecd', 'title' => ''], + 'BandwidthPackageType' => ['description' => 'The bandwidth type.', 'type' => 'string', 'example' => 'cbwp_ecd', 'title' => ''], + 'BandwidthPackageId' => ['description' => 'The bandwidth package ID.', 'type' => 'string', 'example' => 'np-0q6ixs7vpxcizp***', 'title' => ''], + 'UpBandwidthLimit' => ['description' => 'The upstream bandwidth throttling. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], + 'DownBandwidthLimit' => ['description' => 'The downstream bandwidth throttling. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], + 'ServerType' => ['description' => 'The cloud phone matrix specification.'."\n" + .'This parameter is not publicly available..', 'type' => 'string', 'example' => 'cpm.gx7.10xlarge', 'title' => ''], + 'BizTags' => [ + 'description' => 'The tag array.', + 'type' => 'array', + 'items' => [ + 'description' => 'The tag object.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'releaseFlag', 'title' => ''], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'on', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + 'ServerStatus' => [ + 'description' => 'The matrix status.'."\n" + .'This parameter is not publicly available..', + 'enumValueTitles' => ['FAILED' => 'creation failed.', 'RUNNING' => 'available.', 'EXPIRED' => 'expired.', 'DELETING' => 'deleting.', 'NODE_READY' => 'matrix ready, instances being created.', 'CHANGING' => 'matrix specification change in progress.', 'CEASED' => 'overdue.', 'UPDATING' => 'image update in progress.', 'CREATING' => 'creating.', 'DATA_EXPANDING' => 'storage expansion in progress.'], + 'type' => 'string', + 'example' => 'RUNNING', + 'title' => '', + ], + 'SystemVersion' => ['description' => 'The Android system version.', 'type' => 'string', 'example' => 'Android 11', 'title' => ''], + 'InternetStatus' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'BizImageType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'Channel' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'PackageId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DB070C80-45AC-52CA-8101-937C25DA****\\",\\n \\"OrderId\\": \\"223684716098****\\"\\n}","type":"json"}]', + 'title' => 'Query instance details', + 'summary' => 'Queries the details of cloud phone instances.', + 'changeSet' => [ + ['createdAt' => '2025-09-12T08:38:03.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-08-22T08:01:59.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-08-01T11:31:58.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-07-25T15:04:47.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-07-15T07:46:27.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-07-15T05:15:08.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-06-28T12:53:31.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-06-27T10:23:27.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-05-31T09:41:39.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-05-23T10:38:25.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-05-14T13:01:38.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-04-17T12:56:36.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-04-10T13:59:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-04-03T10:00:32.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-03-14T09:57:38.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-02-17T09:52:46.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-22T12:26:49.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-01-16T07:59:35.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-03T10:01:01.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-12-20T03:04:10.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-20T02:37:07.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-09-26T12:10:00.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-08-19T09:49:56.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-07-24T09:34:56.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"TotalCount\\": 10,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kmma/xxE9WtwL/ADvZ****\\",\\n \\"InstanceModel\\": [\\n {\\n \\"AndroidInstanceGroupId\\": \\"ag-ayyhomlal7po****\\",\\n \\"AndroidInstanceGroupName\\": \\"AndroidInstanceGroupName\\",\\n \\"AndroidInstanceId\\": \\"acp-8at8h6ejkadjh****\\",\\n \\"AndroidInstanceName\\": \\"name\\",\\n \\"AndroidInstanceStatus\\": \\"RUNNING\\",\\n \\"NetworkInterfaceIp\\": \\"192.168.22.48\\",\\n \\"AuthorizedUserId\\": \\"test\\",\\n \\"BindUserId\\": \\"test\\",\\n \\"PersistentAppInstanceId\\": \\"p-0btrd5zj8epo****\\",\\n \\"AppInstanceId\\": \\"ai-9ey6io0q58rcd****\\",\\n \\"KeyPairId\\": \\"kp-5hh431emkpucs****\\",\\n \\"GmtCreate\\": \\"2023-05-06 10:42:10\\",\\n \\"GmtModified\\": \\"2023-05-06 10:42:10\\",\\n \\"AppInstanceGroupId\\": \\"aig-i7yv6tkn7kh8dv****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Rate\\": 100,\\n \\"ErrorCode\\": \\"FilePathNotFound\\",\\n \\"RenderingType\\": \\"local\\",\\n \\"InstanceType\\": \\"acp.basic.small\\",\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"GmtExpired\\": \\"2024-07-15T02:03:33Z\\",\\n \\"PolicyGroupId\\": \\"pg-0bszojpu0seql****\\",\\n \\"OfficeSiteId\\": \\"cn-shenzhen+dir-211620****\\",\\n \\"VSwitchId\\": \\"vsw-2zepmau2hsbhos42****\\",\\n \\"Memory\\": 1024,\\n \\"Cpu\\": \\"4\\",\\n \\"Disks\\": [\\n {\\n \\"DiskType\\": \\"SYSTEM\\",\\n \\"DiskSize\\": 32\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key\\",\\n \\"Value\\": \\"value\\"\\n }\\n ],\\n \\"ImageVersion\\": \\"3.5.3.867\\",\\n \\"PublicIpAddress\\": \\"10.32.1.41\\",\\n \\"SessionStatus\\": \\"connect\\",\\n \\"NetworkInterfaceIpv6Address\\": \\"null\\",\\n \\"PublicIpv6Address\\": \\"null\\",\\n \\"ImageId\\": \\"imgc-075cllfeuazh0****\\",\\n \\"DisplayConfig\\": {\\n \\"ResolutionHeight\\": 1280,\\n \\"ResolutionWidth\\": 720,\\n \\"Dpi\\": 240,\\n \\"Fps\\": 30,\\n \\"LockResolution\\": \\"off\\"\\n },\\n \\"QosRuleId\\": \\"qos-5605u0gelk200****\\",\\n \\"AppManagePolicy\\": {\\n \\"AppManagePolicyId\\": \\"amp-dgiavcvibfdds****\\",\\n \\"AppManagePolicyName\\": \\"Application group 1\\"\\n },\\n \\"ZoneId\\": \\"cn-hangzhou-h\\",\\n \\"PhoneDataInfo\\": {\\n \\"PhoneDataId\\": \\"pd-sbcudgidbhb****\\",\\n \\"PhoneDataVolume\\": 20\\n },\\n \\"StreamMode\\": 1,\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageId\\": \\"np-0q6ixs7vpxcizp***\\",\\n \\"UpBandwidthLimit\\": 5,\\n \\"DownBandwidthLimit\\": 30,\\n \\"ServerType\\": \\"cpm.gx7.10xlarge\\",\\n \\"BizTags\\": [\\n {\\n \\"Key\\": \\"releaseFlag\\",\\n \\"Value\\": \\"on\\"\\n }\\n ],\\n \\"ServerStatus\\": \\"RUNNING\\",\\n \\"SystemVersion\\": \\"Android 11\\",\\n \\"InternetStatus\\": \\"\\",\\n \\"BizImageType\\": \\"\\",\\n \\"Channel\\": \\"\\",\\n \\"PackageId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', ], - 'InstanceHealer' => [ - 'summary' => '实例诊断', - 'path' => '', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'DescribeApps' => [ + 'summary' => 'Queries applications.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'high', + 'operationType' => 'none', + 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneYYGTDB', - ], + 'abilityTreeNodes' => ['FEATUREcloudphone4KHDE1'], ], 'parameters' => [ [ - 'name' => 'InstanceIdList', + 'name' => 'AppIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The IDs of the applications.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-42do7k******-001', - ], - 'required' => true, + 'items' => ['description' => 'The ID of the application.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '1234'], + 'required' => false, 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'Timeout', + 'name' => 'AppName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the application.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'Application name'], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['type' => 'string', 'required' => false, 'description' => 'Region id.', 'title' => '', 'example' => 'cn-hangzhou'], + ], + [ + 'name' => 'Status', 'in' => 'query', 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', + 'description' => 'The status of the application.', + 'type' => 'string', 'required' => false, - 'example' => '30', + 'enumValueTitles' => ['FAILED' => 'The application failed to be created.', 'NORMAL' => 'The application is available.', 'CREATING' => 'The application is being created.'], + 'title' => '', + 'example' => 'NORMAL', ], ], [ - 'name' => 'Strategy', + 'name' => 'InstallationStatus', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The installation/uninstallation status of the application.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'- INSTALLFAILED: The application failed to be installed.'."\n" + ."\n" + .'- UNINSTALLING: The application is being uninstalled.'."\n" + ."\n" + .'- INSTALLING: The application is being installed.'."\n" + ."\n" + .'- UNINSTALLED: The application is uninstalled.'."\n" + ."\n" + .'- INSTALLED: The application is installed.'."\n" + ."\n" + .'- UNINSTALLFAILED: The application failed to be uninstalled.', 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'Clean' => '', - ], - 'example' => 'Clean', + 'enumValueTitles' => ['INSTALLFAILED' => '', 'UNINSTALLING' => '', 'INSTALLING' => '', 'UNINSTALLED' => '', 'INSTALLED' => '', 'UNINSTALLFAILED' => ''], + 'title' => '', + 'example' => 'INSTALLING', ], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****', - ], - 'InstanceHealerModel' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Result' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'True', - ], - ], - ], - ], - ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'title' => '', 'example' => '10'], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\",\\n \\"InstanceHealerModel\\": {\\n \\"Result\\": \\"True\\"\\n }\\n}","type":"json"}]', - ], - 'StartInstanceAdb' => [ - 'summary' => '开启实例ADB端口并创建端口转发条目', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneLYX9LP', + [ + 'name' => 'MD5', + 'in' => 'query', + 'schema' => ['type' => 'string', 'required' => false, 'description' => 'The value of MD5.', 'title' => '', 'example' => '009ee07fe13a29fa0c180ed0b6bc****'], ], - 'autoTest' => true, - ], - 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'AppType', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-5hh431emkt6u*****', - ], - 'required' => true, - 'maxItems' => 100, - ], + 'schema' => ['type' => 'string', 'description' => '> This parameter is for internal use now.', 'required' => false, 'title' => '', 'example' => '-'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => '', + 'title' => 'Schema of Response', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'CB95E410-FD1D-53C5-9F7D-93CC44D7****'], + 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'string', 'title' => '', 'example' => '10'], + 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.', 'type' => 'string', 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****'], + 'Data' => [ + 'description' => 'The objects that are returned.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AppName' => ['description' => 'The name of the application.', 'type' => 'string', 'title' => '', 'example' => 'testapp'], + 'AppId' => ['description' => 'The ID of the application.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10404'], + 'AndroidAppVersion' => ['description' => 'The version of the application.', 'type' => 'string', 'title' => '', 'example' => '1.0.0'], + 'IconUrl' => ['description' => 'The icon URL of the application.', 'type' => 'string', 'title' => '', 'example' => 'https://test.png'], + 'InstanceGroupList' => [ + 'description' => 'The list of instance groups where the application is installed.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the instance group where the application is installed.', 'type' => 'string', 'title' => '', 'example' => 'ag-fasf****'], + 'title' => '', + 'example' => '', + ], + 'GmtCreate' => ['description' => 'The time when the application was created.', 'type' => 'string', 'title' => '', 'example' => '2022-08-11 17:45:03'], + 'GmtModified' => ['description' => 'The time when the application was last modified.', 'type' => 'string', 'title' => '', 'example' => '2022-08-11 17:45:03'], + 'Description' => ['description' => 'The description of the application.', 'type' => 'string', 'title' => '', 'example' => 'CustomApp'], + 'Status' => [ + 'description' => 'The status of the application.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'- FAILED: The application failed to be created.'."\n" + ."\n" + .'- NORMAL: The application is available.'."\n" + ."\n" + .'- CREATING: The application is being created.', + 'type' => 'string', + 'enumValueTitles' => ['FAILED' => '', 'NORMAL' => '', 'CREATING' => ''], + 'title' => '', + 'example' => 'NORMAL', + ], + 'InstallationStatus' => [ + 'description' => 'The installation/uninstallation status of the application.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'- INSTALLFAILED: The application failed to be installed.'."\n" + ."\n" + .'- UNINSTALLING: The application is being uninstalled.'."\n" + ."\n" + .'- INSTALLING: The application is being installed.'."\n" + ."\n" + .'- UNINSTALLED: The application is uninstalled.'."\n" + ."\n" + .'- INSTALLED: The application is installed.'."\n" + ."\n" + .'- UNINSTALLFAILED: The application failed to be uninstalled.', + 'type' => 'string', + 'enumValueTitles' => ['INSTALLFAILED' => '', 'UNINSTALLING' => '', 'INSTALLING' => '', 'UNINSTALLED' => '', 'INSTALLED' => '', 'UNINSTALLFAILED' => ''], + 'title' => '', + 'example' => 'INSTALLING', + ], + 'BizRegionId' => ['type' => 'string', 'description' => 'Region id.', 'title' => '', 'example' => 'cn-hangzhou'], + 'PackageName' => ['type' => 'string', 'description' => 'The name of the application package.', 'title' => '', 'example' => 'com.example.chinalife'], + 'ApkSize' => ['type' => 'string', 'description' => 'Apk size.', 'title' => '', 'example' => '2.7'], + 'MD5' => ['type' => 'string', 'description' => 'The value of MD5.', 'title' => '', 'example' => '009ee07fe13a29fa0c180ed0b6bc****'], + 'AppType' => [ + 'type' => 'string', + 'description' => 'The application type.', + 'enumValueTitles' => ['Normal' => 'Standard application', 'System_Signature' => 'System-signed application'], + 'title' => '', + 'example' => 'Normal', + ], + ], + 'description' => 'The returned result object.', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - ], - 'StopInstanceAdb' => [ - 'summary' => '停止实例ADB端口并删除端口转发条目', - 'path' => '', - 'methods' => [ - 'post', - 'get', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB95E410-FD1D-53C5-9F7D-93CC44D7****\\",\\n \\"TotalCount\\": \\"10\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"Data\\": [\\n {\\n \\"AppName\\": \\"testapp\\",\\n \\"AppId\\": 10404,\\n \\"AndroidAppVersion\\": \\"1.0.0\\",\\n \\"IconUrl\\": \\"https://test.png\\",\\n \\"InstanceGroupList\\": [\\n \\"ag-fasf****\\"\\n ],\\n \\"GmtCreate\\": \\"2022-08-11 17:45:03\\",\\n \\"GmtModified\\": \\"2022-08-11 17:45:03\\",\\n \\"Description\\": \\"CustomApp\\",\\n \\"Status\\": \\"NORMAL\\",\\n \\"InstallationStatus\\": \\"INSTALLING\\",\\n \\"BizRegionId\\": \\"cn-hangzhou\\",\\n \\"PackageName\\": \\"com.example.chinalife\\",\\n \\"ApkSize\\": \\"2.7\\",\\n \\"MD5\\": \\"009ee07fe13a29fa0c180ed0b6bc****\\",\\n \\"AppType\\": \\"Normal\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeApps', + 'changeSet' => [ + ['createdAt' => '2025-04-11T01:45:19.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-12-17T03:35:22.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-10-16T06:49:24.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-06-26T12:41:04.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'translator' => 'manual', + ], + 'DescribeBackupFiles' => [ + 'summary' => 'Queries a list of backup files.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneLYX9LP', - ], - 'autoTest' => true, + 'abilityTreeNodes' => ['FEATUREcloudphoneMPR6T6'], ], 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'BackupFileId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-5hh4a31emkt6u****', - ], - 'required' => true, - 'maxItems' => 100, - ], + 'schema' => ['title' => '', 'description' => 'The backup file ID.', 'type' => 'string', 'required' => false, 'example' => 'bf-dxrh5jrv0zpb8****'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'PlainResult', - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******', - ], - ], - ], + [ + 'name' => 'BackupFileName', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The backup file name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'abc'], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\"\\n}","type":"json"}]', - ], - 'ListInstanceAdbAttributes' => [ - 'summary' => '查询ADB端口连接信息', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'InstanceGroupId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-fxdx91jsfyiy3****'], ], - ], - 'operationType' => 'read', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone89PVC7', + [ + 'name' => 'AndroidInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + ], + [ + 'name' => 'AndroidInstanceName', + 'in' => 'query', + 'schema' => ['description' => 'The instance name. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], ], - ], - 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => 'The description. Fuzzy match is supported.', 'type' => 'string', 'required' => false, 'example' => 'desc', 'title' => ''], + ], + [ + 'name' => 'StatusList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The list of backup file statuses.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'The backup file status.', + 'enumValueTitles' => ['AVAILABLE' => '可用', 'BACKUPING' => '备份中', 'RECOVERING' => '恢复中', 'DELETING' => '删除中', 'BACKUP_FAILED' => '备份失败', 'RECOVERY_FAILED' => '恢复失败', 'PART_BACKUP_FINISHED' => '部分备份成功'], 'type' => 'string', 'required' => false, - 'example' => 'acp-5hh431emkt6u*****', + 'example' => 'AVAILABLE', + 'title' => '', ], 'required' => false, 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ExternalIp', + 'name' => 'StartTime', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '106.38.188.223', - ], + 'schema' => ['description' => 'Queries backup files created after the specified time.', 'type' => 'string', 'required' => false, 'example' => '2024-05-23 10:00:00', 'title' => ''], ], [ - 'name' => 'InternalIp', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '10.0.3.23', - ], + 'schema' => ['description' => 'Queries backup files created before the specified time.', 'type' => 'string', 'required' => false, 'example' => '2024-05-20 10:00:00', 'title' => ''], ], [ - 'name' => 'InternalPort', + 'name' => 'EndUserId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '5555', - ], + 'schema' => ['description' => 'The owner of the backup file.', 'type' => 'string', 'required' => false, 'example' => 'test1', 'title' => ''], ], [ - 'name' => 'IpProtocol', + 'name' => 'BackupAll', 'in' => 'query', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'Specifies whether to perform a full device backup.', + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'type' => 'boolean', 'required' => false, - 'example' => 'TCP', + 'example' => 'false', + 'title' => '', ], ], [ 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '0', - 'example' => '20', - 'default' => '20', - ], + 'schema' => ['description' => 'The maximum number of entries per page for a paged query. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'maximum' => '100', 'minimum' => '0', 'default' => '20', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], + 'schema' => ['description' => 'The pagination token that indicates the position from which to start reading. Leave this parameter empty to start reading from the beginning.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', 'title' => ''], + ], + [ + 'name' => 'SaleMode', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => '', + 'title' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'Data' => [ - 'description' => '', + 'description' => 'The list of returned result objects.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'The returned result object.', 'type' => 'object', 'properties' => [ - 'GmtCreated' => [ - 'description' => '', - 'type' => 'string', - 'example' => '2024-05-15 17:33:59', - ], - 'GmtModified' => [ - 'description' => '', - 'type' => 'string', - 'example' => '2024-05-15 17:33:59', - ], - 'InstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-uto81vfd8t8z****', - ], - 'ExternalIp' => [ - 'description' => '', - 'type' => 'string', - 'example' => '183.201.219.157', - ], - 'ExternalPort' => [ - 'description' => '', + 'GmtCreated' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2024-05-15 17:33:59', 'title' => ''], + 'GmtModified' => ['description' => 'The modification time.', 'type' => 'string', 'example' => '2024-05-15 17:33:59', 'title' => ''], + 'BackupFileId' => ['description' => 'The backup file ID.', 'type' => 'string', 'example' => 'bf-b0qbg3pbpjkn7****', 'title' => ''], + 'BackupFileName' => ['description' => 'The backup file name.', 'type' => 'string', 'example' => 'a-58ftsoo90p0qa****.ab', 'title' => ''], + 'InstanceGroupId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'ag-58ftsoo90p0qi****', 'title' => ''], + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'AndroidInstanceName' => ['description' => 'The instance name.', 'type' => 'string', 'example' => 'Test cloud phone', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-bp67acfmxazb4p****', 'title' => ''], + 'EndUserId' => ['description' => 'The owner of the backup file.', 'type' => 'string', 'example' => 'test', 'title' => ''], + 'Status' => [ + 'description' => 'The backup file status.', + 'enumValueTitles' => ['AVAILABLE' => 'Available.', 'RECOVERING' => 'Recovering.'], 'type' => 'string', - 'example' => '14840/14849', + 'example' => 'AVAILABLE', + 'title' => '', ], - 'InternalIp' => [ - 'description' => '', - 'type' => 'string', - 'example' => '10.0.0.239', + 'SourceFilePathList' => [ + 'description' => 'The list of source backup file directories.', + 'type' => 'array', + 'items' => ['description' => 'The source backup file directory.', 'type' => 'string', 'example' => '/data/media', 'title' => ''], + 'title' => '', + 'example' => '', ], - 'InternalPort' => [ - 'description' => '', - 'type' => 'string', - 'example' => '5555/5555', + 'SourceAppInfoList' => [ + 'description' => 'The list of backed-up application package names.', + 'type' => 'array', + 'items' => ['description' => 'The backed-up application package name.', 'type' => 'string', 'example' => 'com.example.xhs', 'title' => ''], + 'title' => '', + 'example' => '', ], - 'IpProtocol' => [ - 'description' => '', + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'FileSize' => ['description' => 'The total size of the source backup files.', 'type' => 'integer', 'format' => 'int64', 'example' => '10227168', 'title' => ''], + 'UploadType' => [ + 'description' => 'The backup type.', + 'enumValueTitles' => ['OSS' => 'The backup file is stored in an OSS bucket.'], 'type' => 'string', - 'example' => 'TCP', - ], + 'example' => 'OSS', + 'title' => '', + ], + 'UploadEndpoint' => ['description' => 'The domain name of the upload endpoint.', 'type' => 'string', 'example' => 'oss-cn-hangzhou.aliyuncs.com', 'title' => ''], + 'BackupFilePath' => ['description' => 'The directory where the backup file is stored.', 'type' => 'string', 'example' => 'oss://cloudphone-saved-bucket-cn-shanghai/backup/aic-58ftsoo90p0qa****.ab', 'title' => ''], + 'Description' => ['description' => 'The description of the backup file.', 'type' => 'string', 'example' => 'Backup file for /data/media directory.', 'title' => ''], + 'BackupAll' => ['description' => 'Specifies whether to perform a full device backup.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], + 'SystemVersion' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'Channel' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'TotalCount' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10', - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'CB95E410-FD1D-53C5-9F7D-93CC44D7****', - ], - 'NextToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], - 'MaxResults' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], + 'RequestId' => ['description' => 'The request ID. If you encounter an issue, provide this request ID for troubleshooting.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], + 'NextToken' => ['description' => 'The pagination token that indicates the position up to which data has been read in the current call. An empty value indicates that all data has been read.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', 'title' => ''], + 'MaxResults' => ['description' => 'The maximum number of entries returned in this call.', 'type' => 'string', 'example' => '10', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '91', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Query backup files', + 'description' => 'Currently, only backup files generated by cloud phones can be stored in Object Storage Service (OSS).', + 'changeSet' => [ + ['createdAt' => '2025-09-12T04:58:32.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-03T11:17:53.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-11-14T10:59:55.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreated\\": \\"2024-05-15 17:33:59\\",\\n \\"GmtModified\\": \\"2024-05-15 17:33:59\\",\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"ExternalIp\\": \\"183.201.219.157\\",\\n \\"ExternalPort\\": \\"14840/14849\\",\\n \\"InternalIp\\": \\"10.0.0.239\\",\\n \\"InternalPort\\": \\"5555/5555\\",\\n \\"IpProtocol\\": \\"TCP\\"\\n }\\n ],\\n \\"TotalCount\\": 10,\\n \\"RequestId\\": \\"CB95E410-FD1D-53C5-9F7D-93CC44D7****\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MaxResults\\": 100\\n}","type":"json"}]', + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreated\\": \\"2024-05-15 17:33:59\\",\\n \\"GmtModified\\": \\"2024-05-15 17:33:59\\",\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"a-58ftsoo90p0qa****.ab\\",\\n \\"InstanceGroupId\\": \\"ag-58ftsoo90p0qi****\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"AndroidInstanceName\\": \\"Test cloud phone\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\",\\n \\"EndUserId\\": \\"test\\",\\n \\"Status\\": \\"AVAILABLE\\",\\n \\"SourceFilePathList\\": [\\n \\"/data/media\\"\\n ],\\n \\"SourceAppInfoList\\": [\\n \\"com.example.xhs\\"\\n ],\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"FileSize\\": 10227168,\\n \\"UploadType\\": \\"OSS\\",\\n \\"UploadEndpoint\\": \\"oss-cn-hangzhou.aliyuncs.com\\",\\n \\"BackupFilePath\\": \\"oss://cloudphone-saved-bucket-cn-shanghai/backup/aic-58ftsoo90p0qa****.ab\\",\\n \\"Description\\": \\"Backup file for /data/media directory.\\",\\n \\"BackupAll\\": false,\\n \\"SystemVersion\\": \\"\\",\\n \\"Channel\\": \\"\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"MaxResults\\": \\"10\\",\\n \\"TotalCount\\": 91\\n}","type":"json"}]', ], - 'BatchGetAcpConnectionTicket' => [ - 'summary' => 'Retrieves connection tickets in batch.', - 'methods' => [ - 'get', - 'post', + 'DescribeBuckets' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneMPR6T6'], + ], + 'parameters' => [ + [ + 'name' => 'FileType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the OSS file.'."\n" + ."\n" + .'> This parameter is not yet available.', + 'enumValueTitles' => [], + 'type' => 'string', + 'enum' => ['FILE', 'DIR'], + 'required' => false, + 'example' => 'docx', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'GmtCreated' => ['description' => 'The time when the bucket was created.', 'type' => 'string', 'example' => '2024-05-15 17:33:59', 'title' => ''], + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'BucketName' => ['description' => 'The name of the bucket.', 'type' => 'string', 'example' => 'zydctest', 'title' => ''], + 'ExtranetEndpoint' => ['description' => 'The public endpoint that is used to access the bucket.', 'type' => 'string', 'example' => 'oss-cn-hangzhou.aliyuncs.com', 'title' => ''], + 'IntranetEndpoint' => ['description' => 'The internal endpoint that is used by a same-region ECS instance to access the bucket.', 'type' => 'string', 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com'."\n" + ."\n", 'title' => ''], + 'Location' => ['description' => 'The storage path, such as a path in Hadoop Distributed File System (HDFS) or OSS.', 'type' => 'string', 'example' => 'center', 'title' => ''], + 'OssObjectList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'BucketName' => ['description' => 'The name of the bucket.', 'type' => 'string', 'example' => 'tf-testacceu-central-1ensbucketlifecycle44222', 'title' => ''], + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'con', 'title' => ''], + 'ETag' => ['description' => 'The Entity Tag (ETag) is created when an object is generated. It is used to identify the content of an object.'."\n" + ."\n" + .'- For an object created by a PutObject request, the ETag value is the MD5 hash of the object content.'."\n" + ."\n" + .'- For an object created by other methods, the ETag value is a unique value generated based on specific calculation rules. It is not the MD5 hash of the object content.'."\n" + ."\n" + .'- The ETag value can be used to check if the object content has changed. Do not use the ETag value as the MD5 hash to verify the data integrity of the object.', 'type' => 'string', 'example' => '5B3C1A2E053D763E1B002CC607C5A0FE1****'."\n" + ."\n", 'title' => ''], + 'Size' => ['description' => 'The size of the file. Unit: KB.', 'type' => 'integer', 'format' => 'int64', 'example' => '9', 'title' => ''], + 'LastModified' => ['description' => 'The time when the object was last modified.', 'type' => 'string', 'example' => '2012-02-24T08:42:32.000Z', 'title' => ''], + 'StorageClass' => ['description' => 'The storage class of the bucket. Valid values:'."\n" + ."\n" + .'- Standard (default): Standard'."\n" + ."\n" + .'- IA: Infrequent Access'."\n" + ."\n" + .'- Archive: Archive Storage'."\n" + ."\n" + .'- ColdArchive: Cold Archive'."\n" + ."\n" + .'- DeepColdArchive: Deep Cold Archive', 'type' => 'string', 'example' => 'ARCHIVE', 'title' => ''], + 'Owner' => [ + 'type' => 'object', + 'properties' => [ + 'DisplayName' => ['description' => 'The name of the bucket owner.', 'type' => 'string', 'example' => '佳钰', 'title' => ''], + 'Id' => ['description' => 'The unique identifier of the bucket owner.', 'type' => 'string', 'example' => '395', 'title' => ''], + ], + 'description' => 'The information about the bucket owner.', + 'title' => '', + 'example' => '', + ], + 'Type' => ['description' => 'The type of the trigger method.', 'type' => 'string', 'example' => 'InstanceGroup', 'title' => ''], + 'RestoreInfo' => ['description' => 'The information about database recovery if the database type is MSSQL. The value is a JSON string that contains the following parameters:'."\n" + ."\n" + .'- **name**: The name of the database.'."\n" + ."\n" + .'- **files**: The path of the database file.', 'type' => 'string', 'example' => 'ongoing-request="true"', 'title' => ''], + ], + 'description' => 'The information about the objects in the bucket.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The information about the objects in the bucket.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The returned result object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The returned result object.', + 'title' => '', + 'example' => '', + ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], + 'Success' => ['description' => 'The result of the request.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], + 'Code' => ['description' => 'The error code.'."\n" + ."\n" + .'> This parameter is returned only when the call fails.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + 'HttpStatusCode' => ['description' => 'The return status code of the request.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], + ], + 'title' => '', + 'description' => 'The response elements.', + 'example' => '', + ], + ], ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeBuckets', + 'summary' => 'Queries information about buckets. This operation returns only the buckets whose names start with `cloudphone-saved-bucket-`.', + 'description' => 'Currently, you can save backup files generated by Cloud Phone only to Object Storage Service (OSS).', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreated\\": \\"2024-05-15 17:33:59\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"BucketName\\": \\"zydctest\\",\\n \\"ExtranetEndpoint\\": \\"oss-cn-hangzhou.aliyuncs.com\\",\\n \\"IntranetEndpoint\\": \\"oss-cn-hangzhou-internal.aliyuncs.com\\\\n\\\\n\\",\\n \\"Location\\": \\"center\\",\\n \\"OssObjectList\\": [\\n {\\n \\"BucketName\\": \\"tf-testacceu-central-1ensbucketlifecycle44222\\",\\n \\"Key\\": \\"con\\",\\n \\"ETag\\": \\"5B3C1A2E053D763E1B002CC607C5A0FE1****\\\\n\\\\n\\",\\n \\"Size\\": 9,\\n \\"LastModified\\": \\"2012-02-24T08:42:32.000Z\\",\\n \\"StorageClass\\": \\"ARCHIVE\\",\\n \\"Owner\\": {\\n \\"DisplayName\\": \\"佳钰\\",\\n \\"Id\\": \\"395\\"\\n },\\n \\"Type\\": \\"InstanceGroup\\",\\n \\"RestoreInfo\\": \\"ongoing-request=\\\\\\"true\\\\\\"\\"\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\",\\n \\"HttpStatusCode\\": 200\\n}","type":"json"}]', + ], + 'DescribeCloudPhoneNodes' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -5809,86 +4952,128 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMEHI4H', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneTVG3Y7'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'InstanceGroupId', + 'name' => 'BizRegionId', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the instance group.'."\n", + 'description' => 'The region ID.', + 'enumValueTitles' => ['cn-shanghai' => 'China (Shanghai)', 'ap-southeast-1' => 'Singapore', 'eu-central-1' => 'Germany (Frankfurt)', 'cn-hangzhou' => 'China (Hangzhou)'], 'type' => 'string', 'required' => false, - 'example' => 'ag-25nt4kk9whjh****', + 'example' => 'cn-hangzhou', + 'title' => '', ], ], [ - 'name' => 'InstanceIds', + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of entries to return on each page for a paged query. The maximum value is 100. The default value is 20.', 'type' => 'string', 'required' => false, 'example' => '20', 'title' => ''], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The token for the next query. If a query does not return all results, NextToken is not empty. Use the returned NextToken in your next query to continue.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', 'title' => ''], + ], + [ + 'name' => 'NodeIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. You can specify 1 to 100 IDs of cloud phone instances.'."\n", + 'description' => 'A list of Cloud Phone matrix IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-bj9t2gmys****', - ], + 'items' => ['description' => 'A Cloud Phone matrix ID.', 'type' => 'string', 'required' => false, 'example' => 'cpn-192c32356ft1ov1m****', 'title' => ''], 'required' => false, 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'EndUserId', + 'name' => 'NodeName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the Cloud Phone matrix.', 'type' => 'string', 'required' => false, 'example' => 'node_name', 'title' => ''], + ], + [ + 'name' => 'Status', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the user to whom the cloud phone instance is assigned.'."\n", + 'description' => 'The status of the Cloud Phone matrix.', + 'enumValueTitles' => ['FAILED' => 'The matrix failed to be created.', 'RUNNING' => 'Active.', 'DELETING' => 'The matrix is being deleted.', 'NODE_READY' => 'The node is ready and instances are being created.', 'DELETED' => 'The matrix is deleted.', 'CREATING' => 'The matrix is being created.'], 'type' => 'string', 'required' => false, - 'example' => 'user', + 'example' => 'CREATING', + 'title' => '', ], ], [ - 'name' => 'ConnectionMode', + 'name' => 'ServerType', 'in' => 'query', 'schema' => [ + 'description' => 'The instance type of the Cloud Phone matrix.', + 'enumValueTitles' => ['cpm.gn6.gx1' => 'cpm.gn6.gx1'], 'type' => 'string', + 'required' => false, + 'example' => 'cpm.gx7.10xlarge', + 'title' => '', ], ], [ - 'name' => 'InstanceTasks', + 'name' => 'ChargeType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The billing method. Only the subscription billing method is supported.', + 'enumValueTitles' => ['PrePaid' => 'Subscription.'], + 'type' => 'string', + 'required' => false, + 'example' => 'PrePaid', + 'title' => '', + ], + ], + [ + 'name' => 'BandwidthPackageId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the bandwidth plan instance.', 'type' => 'string', 'required' => false, 'example' => 'cbwp-bp17psa7fhxqmm*****', 'title' => ''], + ], + [ + 'name' => 'NodeNameList', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'type' => 'array', + 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'maxItems' => 100, + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'Tags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The instance connection tasks.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'The instance connection task.'."\n", 'type' => 'object', - 'properties' => [ - 'InstanceId' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-fkuit0cmyfvzz****', - ], - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou@c9f5c2e8-f5c4-4b01-8602-000cae94****', - ], + 'properties' => [ + 'Key' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'Value' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], - 'required' => false, + 'description' => '', + 'title' => '', + 'example' => '', ], - 'required' => false, 'maxItems' => 100, + 'description' => '', + 'title' => '', + 'example' => '', ], ], ], @@ -5896,87 +5081,142 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The request information.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****', - ], - 'InstanceConnectionModels' => [ - 'description' => 'The results of the instance connection tasks.'."\n", + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****'], + 'NodeModel' => [ + 'description' => 'The details of the Cloud Phone matrices.', 'type' => 'array', 'items' => [ - 'description' => 'The result of the instance connection task.'."\n", 'type' => 'object', 'properties' => [ - 'AppInstanceGroupId' => [ - 'description' => 'The ID of the delivery group.'."\n", - 'type' => 'string', - 'example' => 'aig-1uzb6heg797z3****', - ], - 'InstanceId' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'acp-ajxvwo1u0hqvd****', - ], - 'TaskStatus' => [ - 'description' => 'The state of the task.'."\n", - 'type' => 'string', - 'example' => 'FINISHED', - ], - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou@c9f5c2e8-f5c4-4b01-8602-000cae94****', - ], - 'Ticket' => [ - 'description' => 'The ticket used to connect to the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'piVE58_AdmVSVW7SEW3*AE5*p8mmO5gvItsNOmv4S_f_cNpoU_BOTwChTBoNM1ZJeedfK9zxYnbN5hossqIZCr6t7SGxRigm2Cb4fGaCdBZWIzmgdHq6sXXZQg4KFWufyvpeV*0*Cm58slMT1tJw3****', - ], - 'ErrorCode' => [ - 'type' => 'string', + 'Status' => ['description' => 'The status of the Cloud Phone matrix.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'ServerType' => ['description' => 'The instance type of the Cloud Phone matrix.', 'type' => 'string', 'example' => 'cpm.gx7.10xlarge', 'title' => ''], + 'ResolutionWidth' => ['description' => 'The width of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '720', 'title' => ''], + 'NodeName' => ['description' => 'The name of the Cloud Phone matrix.', 'type' => 'string', 'example' => 'node_name', 'title' => ''], + 'Memory' => ['description' => 'The memory size. Unit: GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '32', 'title' => ''], + 'VSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'example' => 'vsw-2zeekryyc1q3sm72l****', 'title' => ''], + 'GmtModified' => ['description' => 'The last modification time.', 'type' => 'string', 'example' => '2025-02-13 02:03:14', 'title' => ''], + 'Cpu' => ['description' => 'The number of CPU cores.', 'type' => 'string', 'example' => '2', 'title' => ''], + 'ResolutionHeight' => ['description' => 'The height of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '1280', 'title' => ''], + 'NetworkId' => ['description' => 'The network ID.', 'type' => 'string', 'example' => 'cn-hangzhou+dir-5mwr9azebliva****', 'title' => ''], + 'GmtExpired' => ['description' => 'The expiration time of the subscription-based matrix.', 'type' => 'string', 'example' => '2025-03-09 02:00:34', 'title' => ''], + 'PhoneCount' => ['description' => 'The number of instances in the Cloud Phone matrix.', 'type' => 'integer', 'format' => 'int32', 'example' => '25', 'title' => ''], + 'GmtCreate' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2024-11-13 02:03:14', 'title' => ''], + 'ChargeType' => ['description' => 'The billing method.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''], + 'NodeId' => ['description' => 'The Cloud Phone matrix ID.', 'type' => 'string', 'example' => 'cpn-ehs0yoedq8ntm****', 'title' => ''], + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ac.max', 'title' => ''], + 'ShareDataVolume' => ['description' => 'The size of the shared phone storage. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'PhoneDataInfo' => [ + 'type' => 'object', + 'properties' => [ + 'PhoneDataId' => ['description' => 'The ID of the independent phone storage.', 'type' => 'string', 'example' => 'pd-dhusabisshj****', 'title' => ''], + 'PhoneDataVolume' => ['description' => 'The size of the independent phone storage. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], + ], + 'description' => 'The information about the independent phone storage.', + 'title' => '', + 'example' => '', ], - 'PersistentAppInstanceId' => [ - 'type' => 'string', + 'NetworkInfos' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'VSwitchId' => ['description' => 'The ID of the vSwitch in the virtual private cloud (VPC).', 'type' => 'string', 'example' => 'vsw-j6cjgev6fv3ftw4f0****', 'title' => ''], + 'NetworkId' => ['description' => 'The network ID.', 'type' => 'string', 'example' => 'cn-hangzhou+dir-avcuocx9805oq****', 'title' => ''], + 'NetworkType' => ['description' => 'The network type of the instance.', 'type' => 'string', 'example' => 'network_pro_ecd', 'title' => ''], + 'BandwidthPackageType' => ['description' => 'The bandwidth type.', 'type' => 'string', 'example' => 'cbwp_ecd', 'title' => ''], + 'BandwidthPackageId' => ['description' => 'The ID of the bandwidth plan instance.', 'type' => 'string', 'example' => 'cbwp-hn3tj409amvamz8mf****', 'title' => ''], + ], + 'description' => 'The network information.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The network information.', + 'title' => '', + 'example' => '', ], - 'AppInstanceId' => [ - 'type' => 'string', + 'NetworkType' => ['description' => 'The network type of the instance.', 'type' => 'string', 'example' => 'network_pro_ecd', 'title' => ''], + 'BandwidthPackageType' => ['description' => 'The bandwidth type.', 'type' => 'string', 'example' => 'cbwp_ecd', 'title' => ''], + 'BandwidthPackageId' => ['description' => 'The ID of the bandwidth plan.', 'type' => 'string', 'example' => 'cbwp-7xvrl7axet2qg6yia******', 'title' => ''], + 'BizTags' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'keyname', 'title' => ''], + 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'valuename', 'title' => ''], + ], + 'description' => 'A tag object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'An array of tag information.', + 'title' => '', + 'example' => '', ], - 'Port' => [ - 'type' => 'integer', - 'format' => 'int32', + 'BandwidthPackageStatus' => ['description' => 'The status of the bandwidth plan: 0 indicates initializing, 1 indicates normal, and 2 indicates deleted.', 'type' => 'string', 'example' => '1', 'title' => ''], + 'SwapSize' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], + 'Tags' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'Value' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'description' => 'The details of the Cloud Phone matrix.', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '31', 'title' => ''], + 'NextToken' => ['description' => 'The token used to start the next query. Valid values:'."\n" + ."\n" + .'- If **NextToken** is empty, there are no more results.'."\n" + ."\n" + .'- If **NextToken** has a value, it indicates the token for the next query.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', 'title' => ''], + 'MaxResults' => ['description' => 'The maximum number of entries returned on each page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\",\\n \\"InstanceConnectionModels\\": [\\n {\\n \\"AppInstanceGroupId\\": \\"aig-1uzb6heg797z3****\\",\\n \\"InstanceId\\": \\"acp-ajxvwo1u0hqvd****\\",\\n \\"TaskStatus\\": \\"FINISHED\\",\\n \\"TaskId\\": \\"cn-hangzhou@c9f5c2e8-f5c4-4b01-8602-000cae94****\\",\\n \\"Ticket\\": \\"piVE58_AdmVSVW7SEW3*AE5*p8mmO5gvItsNOmv4S_f_cNpoU_BOTwChTBoNM1ZJeedfK9zxYnbN5hossqIZCr6t7SGxRigm2Cb4fGaCdBZWIzmgdHq6sXXZQg4KFWufyvpeV*0*Cm58slMT1tJw3****\\",\\n \\"ErrorCode\\": \\"InvalidResourceId.NotFound\\",\\n \\"PersistentAppInstanceId\\": \\"p-abdywvcksdb****\\",\\n \\"AppInstanceId\\": \\"ai-0caoetkqi8kj****\\",\\n \\"Port\\": 10000\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'BatchGetAcpConnectionTicket', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeCloudPhoneNodes', + 'summary' => 'Queries the details of Cloud Phone matrices.'."\n" + .'In the Cloud Phone service, a matrix (Cloud Phone Server) is a logical resource management unit that represents a physical server instance. This physical server can be partitioned into multiple independent Cloud Phone instances that share the underlying computing, storage, and network resources of the matrix. Creating a matrix is equivalent to provisioning a physical server on which you can create Cloud Phone instances. The number of instances that you can create varies depending on the configuration.', + 'changeSet' => [ + ['createdAt' => '2025-08-08T09:54:31.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-07-25T15:04:47.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-07-15T07:46:27.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-06-27T10:23:26.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-05-31T09:41:39.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-04-03T09:48:53.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\",\\n \\"NodeModel\\": [\\n {\\n \\"Status\\": \\"RUNNING\\",\\n \\"ServerType\\": \\"cpm.gx7.10xlarge\\",\\n \\"ResolutionWidth\\": 720,\\n \\"NodeName\\": \\"node_name\\",\\n \\"Memory\\": 32,\\n \\"VSwitchId\\": \\"vsw-2zeekryyc1q3sm72l****\\",\\n \\"GmtModified\\": \\"2025-02-13 02:03:14\\",\\n \\"Cpu\\": \\"2\\",\\n \\"ResolutionHeight\\": 1280,\\n \\"NetworkId\\": \\"cn-hangzhou+dir-5mwr9azebliva****\\",\\n \\"GmtExpired\\": \\"2025-03-09 02:00:34\\",\\n \\"PhoneCount\\": 25,\\n \\"GmtCreate\\": \\"2024-11-13 02:03:14\\",\\n \\"ChargeType\\": \\"PrePaid\\",\\n \\"NodeId\\": \\"cpn-ehs0yoedq8ntm****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceType\\": \\"ac.max\\",\\n \\"ShareDataVolume\\": 100,\\n \\"PhoneDataInfo\\": {\\n \\"PhoneDataId\\": \\"pd-dhusabisshj****\\",\\n \\"PhoneDataVolume\\": 20\\n },\\n \\"NetworkInfos\\": [\\n {\\n \\"VSwitchId\\": \\"vsw-j6cjgev6fv3ftw4f0****\\",\\n \\"NetworkId\\": \\"cn-hangzhou+dir-avcuocx9805oq****\\",\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageId\\": \\"cbwp-hn3tj409amvamz8mf****\\"\\n }\\n ],\\n \\"NetworkType\\": \\"network_pro_ecd\\",\\n \\"BandwidthPackageType\\": \\"cbwp_ecd\\",\\n \\"BandwidthPackageId\\": \\"cbwp-7xvrl7axet2qg6yia******\\",\\n \\"BizTags\\": [\\n {\\n \\"Key\\": \\"keyname\\",\\n \\"Value\\": \\"valuename\\"\\n }\\n ],\\n \\"BandwidthPackageStatus\\": \\"1\\",\\n \\"SwapSize\\": 0,\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Value\\": \\"\\"\\n }\\n ]\\n }\\n ],\\n \\"TotalCount\\": 31,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MaxResults\\": 20\\n}","type":"json"}]', ], - 'DisconnectAndroidInstance' => [ - 'summary' => '实例断开连接', + 'DescribeCreditDetail' => [ + 'summary' => 'Queries all change records of credits.', 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -5985,839 +5225,686 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMEHI4H', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], + 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'PageNum', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-5hh4a31emkt6u****', - 'pattern' => '^[^\';<>=|\\(\\)]+$', - ], - 'required' => false, - 'maxItems' => 100, - ], + 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'EndUserId', + 'name' => 'PageSize', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****', - ], - ], - ], - ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\"\\n}","type":"json"}]', - ], - 'RunCommand' => [ - 'summary' => 'Executes a command on a cloud phone instance.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneYYGTDB', + 'schema' => ['description' => 'The number of entries per page.', 'type' => 'string', 'required' => false, 'example' => '20', 'title' => ''], ], - ], - 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'StartTime', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. You can specify a maximum of 50 cloud phone instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-7b15ex96****', - ], - 'required' => false, - 'maxItems' => 1000, - 'minItems' => 1, - ], + 'schema' => ['description' => 'The start time.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1782819840000', 'title' => ''], ], [ - 'name' => 'CommandContent', + 'name' => 'EndTime', 'in' => 'query', - 'schema' => [ - 'description' => 'The content of the command.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ls', - ], + 'schema' => ['description' => 'The end time.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1782906240000', 'title' => ''], ], [ - 'name' => 'Timeout', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The timeout period of the command execution. If the command execution exceeds the timeout period, it will be considered timed out. If you leave this parameter empty, it defaults to 60.'."\n", - 'type' => 'integer', - 'format' => 'int64', + 'description' => 'The list of instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh4a31emkt6u****', 'title' => ''], 'required' => false, - 'example' => '60', - ], - ], - [ - 'name' => 'AgentType', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ContentEncoding', + 'name' => 'PackageIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The encoding method of the command content (`CommandContent`). The value is not case-sensitive.'."\n" - ."\n" - .'> If you set the value to an invalid encoding method, the system will process the command content as `PlainText`.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Base64: encodes the command content in Base64.'."\n" - .'* PlainText (default): does not encode the command content. The command content is input as plain text.'."\n", - 'type' => 'string', + 'description' => 'The list of resource plan or credit booster pack IDs.', + 'type' => 'array', + 'items' => ['description' => 'The resource plan or credit booster pack ID.', 'type' => 'string', 'required' => false, 'example' => 'cmag-0c1g77wjljl9h****', 'title' => ''], 'required' => false, - 'enumValueTitles' => [ - 'Base64' => '', - 'PlainText' => '', - ], - 'example' => 'PlainText', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Response parameters'."\n", + 'title' => '', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '440D7342-5E7C-B2DB-D0B4EAC2BDF1****', - ], - 'InvokeId' => [ - 'description' => 'The ID of the command execution. You can use the command execution ID to query the output of a command.'."\n", - 'type' => 'string', - 'example' => 't-gov2ujrk32v4****', - ], - 'RunCommandInfos' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InvokeId' => [ - 'type' => 'string', - ], - 'InstanceId' => [ - 'type' => 'string', + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC****'], + 'Data' => [ + 'description' => 'The response object.', + 'type' => 'object', + 'properties' => [ + 'TotalCount' => ['description' => 'The total number of detail records.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'PageSize' => ['description' => 'The number of entries per page. Default value: 10. Maximum value: 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'PageNum' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'TotalCreditChange' => ['description' => 'The total credit change.', 'type' => 'string', 'example' => '100', 'title' => ''], + 'Details' => [ + 'description' => 'The credit change details.', + 'type' => 'array', + 'items' => [ + 'description' => 'The credit change detail item.', + 'type' => 'object', + 'properties' => [ + 'ChangeTime' => ['description' => 'The time when the change occurred.', 'type' => 'string', 'example' => '2026-06-30T08:14:02Z', 'title' => ''], + 'Description' => ['description' => 'The task description.', 'type' => 'string', 'example' => '打开小红书', 'title' => ''], + 'TaskId' => ['description' => 'The task ID, which is globally unique.', 'type' => 'string', 'example' => 't-1fr0k51pozyr5****', 'title' => ''], + 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-12oe0l75vl7o5****', 'title' => ''], + 'CreditChange' => ['description' => 'The credit change amount.', 'type' => 'string', 'example' => '0.7637', 'title' => ''], + 'PackageId' => ['description' => 'The credit or resource plan ID.', 'type' => 'string', 'example' => 'cmag-0c1g77wjljl9h****', 'title' => ''], + ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Query credit details', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"440D7342-5E7C-B2DB-D0B4EAC2BDF1****\\",\\n \\"InvokeId\\": \\"t-gov2ujrk32v4****\\",\\n \\"RunCommandInfos\\": [\\n {\\n \\"InvokeId\\": \\"\\",\\n \\"InstanceId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'RunCommand', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC****\\",\\n \\"Data\\": {\\n \\"TotalCount\\": 100,\\n \\"PageSize\\": 10,\\n \\"PageNum\\": 1,\\n \\"TotalCreditChange\\": \\"100\\",\\n \\"Details\\": [\\n {\\n \\"ChangeTime\\": \\"2026-06-30T08:14:02Z\\",\\n \\"Description\\": \\"打开小红书\\",\\n \\"TaskId\\": \\"t-1fr0k51pozyr5****\\",\\n \\"InstanceId\\": \\"acp-12oe0l75vl7o5****\\",\\n \\"CreditChange\\": \\"0.7637\\",\\n \\"PackageId\\": \\"cmag-0c1g77wjljl9h****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], - 'DescribeInvocations' => [ - 'summary' => 'Queries the execution results of commands.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'http', - 'https', - ], + 'DescribeCreditPackage' => [ + 'summary' => 'Retrieves the details of one or more credit packages.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], ], 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'CreditPackageId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. You can specify a maximum of 50 cloud phone instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-bj9t2gmys****', - ], - 'required' => true, - 'maxItems' => 100, - 'minItems' => 1, - ], + 'schema' => ['description' => 'The ID of the credit package.', 'type' => 'string', 'required' => false, 'example' => 'crp-xagydbhfkah****', 'title' => ''], ], [ - 'name' => 'InvocationId', + 'name' => 'CreditPackageStatus', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the execution. You can retrieve the output of a command once by using either the execution ID or the cloud phone instance ID.'."\n", + 'description' => 'The status of the credit package.', + 'enumValueTitles' => ['EXHAUSTED' => 'All credits in the package have been used.', 'ACTIVE' => 'The credit package is active.', 'EXPIRED' => 'The credit package has expired.'], 'type' => 'string', - 'required' => true, - 'example' => 't-4e98eeb5****', + 'required' => false, + 'example' => 'ACTIVE', + 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '440D7342-5E7C-B2DB-D0B4EAC2BDF1****', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'string', - 'example' => '10', - ], - 'Data' => [ - 'description' => 'The objects that are returned.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'InvocationId' => [ - 'description' => 'The ID of the execution.'."\n", - 'type' => 'string', - 'example' => 't-15775dc8****', - ], - 'StartTime' => [ - 'description' => 'The start time of the command execution.'."\n", - 'type' => 'string', - 'example' => '2022-08-11 17:45:03', - ], - 'FinishTime' => [ - 'description' => 'The end time of the command execution.'."\n", - 'type' => 'string', - 'example' => '2022-08-11 17:45:03', - ], - 'Output' => [ - 'description' => 'The output of the command execution.'."\n", - 'type' => 'string', - 'example' => 'success', - ], - 'InstanceId' => [ - 'description' => 'The ID of the cloud phone instance on which the command is executed.'."\n", - 'type' => 'string', - 'example' => 'acp-uto81vfd8t8z****', - ], - 'InvocationStatus' => [ - 'description' => 'The execution state of the command.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* Failed: The execution of the command failed.'."\n" - .'* Timeout: The execution of the command timed out.'."\n" - .'* Running: The command is being executed.'."\n" - .'* Success: The execution of the command is successful.'."\n" - .'* Pending: The command is waiting to be executed.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'Failed' => '', - 'Timeout' => '', - 'Running' => '', - 'Success' => '', - 'Pending' => '', - ], - 'example' => 'RUNNING', - ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC****'], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'IsFirstPurchase' => ['description' => 'Indicates whether this is your first purchase.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + 'TotalAvailableCredits' => ['description' => 'The total number of available credits.', 'type' => 'string', 'example' => '1000', 'title' => ''], + 'TotalExhaustedCredit' => ['description' => 'The total number of exhausted credits.', 'type' => 'string', 'example' => '30', 'title' => ''], + 'CreditsPackageInfos' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CreditPackageId' => ['description' => 'The ID of the credit package.', 'type' => 'string', 'example' => 'crp-xagydbhfkah****', 'title' => ''], + 'CreditPackageStatus' => ['description' => 'The status of the credit package.', 'type' => 'string', 'example' => 'ACTIVE', 'title' => ''], + 'EffectiveTime' => ['description' => 'The time when the credit package becomes effective.', 'type' => 'string', 'example' => '2026-04-30 00:00:00', 'title' => ''], + 'ExpiredTime' => ['description' => 'The time when the credit package expires.', 'type' => 'string', 'example' => '2026-10-30 00:00:00', 'title' => ''], + 'TotalCredits' => ['description' => 'The total number of credits in the credit package.', 'type' => 'string', 'example' => '100', 'title' => ''], + 'ExhaustedCredits' => ['description' => 'The number of exhausted credits in the credit package.', 'type' => 'string', 'example' => '30', 'title' => ''], + 'AvailableCredits' => ['description' => 'The number of available credits in the credit package.', 'type' => 'string', 'example' => '70', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], + 'description' => 'An array of credit package details.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response body.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeCreditPackage', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"440D7342-5E7C-B2DB-D0B4EAC2BDF1****\\",\\n \\"TotalCount\\": \\"10\\",\\n \\"Data\\": [\\n {\\n \\"InvocationId\\": \\"t-15775dc8****\\",\\n \\"StartTime\\": \\"2022-08-11 17:45:03\\",\\n \\"FinishTime\\": \\"2022-08-11 17:45:03\\",\\n \\"Output\\": \\"success\\",\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"InvocationStatus\\": \\"Running\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'DescribeInvocations', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC****\\",\\n \\"TotalCount\\": 10,\\n \\"IsFirstPurchase\\": true,\\n \\"TotalAvailableCredits\\": \\"1000\\",\\n \\"TotalExhaustedCredit\\": \\"30\\",\\n \\"CreditsPackageInfos\\": [\\n {\\n \\"CreditPackageId\\": \\"crp-xagydbhfkah****\\",\\n \\"CreditPackageStatus\\": \\"ACTIVE\\",\\n \\"EffectiveTime\\": \\"2026-04-30 00:00:00\\",\\n \\"ExpiredTime\\": \\"2026-10-30 00:00:00\\",\\n \\"TotalCredits\\": \\"100\\",\\n \\"ExhaustedCredits\\": \\"30\\",\\n \\"AvailableCredits\\": \\"70\\"\\n }\\n ]\\n}","type":"json"}]', ], - 'SendFile' => [ - 'summary' => 'Pushes files from Object Storage Service (OSS) buckets to cloud phone instances.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeDisplayConfig' => [ + 'summary' => 'Queries the display settings.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone0959GM', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVB2A7J'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIdList', - 'in' => 'query', + 'name' => 'AndroidInstanceIds', + 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", + 'description' => 'A list of instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'deprecated' => false, - 'required' => true, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'SourceFilePath', - 'in' => 'query', - 'schema' => [ - 'description' => 'The path to which you want to upload the pushed file in the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '/data', - ], - ], - [ - 'name' => 'UploadType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The storage type of the file that you want to upload.'."\n" - ."\n" - .'* Set the value to OSS.'."\n", - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [ - 'DOWNLOAD_URL' => '', - 'OSS' => 'OSS', - ], - 'example' => 'OSS', - ], - ], - [ - 'name' => 'UploadEndpoint', - 'in' => 'query', - 'schema' => [ - 'description' => 'The endpoint of the OSS bucket in which the file is stored.'."\n" - ."\n" - .'> Set the value to an internal endpoint when the cloud phone instance and the OSS bucket are in the same region to improve transfer speed without incurring public traffic fees. Sample endpoint: `oss-cn-hangzhou-internal.aliyuncs.com`. For more information, see [OSS regions and endpoints](~~31837~~).'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'oss-cn-hangzhou.aliyuncs.com', - ], - ], - [ - 'name' => 'UploadUrl', - 'in' => 'query', - 'schema' => [ - 'description' => 'The OSS URL of the file.'."\n" - ."\n" - .'> The OSS bucket name must start with "cloudphone-saved-bucket-", for example, "cloudphone-saved-bucket-example". You must also create an OSS directory to store the backup data. Set the value for UploadUrl in this format: oss://\\/\\\\.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-165955035250****/backup/a.txt', - ], - ], - [ - 'name' => 'TargetFileName', - 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the file uploaded from the Object Storage Service (OSS) to the cloud phone instance.'."\n" - ."\n" - .'> If UploadType is set to OSS, you must specify TargetFileName. If TargetFileName is empty, the file uploaded from the OSS bucket to the cloud phone instance retains its original name. If TargetFileName is provided with a value, the uploaded file in the SourceFilePath directory uses the specified name (TargetFileName). If UploadType is set to DOWNLOAD_URL, TargetFileName does not take effect.'."\n", - 'type' => 'string', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'cpn-jewjt8xryuituz4qn-****', 'title' => ''], 'required' => false, - 'example' => 'test.txt', - ], - ], - [ - 'name' => 'AutoInstall', - 'in' => 'query', - 'schema' => [ - 'type' => 'boolean', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The objects that are returned.'."\n", + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'FFEF7EFE-1E36-56D1-B5BF-5BACE43B****'], + 'DisplayConfigModel' => [ + 'description' => 'A list of display settings.', 'type' => 'array', 'items' => [ - 'description' => 'The object that is returned.'."\n", + 'description' => 'The display settings.', 'type' => 'object', 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'cpn-jewjt8xryuituz4qn-****', 'title' => ''], + 'ResolutionHeight' => ['description' => 'The height of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '1280', 'title' => ''], + 'ResolutionWidth' => ['description' => 'The width of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'example' => '720', 'title' => ''], + 'Dpi' => ['description' => 'The dots per inch (DPI). The value ranges from 72 to 600.', 'type' => 'integer', 'format' => 'int32', 'example' => '240', 'title' => ''], + 'Fps' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => 'null', 'title' => ''], + 'LockResolution' => [ + 'description' => 'Indicates whether the resolution is locked.', + 'enumValueTitles' => ['off' => 'Not locked', 'on' => 'Locked'], 'type' => 'string', - 'example' => 't-4ks224ujixw****', + 'example' => 'off', + 'title' => '', ], ], + 'title' => '', + 'example' => '', ], - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'."\n", - ], - 'RequestId' => [ - 'description' => 'The ID of the request. If the request fails, share this ID with technical support to help diagnose the issue.'."\n", - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'TaskId' => [ - 'description' => 'The ID of the batch task.'."\n", - 'type' => 'string', - 'example' => 't-ehs0yoedj0xe9****', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FFEF7EFE-1E36-56D1-B5BF-5BACE43B****\\",\\n \\"DisplayConfigModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"cpn-jewjt8xryuituz4qn-****\\",\\n \\"ResolutionHeight\\": 1280,\\n \\"ResolutionWidth\\": 720,\\n \\"Dpi\\": 240,\\n \\"Fps\\": 0,\\n \\"LockResolution\\": \\"off\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeDisplayConfig', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-4ks224ujixw****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TaskId\\": \\"t-ehs0yoedj0xe9****\\"\\n}","type":"json"}]', - 'title' => 'SendFile', - 'description' => 'Currently, this operation allows you to only push files or folders from OSS buckets to cloud phone instances.'."\n", ], - 'FetchFile' => [ - 'summary' => 'Pulls a file from a cloud phone instance and stores it in Object Storage Service (OSS).', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeEdgeMobileAgentPackages' => [ + 'summary' => 'Queries the details of edge agent packages.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, + 'operationType' => 'read', 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone0959GM', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneLI0KSA'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIdList', + 'name' => 'PackageIds', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-34pqe4r0kd9kn****'."\n", - ], - 'deprecated' => false, - 'required' => true, - 'maxItems' => 100, - ], + 'schema' => ['title' => '', 'description' => 'The list of package IDs. Separate multiple IDs with commas.', 'type' => 'string', 'required' => false, 'example' => 'cmag-0c1g77wjljl9hc****'], ], [ - 'name' => 'SourceFilePath', + 'name' => 'LicenseKeys', 'in' => 'query', - 'schema' => [ - 'description' => 'The path to the file that you want to pull from the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => '/data/a.txt', - ], + 'schema' => ['title' => '', 'description' => 'The list of license keys. Separate multiple keys with commas.', 'type' => 'string', 'required' => false, 'example' => 'lic-ez197xvdf0j5eo0*****'], ], [ - 'name' => 'UploadType', + 'name' => 'DeviceClass', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the storage service.'."\n" - ."\n" - .'> Currently, only OSS is supported.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'OSS', - ], + 'schema' => ['title' => '', 'description' => 'The device type filter. Valid values: BOX, PHONE, PAD, and OTHER.', 'type' => 'string', 'required' => false, 'example' => 'BOX'], ], [ - 'name' => 'UploadEndpoint', + 'name' => 'Status', 'in' => 'query', - 'schema' => [ - 'description' => 'The endpoint of the OSS bucket in which you want to store the pulled file.'."\n" - ."\n" - .'> Set the value to an internal endpoint when the cloud phone instance and the OSS bucket are in the same region to improve upload speed without incurring public traffic fees. Sample endpoint: `oss-cn-hangzhou-internal.aliyuncs.com`. For more information, see [OSS regions and endpoints](~~31837~~).'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'oss-cn-hangzhou.aliyuncs.com', - ], + 'schema' => ['title' => '', 'description' => 'The package status filter.', 'type' => 'string', 'required' => false, 'example' => 'ACTIVE'], ], [ - 'name' => 'UploadUrl', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => 'The OSS URL of the pulled file.'."\n" - ."\n" - .'> The OSS bucket name must start with "cloudphone-saved-bucket-", for example, "cloudphone-saved-bucket-example". You must also create an OSS directory to store the backup data. Set the value for UploadUrl in this format: oss://\\/\\.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-165955035250****/backup/', - ], + 'schema' => ['title' => '', 'description' => 'The pagination token. Leave this parameter empty for the first query. For subsequent queries, use the value returned in the previous response.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '20'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", + 'title' => '', + 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The objects that are returned.'."\n", + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], + 'NextToken' => ['title' => '', 'description' => 'The pagination token for the next page. An empty value indicates that no more data exists.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], + 'MaxResults' => ['title' => '', 'description' => 'The actual number of entries returned on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '20'], + 'TotalCount' => ['title' => '', 'description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '30'], + 'Packages' => [ + 'title' => '', + 'description' => 'The list of packages.', 'type' => 'array', 'items' => [ - 'description' => 'The object that is returned.'."\n", + 'description' => 'The collection of package information.', 'type' => 'object', 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'example' => 't-bp67acfmxazb4p****', + 'PackageId' => ['title' => '', 'description' => 'The package ID.', 'type' => 'string', 'example' => 'cmag-0c1g77wjljl9hc****'], + 'Status' => ['title' => '', 'description' => 'The package status.', 'type' => 'string', 'example' => 'ACTIVE'], + 'DeviceClass' => ['title' => '', 'description' => 'The device type.', 'type' => 'string', 'example' => 'BOX'], + 'PackageSpec' => ['title' => '', 'description' => 'The package specification. Currently, only hardware is supported.', 'type' => 'string', 'example' => 'hardware'], + 'ExpireDate' => ['title' => '', 'description' => 'The expiration time.', 'type' => 'string', 'example' => '2026-01-05 10:04:07'], + 'LicenseKeys' => [ + 'title' => '', + 'description' => 'The list of license keys.', + 'type' => 'array', + 'items' => ['description' => 'The license key.', 'type' => 'string', 'example' => 'lic-ez197xvdf0j5eo0*****', 'title' => ''], + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'."\n", - ], - 'RequestId' => [ - 'description' => 'The ID of the request. If the request fails, share this ID with technical support to help diagnose the issue.'."\n", - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'TaskId' => [ - 'description' => 'The ID of the batch task.'."\n", - 'type' => 'string', - 'example' => 't-ehs0yoedj0xe9****', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Query edge agent package details', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TaskId\\": \\"t-ehs0yoedj0xe9****\\"\\n}","type":"json"}]', - 'title' => 'FetchFile', - 'description' => 'Currently, this operation allows you to retrieve files or folders from cloud phone instances and save them directly to OSS.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MaxResults\\": 20,\\n \\"TotalCount\\": 30,\\n \\"Packages\\": [\\n {\\n \\"PackageId\\": \\"cmag-0c1g77wjljl9hc****\\",\\n \\"Status\\": \\"ACTIVE\\",\\n \\"DeviceClass\\": \\"BOX\\",\\n \\"PackageSpec\\": \\"hardware\\",\\n \\"ExpireDate\\": \\"2026-01-05 10:04:07\\",\\n \\"LicenseKeys\\": [\\n \\"lic-ez197xvdf0j5eo0*****\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', ], - 'CreateScreenshot' => [ - 'summary' => 'Creates a screenshot of a cloud phone instance.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeImageList' => [ + 'summary' => 'Queries a list of available images.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneQNMLJ7', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphone3OZQF8'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIdList', - 'in' => 'query', - 'style' => 'repeatList', + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The image ID.', 'type' => 'string', 'required' => false, 'example' => 'imgc-075cllfeuazh0****'], + ], + [ + 'name' => 'ImageType', + 'in' => 'formData', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. You can create multiple snapshots simultaneously.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'acp-ig2bdpk374l12****', - ], - 'deprecated' => false, + 'title' => '', + 'description' => 'The image type.', + 'type' => 'string', 'required' => true, - 'maxItems' => 100, + 'enumValueTitles' => ['User' => 'custom image', 'System' => 'OS image'], + 'example' => 'System', ], ], [ - 'name' => 'OssBucketName', - 'in' => 'query', + 'name' => 'ImageName', + 'in' => 'formData', + 'schema' => ['title' => '', 'description' => 'The image name.', 'type' => 'string', 'required' => false, 'example' => 'Android 12 system image'], + ], + [ + 'name' => 'Status', + 'in' => 'formData', 'schema' => [ - 'description' => 'The name of the OSS bucket. The name must start with "cloudphone-saved-bucket-". The OSS bucket and the cloud phone instance must be in the same region. If you leave this parameter empty, the system will create a default OSS bucket named “cloudphone-saved-bucket-{Region of the cloud phone instance}-{AliUid}.”'."\n", + 'description' => 'The status of the image.', 'type' => 'string', 'required' => false, - 'example' => 'cloudphone-saved-bucket-cn-shanghai-default', + 'enumValueTitles' => ['AVAILABLE' => 'The image is available.', 'DELETE' => 'The image is deleted.', 'INIT' => 'The image is being initialized.', 'CREATE_FAILED' => 'The image failed to be created.', 'CREATING' => 'The image is being created.'], + 'title' => '', + 'example' => 'AVAILABLE', ], ], [ - 'name' => 'SkipCheckPolicyConfig', + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['description' => 'The token that specifies the position from which to start the query. If you leave this parameter empty, the query starts from the beginning.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****'], + ], + [ + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of entries to return on each page for a paged query. Valid values: 1 to 100. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '20', 'title' => '', 'example' => '20'], + ], + [ + 'name' => 'ImagePackageType', + 'in' => 'query', + 'schema' => ['description' => '> This parameter is not yet available.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'null'], + ], + [ + 'name' => 'InstanceType', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => 'The instance type.', 'required' => false, 'title' => '', 'example' => 'cpm.gx7.10xlarge'], + ], + [ + 'name' => 'ImageBizTags', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'Specifies whether to bypass the snapshot policy control. Default value: false.'."\n", - 'type' => 'string', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['type' => 'string', 'description' => 'The tag key.', 'required' => false, 'title' => '', 'example' => 'key1'], + 'Value' => ['type' => 'string', 'description' => 'The tag value.', 'required' => false, 'title' => '', 'example' => 'value1'], + ], + 'description' => 'The tag object.', + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'maxItems' => 100, + 'description' => 'An array of tag objects.', 'required' => false, - 'example' => 'false', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ScreenshotId', + 'name' => 'SystemType', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'PlainResult'."\n", + 'title' => 'NextTokenListResult', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request. If the request fails, share this ID with technical support to help diagnose the issue.'."\n", - 'type' => 'string', - 'example' => '3AF82CE1-2801-52CE-BF64-B491DD7C****', - ], - 'Tasks' => [ - 'description' => 'The tasks.'."\n", + 'NextToken' => ['description' => 'The token that is used to start the next query. An empty value indicates that all data has been returned.', 'type' => 'string', 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****'], + 'Data' => [ + 'description' => 'The returned data.', 'type' => 'array', 'items' => [ - 'description' => 'The task.'."\n", + 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", + 'AliUid' => ['description' => 'The ID of the Alibaba Cloud account.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '117819727354****'], + 'Description' => ['description' => 'The description.', 'type' => 'string', 'title' => '', 'example' => 'description'], + 'GmtCreate' => ['description' => 'The time when the image was created.', 'type' => 'string', 'title' => '', 'example' => '2024-02-01 10:56:36'."\n"], + 'GmtModified' => ['description' => 'The time when the image was last modified.', 'type' => 'string', 'title' => '', 'example' => '2024-02-01 10:56:36'."\n"], + 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'title' => '', 'example' => 'imgc-075cllfeuazh****'], + 'ImageType' => [ + 'description' => 'The image type.', 'type' => 'string', - 'example' => 'acp-bwhtebzah2fse****', + 'enumValueTitles' => ['User' => 'custom image', 'System' => 'OS image'], + 'title' => '', + 'example' => 'System', + ], + 'Language' => ['description' => 'The language.', 'type' => 'string', 'title' => '', 'example' => 'zh'], + 'ImageName' => ['description' => 'The image name.', 'type' => 'string', 'title' => '', 'example' => 'IMAGE'], + 'ImageRegionList' => [ + 'description' => 'The list of available regions.', + 'type' => 'array', + 'items' => ['description' => 'The region.', 'type' => 'string', 'title' => '', 'example' => 'cn-hangzhou'], + 'title' => '', + 'example' => '', ], - 'TaskId' => [ - 'description' => 'The ID of the task. You can use the task ID with the DescribeTasks operation to get the download link for the screenshot.'."\n", + 'Status' => [ + 'description' => 'The image status.', 'type' => 'string', - 'example' => 't-imr0fufqd7cle****', + 'enumValueTitles' => ['AVAILABLE' => 'The image is available.', 'DELETE' => 'The image is deleted.', 'INIT' => 'The image is being initialized.', 'CREATE_FAILED' => 'The image failed to be created.', 'CREATING' => 'The image is being created.'], + 'title' => '', + 'example' => 'AVAILABLE', + ], + 'SystemType' => ['title' => '', 'description' => 'The operating system type.', 'type' => 'string', 'example' => 'Android 12'], + 'ImageRegionDistributeMap' => [ + 'title' => '', + 'description' => 'The image distribution information by region. The key is the region and the value is the distribution information.', + 'type' => 'object', + 'additionalProperties' => [ + 'type' => 'object', + 'properties' => [ + 'DistributeStatus' => [ + 'title' => '', + 'description' => 'The distribution status.', + 'type' => 'string', + 'enumValueTitles' => ['AVAILABLE' => 'The image is available.', 'DELETE' => 'The image is deleted.', 'INIT' => 'The image is being initialized.', 'CREATE_FAILED' => 'The image failed to be created.', 'CREATING' => 'The image is being created.'], + 'example' => 'AVAILABLE', + ], + 'Progress' => ['title' => '', 'description' => 'The distribution progress.', 'type' => 'string', 'example' => '100%'], + ], + 'description' => 'The distribution information.', + 'title' => '', + 'example' => '', + ], + 'example' => '', ], - 'ScreenshotId' => [ + 'ReleaseTime' => ['description' => 'The time when the image was published.', 'type' => 'string', 'title' => '', 'example' => '2024-07-25 10:06:45'], + 'RenderingType' => [ + 'description' => 'The rendering type.', 'type' => 'string', + 'enumValueTitles' => ['GPURemote' => 'GPURemote', 'CPU' => 'CPU', 'GPULocal' => 'GPULocal'], + 'enum' => ['CPU', 'GPULocal', 'GPURemote'], + 'title' => '', + 'example' => 'CPU', + ], + 'ImageVersion' => ['type' => 'string', 'description' => 'The image version.', 'title' => '', 'example' => '20241204102337'], + 'ImageBizTags' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => ['type' => 'string', 'description' => 'The tag key.', 'title' => '', 'example' => 'key1'], + 'Value' => ['type' => 'string', 'description' => 'The tag value.', 'title' => '', 'example' => 'value1'], + ], + 'description' => 'The tag object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'An array of tag objects.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '30'], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '620740FF-492F-5956-B1BA-361E966C0269'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3AF82CE1-2801-52CE-BF64-B491DD7C****\\",\\n \\"Tasks\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-bwhtebzah2fse****\\",\\n \\"TaskId\\": \\"t-imr0fufqd7cle****\\",\\n \\"ScreenshotId\\": \\"image\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'CreateScreenshot', - 'description' => 'You can call this operation to create a screenshot of a cloud phone instance and upload it to the default Object Storage Service (OSS) bucket. The operation returns a task ID, which you can use with the DescribeTasks operation to get the download link for the screenshot.'."\n", - ], - 'GenerateCoordinationCode' => [ - 'summary' => 'Generates a collaboration code for the cloud phone being accessed by using the current convenience account, and shares this code with other convenience accounts to allow them to access the same cloud phone.', - 'path' => '', - 'methods' => [ - 'get', - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"Data\\": [\\n {\\n \\"AliUid\\": 0,\\n \\"Description\\": \\"description\\",\\n \\"GmtCreate\\": \\"2024-02-01 10:56:36\\\\n\\",\\n \\"GmtModified\\": \\"2024-02-01 10:56:36\\\\n\\",\\n \\"ImageId\\": \\"imgc-075cllfeuazh****\\",\\n \\"ImageType\\": \\"System\\",\\n \\"Language\\": \\"zh\\",\\n \\"ImageName\\": \\"IMAGE\\",\\n \\"ImageRegionList\\": [\\n \\"cn-hangzhou\\"\\n ],\\n \\"Status\\": \\"AVAILABLE\\",\\n \\"SystemType\\": \\"Android 12\\",\\n \\"ImageRegionDistributeMap\\": {\\n \\"key\\": {\\n \\"DistributeStatus\\": \\"AVAILABLE\\",\\n \\"Progress\\": \\"100%\\"\\n }\\n },\\n \\"ReleaseTime\\": \\"2024-07-25 10:06:45\\",\\n \\"RenderingType\\": \\"CPU\\",\\n \\"ImageVersion\\": \\"20241204102337\\",\\n \\"ImageBizTags\\": [\\n {\\n \\"Key\\": \\"key1\\",\\n \\"Value\\": \\"value1\\"\\n }\\n ]\\n }\\n ],\\n \\"TotalCount\\": 30,\\n \\"RequestId\\": \\"620740FF-492F-5956-B1BA-361E966C0269\\"\\n}","type":"json"}]', + 'title' => 'DescribeImageList', + 'changeSet' => [ + ['createdAt' => '2025-07-25T15:04:47.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-03-14T09:57:38.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-22T12:26:49.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-07-24T09:35:49.000Z', 'description' => 'Response parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'translator' => 'manual', + ], + 'DescribeInvocations' => [ + 'summary' => 'Queries the execution results of a command run by calling the RunCommand operation.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMEHI4H', - ], - ], + 'systemTags' => ['operationType' => 'none'], 'parameters' => [ [ - 'name' => 'OwnerUserId', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the user to whom the current instance is assigned.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'xiaoming', + 'description' => 'The IDs of the cloud phone instances. A single request can query the execution results for up to 50 instances.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-bj9t2gmys****', 'title' => ''], + 'required' => true, + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'InstanceId', + 'name' => 'InvocationId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-2zecay9ponatdc4m****', - ], + 'schema' => ['description' => 'The ID of the command execution. Use this ID and the cloud phone instance ID to query the result of a command execution.', 'type' => 'string', 'required' => true, 'example' => 't-4e98eeb5****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The request ID.'."\n", - 'type' => 'string', - 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****', - ], - 'CoordinatorCode' => [ - 'description' => 'The collaboration code.'."\n", - 'type' => 'string', - 'example' => 'CSHGDK', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '440D7342-5E7C-B2DB-D0B4EAC2BDF1****'], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'string', 'example' => '10', 'title' => ''], + 'Data' => [ + 'description' => 'The list of returned results.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InvocationId' => ['description' => 'The ID of the command execution.', 'type' => 'string', 'example' => 't-15775dc8****', 'title' => ''], + 'StartTime' => ['description' => 'The time when the command started to run.', 'type' => 'string', 'example' => '2022-08-11 17:45:03', 'title' => ''], + 'FinishTime' => ['description' => 'The time when the command finished running.', 'type' => 'string', 'example' => '2022-08-11 17:45:03', 'title' => ''], + 'Output' => ['description' => 'The output of the command execution.', 'type' => 'string', 'example' => 'success', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the instance where the command was run.', 'type' => 'string', 'example' => 'acp-uto81vfd8t8z****', 'title' => ''], + 'InvocationStatus' => [ + 'description' => 'The status of the command execution.', + 'enumValueTitles' => ['Failed' => '', 'Timeout' => '', 'Running' => '', 'Success' => '', 'Pending' => ''], + 'type' => 'string', + 'example' => 'Running', + 'title' => '', + ], + ], + 'description' => 'The returned result.', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"440D7342-5E7C-B2DB-D0B4EAC2BDF1****\\",\\n \\"TotalCount\\": \\"10\\",\\n \\"Data\\": [\\n {\\n \\"InvocationId\\": \\"t-15775dc8****\\",\\n \\"StartTime\\": \\"2022-08-11 17:45:03\\",\\n \\"FinishTime\\": \\"2022-08-11 17:45:03\\",\\n \\"Output\\": \\"success\\",\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"InvocationStatus\\": \\"Running\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeInvocations', + 'description' => 'This operation is being deprecated. Use the [](t2740507.xdita#)operation to query the progress and results of a command execution.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"CoordinatorCode\\": \\"CSHGDK\\"\\n}","type":"json"}]', - 'title' => 'GenerateCoordinationCode', - 'description' => 'You can call this operation to generate a collaboration code for a cloud phone accessed by your current account and share this code with other convenience users to allow them to access the same cloud phone over the desktop, mobile, or web client.', ], - 'EndCoordination' => [ - 'summary' => '结束协同', - 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'DescribeJVSInstance' => [ + 'path' => '/anonymous/jvs/instance/describe', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -6826,76 +5913,136 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMEHI4H', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], ], 'parameters' => [ [ - 'name' => 'OwnerUserId', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh431emkt6u*****', 'title' => ''], 'required' => false, - 'example' => 'xiaoming', + 'maxItems' => 100, + 'title' => '', + 'description' => 'A list of instance IDs.', + 'example' => '', ], ], [ - 'name' => 'CoordinatorUserId', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'lina', - ], + 'schema' => ['description' => 'The number of entries to return on each page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'title' => '', 'example' => '10'], ], [ - 'name' => 'InstanceId', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-2zecay9ponatdc4m****', - ], + 'schema' => ['description' => 'The pagination token from a previous request to retrieve the next page of results. Omit this parameter for the first request.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], + 'MaxResults' => ['description' => 'The number of entries returned on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'NextToken' => ['description' => 'The token to retrieve the next page of results. If this field is empty, there are no more results.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], + 'Data' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-uto81vfd8t8z****', 'title' => ''], + 'CreditConfig' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CreditLimit' => [ + 'description' => 'The Credit limit.', + 'enumValueTitles' => ['Unavailable.', '>0' => 'The value specifies the limit.', -1 => 'Unlimited.'], + 'type' => 'integer', + 'format' => 'int64', + 'example' => '-1', + 'title' => '', + ], + 'LimitPeriod' => [ + 'description' => 'The limit period.', + 'enumValueTitles' => ['total' => 'The total limit.', 'month' => 'The monthly limit. The usage is reset monthly on the same day the instance was activated.', 'day' => 'The daily limit. The usage is reset daily at 00:00.'], + 'type' => 'string', + 'example' => 'day', + 'title' => '', + ], + ], + 'description' => 'The Credit limit configuration object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The Credit limit configuration. If you apply multiple configurations, the latest one overwrites the others.', + 'title' => '', + 'example' => '', + ], + 'UsedCredit' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Credit' => ['description' => 'The amount of Credit.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], + 'LimitPeriod' => [ + 'description' => 'The calculation period for used Credit.', + 'enumValueTitles' => ['total' => 'The total limit.', 'month' => 'The monthly limit. The usage is reset monthly on the same day the instance was activated.', 'day' => 'The daily limit. The usage is reset daily at 00:00.'], + 'type' => 'string', + 'example' => 'day', + 'title' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => 'The amount of used Credit.', + 'title' => '', + 'example' => '', + ], + 'JvsPackageId' => ['description' => 'This parameter is not supported.', 'type' => 'string', 'example' => 'null', 'title' => ''], + 'Status' => ['description' => 'The instance status.', 'type' => 'string', 'example' => 'RUNNNING', 'title' => ''], + 'CreateTime' => ['description' => 'The time the instance was created.', 'type' => 'string', 'example' => '2026-04-10T01:31:32Z', 'title' => ''], + 'ModifyTime' => ['description' => 'The time the instance was last modified.', 'type' => 'string', 'example' => '2026-04-10T01:31:32Z', 'title' => ''], + 'ExpireTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2026-04-10T01:31:32Z', 'title' => ''], + ], + 'description' => 'The details of a JVS instance.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of JVS instances.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response object.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeJVSInstance', + 'summary' => 'Retrieves details of JVS instances.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"MaxResults\\": 10,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"TotalCount\\": 30,\\n \\"Data\\": [\\n {\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"CreditConfig\\": [\\n {\\n \\"CreditLimit\\": -1,\\n \\"LimitPeriod\\": \\"day\\"\\n }\\n ],\\n \\"UsedCredit\\": [\\n {\\n \\"Credit\\": 5,\\n \\"LimitPeriod\\": \\"day\\"\\n }\\n ],\\n \\"JvsPackageId\\": \\"null\\",\\n \\"Status\\": \\"RUNNNING\\",\\n \\"CreateTime\\": \\"2026-04-10T01:31:32Z\\",\\n \\"ModifyTime\\": \\"2026-04-10T01:31:32Z\\",\\n \\"ExpireTime\\": \\"2026-04-10T01:31:32Z\\"\\n }\\n ]\\n}","type":"json"}]', ], - 'CreateCustomImage' => [ - 'summary' => 'Creates a custom image from a cloud phone instance.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeKeyPairs' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -6907,92 +6054,83 @@ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneCPBVX1', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], ], 'parameters' => [ [ - 'name' => 'InstanceId', - 'in' => 'formData', + 'name' => 'KeyPairIds', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '镜像id搜素', - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'acp-2zecay9ponatdc4m****', + 'description' => 'The IDs of the ADB key pairs.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the ADB key pair.', 'type' => 'string', 'required' => false, 'example' => 'kp-6v2q33ae4tw3*****', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ImageName', - 'in' => 'formData', - 'schema' => [ - 'title' => '镜像类型', - 'description' => 'The name of the custom image.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'custom image name', - ], + 'name' => 'KeyPairName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the ADB key pair.', 'type' => 'string', 'required' => false, 'example' => 'testKeyPairName', 'title' => ''], ], [ - 'name' => 'Description', - 'in' => 'formData', - 'schema' => [ - 'title' => '镜像名称搜素', - 'description' => 'The description of the custom image.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'create for cc5g group auth rules test', - ], + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '0', 'required' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'ClientToken', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The client token that is used to ensure the idempotence of the request. By default, this parameter is left empty. The token cannot exceed 64 characters in length.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '20393E53-8FF1-524C-B494-B478A5369733', - 'maxLength' => 100, - ], + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAYRHtOLVQzCYj17y+OP7LZQBUVVbi0GTu8g5****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PageListResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'PlainResult>', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '20393E53-8FF1-524C-B494-B478A5369733', - ], - 'ImageId' => [ - 'description' => 'The ID of the custom image.'."\n", - 'type' => 'string', - 'example' => 'imgc-075cllfeuazh0****', + 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.', 'type' => 'string', 'example' => 'FFbc8N4E1iOlcSxC+8boa0HHH2LKWbggYUinyrZWvtS1oTrMYCg1HuMLGuftj0****', 'title' => ''], + 'Data' => [ + 'description' => 'The objects that are returned.', + 'type' => 'array', + 'items' => [ + 'description' => 'The object that is returned.', + 'type' => 'object', + 'properties' => [ + 'KeyPairId' => ['description' => 'The ID of the ADB key pair.', 'type' => 'string', 'example' => 'kp-6v2q33ae4tw3a****', 'title' => ''], + 'KeyPairName' => ['description' => 'The name of the ADB key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], + 'GmtCreated' => ['description' => 'The time when the ADB key pair was created.', 'type' => 'string', 'title' => '', 'example' => '2022-10-11T08:53:32Z'], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], + 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '565FB06A-AE04-5AD0-8A32-5BA92CA5****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'title' => 'DescribeKeyPairs', + 'summary' => 'Queries one or more key pairs.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"20393E53-8FF1-524C-B494-B478A5369733\\",\\n \\"ImageId\\": \\"imgc-075cllfeuazh0****\\"\\n}","type":"json"}]', - 'title' => 'CreateCustomImage', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"FFbc8N4E1iOlcSxC+8boa0HHH2LKWbggYUinyrZWvtS1oTrMYCg1HuMLGuftj0****\\",\\n \\"Data\\": [\\n {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3a****\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"GmtCreated\\": \\"2022-10-11T08:53:32Z\\"\\n }\\n ],\\n \\"TotalCount\\": 10,\\n \\"RequestId\\": \\"565FB06A-AE04-5AD0-8A32-5BA92CA5****\\"\\n}","type":"json"}]', ], - 'DescribeImageList' => [ - 'summary' => 'Queries images.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeMetricLast' => [ + 'summary' => 'Queries the latest monitoring data for an instance or a matrix. You can query metrics such as CPU, memory, disk, and network.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -7001,842 +6139,643 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone3OZQF8', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'ImageId', - 'in' => 'formData', - 'schema' => [ - 'title' => '镜像id搜素', - 'description' => 'The ID of the image.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'imgc-075cllfeuazh0****', - ], - ], - [ - 'name' => 'ImageType', + 'name' => 'MetricNames', 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'title' => '镜像类型', - 'description' => 'The type of the image.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* User: custom images.'."\n" - .'* System: system images.'."\n", - 'type' => 'string', - 'required' => true, - 'enumValueTitles' => [ - 'User' => '', - 'System' => '', + 'description' => 'The list of monitoring metrics.', + 'type' => 'array', + 'items' => [ + 'description' => 'The name of the metric.', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'disk_read_bps' => 'Disk read bps', 'disk_read_iops' => 'Disk read IOPS', 'cpu_utilization' => 'CPU utilization', 'disk_write_iops' => 'Disk write IOPS', 'disk_write_bps' => 'Disk write bps', 'diskusage_utilization' => 'Storage usage', 'memory_used_utilization' => 'Memory usage', 'intranet_out_rate' => 'Outbound bandwidth of the connection', 'process_memory' => 'Process memory usage', 'intranet_in_rate' => 'Inbound bandwidth of the connection', + 'process_cpu' => 'Process CPU utilization', + ], + 'title' => '', + 'example' => 'cpu_utilization', ], - 'example' => 'System', - ], - ], - [ - 'name' => 'ImageName', - 'in' => 'formData', - 'schema' => [ - 'title' => '镜像名称搜素', - 'description' => 'The name of the image.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Android 12 image'."\n", + 'required' => true, + 'maxItems' => 100, + 'title' => '', + 'example' => '', + 'enumValueTitles' => [], ], ], [ - 'name' => 'Status', + 'name' => 'AndroidInstanceIds', 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The state of the image.'."\n" + 'description' => 'For instance-level monitoring, specify a list of Cloud Phone instance IDs.'."\n" ."\n" - .'Valid values:'."\n" + .''."\n" ."\n" - .'* AVAILABLE: The image is available.'."\n" - .'* DELETE: The image is deleted.'."\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', + .'For matrix-level monitoring, specify a list of matrix IDs.'."\n" + ."\n" + .'', + 'type' => 'array', + 'items' => ['description' => 'For instance-level monitoring, specify the Cloud Phone instance ID.'."\n" + .'For matrix-level monitoring, specify the matrix ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'acp-6nongia0tuev7****'], 'required' => false, - 'enumValueTitles' => [ - 'AVAILABLE' => '', - 'DELETE' => '', - 'INIT' => '', - 'CREATE_FAILED' => '', - 'CREATING' => '', - ], - 'example' => 'AVAILABLE', + 'maxItems' => 50, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NextToken', + 'name' => 'Period', 'in' => 'formData', 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.'."\n", - 'type' => 'string', + 'description' => 'The statistic period for monitoring data.'."\n" + ."\n" + .'Valid values: 60, 900, and 3600.'."\n" + ."\n" + .'Unit: seconds.', + 'type' => 'integer', + 'format' => 'int32', 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****', + 'enumValueTitles' => [15 => '15 seconds', 60 => '60 seconds', 900 => '900 seconds', 3600 => '3600 seconds'], + 'title' => '', + 'example' => '60', ], ], [ - 'name' => 'MaxResults', + 'name' => 'StartTime', 'in' => 'formData', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 20.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '20', - 'default' => '20', - ], + 'schema' => ['description' => 'The start time for the query.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '2019-01-31 10:00:00'], ], [ - 'name' => 'ImagePackageType', - 'in' => 'query', - 'schema' => [ - 'description' => 'Image package type.', - 'type' => 'string', - 'required' => false, - 'example' => 'VM', - ], + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => ['description' => 'The end time for the query.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '2019-01-31 11:00:00'], ], [ - 'name' => 'InstanceType', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', - ], + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['description' => 'The token that marks the start of the current read position. If you leave this parameter empty, the query starts from the beginning.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****'], ], [ - 'name' => 'ImageBizTags', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'type' => 'string', - ], - 'Value' => [ - 'type' => 'string', - ], - ], - ], - 'maxItems' => 100, - ], + 'name' => 'Length', + 'in' => 'formData', + 'schema' => ['description' => 'The number of monitoring data records to return on each page for a paged query.'."\n" + ."\n" + .'The default value is 1000. This means that 1000 monitoring data records are returned per page.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => '1000'], ], [ - 'name' => 'SystemType', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'string', + 'type' => 'array', + 'items' => ['type' => 'string', 'title' => '', 'description' => 'The instance ID.'."\n" + ."\n" + .'> If you specify a bandwidth plan ID, you can query the latest bandwidth data for the bandwidth plan.', 'required' => false, 'example' => 'np-5hh4a31emkt6u****'."\n"], + 'maxItems' => 50, + 'title' => '', + 'description' => 'The list of instance IDs.', + 'example' => '', + 'required' => false, ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'NextTokenListResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The data returned by the operation.', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', - ], - 'Data' => [ - 'description' => 'The images.'."\n", + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '2B9E6946-0E2A-5D2B-B275-361DF81F****'], + 'Count' => ['description' => 'The number of records.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '100'], + 'NextToken' => ['description' => 'The token for the next query. If not all results are returned in a single query, the returned NextToken is not empty. You can use the returned NextToken in the next query to query the next page.', 'type' => 'string', 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], + 'MetricTotalModel' => [ + 'description' => 'The instance monitoring data.', 'type' => 'array', 'items' => [ - 'description' => 'The image.'."\n", + 'description' => 'The instance monitoring data.', 'type' => 'object', 'properties' => [ - 'AliUid' => [ - 'description' => 'The ID of the Alibaba Cloud account.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '117819727354****', - ], - 'Description' => [ - 'description' => 'The description of the image.'."\n", - 'type' => 'string', - 'example' => 'description', - ], - 'GmtCreate' => [ - 'description' => 'The time when the image was created.'."\n", - 'type' => 'string', - 'example' => '2024-02-01 10:56:36'."\n", - ], - 'GmtModified' => [ - 'description' => 'The time when the image was last modified.'."\n", - 'type' => 'string', - 'example' => '2024-02-01 10:56:36'."\n", - ], - 'ImageId' => [ - 'description' => 'The ID of the image.'."\n", - 'type' => 'string', - 'example' => 'imgc-075cllfeuazh****', - ], - 'ImageType' => [ - 'description' => 'The type of the image.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* User: custom images.'."\n" - .'* System: system images.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'User' => '', - 'System' => '', - ], - 'example' => 'System', - ], - 'Language' => [ - 'description' => 'The language of the image.'."\n", - 'type' => 'string', - 'example' => 'zh', - ], - 'ImageName' => [ - 'description' => 'The name of the image.'."\n", - 'type' => 'string', - 'example' => 'IMAGE', - ], - 'ImageRegionList' => [ - 'description' => 'The list of regions.'."\n", + 'AndroidInstanceId' => ['description' => 'For instance-level monitoring, the Cloud Phone instance ID is returned.'."\n" + .'For matrix-level monitoring, the matrix ID is returned.', 'type' => 'string', 'title' => '', 'example' => 'acp-fkuit0cmyru4p****'], + 'MetricModelList' => [ + 'description' => 'The monitoring data for metrics.', 'type' => 'array', 'items' => [ - 'description' => 'The region.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - ], - 'Status' => [ - 'description' => 'The state of the image.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* AVAILABLE: The image is available.'."\n" - .'* DELETE: The image is deleted.'."\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', - 'enumValueTitles' => [ - 'AVAILABLE' => '', - 'DELETE' => '', - 'INIT' => '', - 'CREATE_FAILED' => '', - 'CREATING' => '', - ], - 'example' => 'AVAILABLE', - ], - 'SystemType' => [ - 'title' => '操作系统类型,android 9, android 12', - 'description' => 'The OS type of the image.'."\n", - 'type' => 'string', - 'example' => 'Android 12', - ], - 'ImageRegionDistributeMap' => [ - 'title' => '镜像分发地域Map', - 'description' => 'The region where the image is distributed. The key is the region and the value is the distribution information.'."\n", - 'type' => 'object', - 'additionalProperties' => [ + 'description' => 'The monitoring data for the metric.', 'type' => 'object', 'properties' => [ - 'DistributeStatus' => [ - 'title' => '分发状态', - 'description' => 'The status of the image distribution task.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* AVAILABLE: The task is ready.'."\n" - .'* DELETE: The task is deleted.'."\n" - .'* INIT: The task is being initialized.'."\n" - .'* CREATE_FAILED: The task failed to be created.'."\n" - .'* CREATING: The task is being created.'."\n", - 'type' => 'string', - 'example' => 'AVAILABLE', - 'enumValueTitles' => [ - 'AVAILABLE' => '', - 'DELETE' => '', - 'INIT' => '', - 'CREATE_FAILED' => '', - 'CREATING' => '', + 'MetricName' => ['description' => 'The name of the metric.', 'type' => 'string', 'title' => '', 'example' => 'cpu_utilization'], + 'DataPoints' => [ + 'description' => 'The monitoring data points.', + 'type' => 'array', + 'items' => [ + 'description' => 'The monitoring data point.', + 'type' => 'object', + 'properties' => [ + 'Timestamp' => ['description' => 'The timestamp of the statistics. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1548777660000'], + 'Minimum' => ['description' => 'The minimum value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`bandwidth\\_package\\_usage\\_out\\` or \\`bandwidth\\_package\\_usage\\_in\\`.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '93.1'], + 'Average' => ['description' => 'The average value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`bandwidth\\_package\\_usage\\_out\\` or \\`bandwidth\\_package\\_usage\\_in\\`.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '99.52'], + 'Maximum' => ['description' => 'The maximum value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`bandwidth\\_package\\_usage\\_out\\` or \\`bandwidth\\_package\\_usage\\_in\\`.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '100'], + 'GpuId' => ['type' => 'string', 'description' => 'The GPU ID.', 'title' => '', 'example' => 'cpn-1t1bxvp9az2pk****-gpu-0'], + ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'Progress' => [ - 'title' => '进度', - 'description' => 'The distribution progress of the image.'."\n", - 'type' => 'string', - 'example' => '100%', - ], - ], - 'description' => 'The information about the image distribution task.'."\n", - ], - ], - 'ReleaseTime' => [ - 'description' => 'The time when the image was published.'."\n", - 'type' => 'string', - 'example' => '2024-07-25 10:06:45', - ], - 'RenderingType' => [ - 'description' => 'The rendering type.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* GPURemote'."\n" - .'* CPU'."\n" - .'* GPULocal'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'GPURemote' => 'GPURemote', - 'CPU' => 'CPU', - 'GPULocal' => 'GPULocal', - ], - 'example' => 'CPU', - 'enum' => [ - 'CPU', - 'GPULocal', - 'GPURemote', - ], - ], - 'ImageVersion' => [ - 'type' => 'string', - ], - 'ImageBizTags' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'type' => 'string', - ], - 'Value' => [ - 'type' => 'string', + 'ProcessLastInfos' => [ + 'description' => 'The process monitoring metrics.'."\n" + ."\n" + .'> This parameter is returned when the metric is \\`process\\_cpu\\` or \\`process\\_memory\\`.', + 'type' => 'array', + 'items' => [ + 'description' => 'The process monitoring metric.', + 'type' => 'object', + 'properties' => [ + 'Timestamp' => ['description' => 'The timestamp of the statistics. Unit: milliseconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1548777660000'], + 'Name' => ['description' => 'The process name.', 'type' => 'string', 'title' => '', 'example' => 'com.offerup'], + 'ProcessIds' => [ + 'description' => 'The list of process IDs.', + 'type' => 'array', + 'items' => ['description' => 'The process ID.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '100056'], + 'title' => '', + 'example' => '', + ], + 'MemoryUsage' => ['description' => 'The memory usage. Unit: %.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '50'], + 'CpuUsage' => ['description' => 'The CPU utilization. Unit: %.', 'type' => 'number', 'format' => 'double', 'title' => '', 'example' => '50'], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '30', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '620740FF-492F-5956-B1BA-361E966C0269', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2B9E6946-0E2A-5D2B-B275-361DF81F****\\",\\n \\"Count\\": 100,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MetricTotalModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-fkuit0cmyru4p****\\",\\n \\"MetricModelList\\": [\\n {\\n \\"MetricName\\": \\"cpu_utilization\\",\\n \\"DataPoints\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Minimum\\": 93.1,\\n \\"Average\\": 99.52,\\n \\"Maximum\\": 100,\\n \\"GpuId\\": \\"cpn-1t1bxvp9az2pk****-gpu-0\\"\\n }\\n ],\\n \\"ProcessLastInfos\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Name\\": \\"com.offerup\\",\\n \\"ProcessIds\\": [\\n 100056\\n ],\\n \\"MemoryUsage\\": 50,\\n \\"CpuUsage\\": 50\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeMetricLast', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"Data\\": [\\n {\\n \\"AliUid\\": 0,\\n \\"Description\\": \\"description\\",\\n \\"GmtCreate\\": \\"2024-02-01 10:56:36\\\\n\\",\\n \\"GmtModified\\": \\"2024-02-01 10:56:36\\\\n\\",\\n \\"ImageId\\": \\"imgc-075cllfeuazh****\\",\\n \\"ImageType\\": \\"System\\",\\n \\"Language\\": \\"zh\\",\\n \\"ImageName\\": \\"IMAGE\\",\\n \\"ImageRegionList\\": [\\n \\"cn-hangzhou\\"\\n ],\\n \\"Status\\": \\"AVAILABLE\\",\\n \\"SystemType\\": \\"Android 12\\",\\n \\"ImageRegionDistributeMap\\": {\\n \\"key\\": {\\n \\"DistributeStatus\\": \\"AVAILABLE\\",\\n \\"Progress\\": \\"100%\\"\\n }\\n },\\n \\"ReleaseTime\\": \\"2024-07-25 10:06:45\\",\\n \\"RenderingType\\": \\"CPU\\",\\n \\"ImageVersion\\": \\"20241204102337\\",\\n \\"ImageBizTags\\": [\\n {\\n \\"Key\\": \\"key1\\",\\n \\"Value\\": \\"value1\\"\\n }\\n ]\\n }\\n ],\\n \\"TotalCount\\": 30,\\n \\"RequestId\\": \\"620740FF-492F-5956-B1BA-361E966C0269\\"\\n}","type":"json"}]', - 'title' => 'DescribeImageList', ], - 'UpdateCustomImageName' => [ - 'summary' => 'Updates the name of a custom image.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeMetricList' => [ + 'summary' => 'Queries monitoring data for specified metrics, such as network bandwidth.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneCPBVX1', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'ImageId', + 'name' => 'MetricNames', 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the image.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'imgc-075cllfeuazh0****', + 'type' => 'array', + 'items' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The name of the metric.', + 'enumValueTitles' => [ + 'cpu_utilization' => 'CPU utilization', 'bandwidth_package_usage_out' => 'Outbound bandwidth of the bandwidth plan (for standard networks only)', 'diskusage_utilization' => 'Storage usage', 'memory_used_utilization' => 'Memory usage', 'intranet_out_rate' => 'Outbound bandwidth of the connection', 'gpu_memory_used_utilization' => 'GPU memory usage (for matrices only)', 'bandwidth_package_usage_in' => 'Inbound bandwidth of the bandwidth plan (for standard networks only)', 'process_memory' => 'Process memory usage', 'intranet_in_rate' => 'Inbound bandwidth of the connection', 'process_cpu' => 'Process CPU utilization', + 'gpu_used_utilization' => 'GPU usage (for matrices only)', + ], + 'title' => '', + 'example' => 'bandwidth_package_usage_in', + ], + 'required' => true, + 'maxItems' => 100, + 'description' => 'The monitoring metrics.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ImageName', + 'name' => 'AndroidInstanceIds', 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The name of the image.'."\n", - 'type' => 'string', + 'type' => 'array', + 'items' => ['type' => 'string', 'description' => 'For instance-level monitoring, enter a Cloud Phone instance ID.'."\n" + .'For matrix-level monitoring, enter a matrix ID.', 'required' => false, 'title' => '', 'example' => 'cpn-25nt4kk9whhok****'], + 'maxItems' => 50, + 'description' => 'For instance-level monitoring, enter a list of Cloud Phone instance IDs.'."\n" + ."\n" + .''."\n" + ."\n" + .'For matrix-level monitoring, enter a list of matrix IDs.'."\n" + ."\n" + .'', 'required' => false, - 'example' => 'imagename', - 'maxLength' => 30, - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '552B7EED-D434-511F-B838-29EA4E906034', - ], - ], + 'title' => '', + 'example' => '', ], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"552B7EED-D434-511F-B838-29EA4E906034\\"\\n}","type":"json"}]', - 'title' => 'UpdateCustomImageName', - ], - 'DistributeImage' => [ - 'summary' => 'Distributes an image.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], - ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone3OZQF8', + 'name' => 'InstanceIds', + 'in' => 'formData', + 'style' => 'repeatList', + 'schema' => [ + 'type' => 'array', + 'items' => ['type' => 'string', 'description' => 'The instance ID.'."\n" + ."\n" + .'> Enter a bandwidth plan ID to query bandwidth data for the bandwidth plan.', 'required' => false, 'title' => '', 'example' => 'np-5hh4a31emkt6u****'], + 'maxItems' => 50, + 'description' => 'A list of instance IDs.', + 'required' => false, + 'title' => '', + 'example' => '', + ], ], - ], - 'parameters' => [ [ - 'name' => 'DistributeRegionList', + 'name' => 'ProcessInfos', 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The regions to which you want to distribute an image.'."\n", 'type' => 'array', 'items' => [ - 'description' => 'The region to which you want to distribute an image.'."\n", - 'type' => 'string', + 'type' => 'object', + 'properties' => [ + 'ProcessName' => ['type' => 'string', 'description' => 'The process name.', 'required' => false, 'title' => '', 'example' => 'php-fpm'], + 'ProcessIds' => [ + 'type' => 'array', + 'items' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The process ID.', 'required' => false, 'title' => '', 'example' => 'approval-process-c47080c1f238e889'], + 'maxItems' => 100, + 'description' => 'A list of process IDs.', + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'A process monitoring metric.', 'required' => false, - 'example' => 'cn-shanghai', + 'title' => '', + 'example' => '', ], - 'required' => true, 'maxItems' => 100, - 'minItems' => 1, + 'description' => 'A list of process monitoring metrics.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ImageId', + 'name' => 'Period', 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the image that you want to distribute.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'imgc-075cllfeuazh0****', - ], + 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The statistic period of the monitoring data.'."\n" + ."\n" + .'Valid values: 60, 900, and 3600.'."\n" + ."\n" + .'Unit: seconds.', 'required' => false, 'title' => '', 'example' => '60'], ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1', - ], - ], - ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => ['type' => 'string', 'description' => 'The start time for the query.', 'required' => false, 'title' => '', 'example' => '2019-01-31 10:00:00'], ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1\\"\\n}","type":"json"}]', - 'title' => 'DistributeImage', - 'description' => 'After you distribute an image in supported regions, the distribution cannot be canceled.'."\n", - ], - 'DeleteImages' => [ - 'summary' => 'Deletes a custom image.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ [ - 'AK' => [], + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => ['type' => 'string', 'description' => 'The end time for the query.', 'required' => false, 'title' => '', 'example' => '2019-01-31 11:00:00'], ], - ], - 'operationType' => 'write', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'delete', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneXWUML7', + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['type' => 'string', 'description' => 'A token that marks the position from which the query starts. Leave it empty to start from the beginning.', 'required' => false, 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****'], ], - ], - 'parameters' => [ [ - 'name' => 'ImageIds', + 'name' => 'Length', 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'The IDs of the images.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the image.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'imgc-kjsdfkjsk****', - ], - 'required' => true, - ], + 'schema' => ['type' => 'string', 'description' => 'The number of entries to return on each page for a paged query.'."\n" + ."\n" + .'Default value: 1000. This means that 1000 monitoring data records are returned per page.', 'required' => false, 'title' => '', 'example' => '1000'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The images.'."\n", - 'type' => 'object', - 'properties' => [ - 'SuccessDeleteImageIds' => [ - 'title' => '成功删除的镜像id', - 'description' => 'The IDs of the images that are successfully deleted.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the image that is successfully deleted.'."\n", - 'type' => 'string', - 'example' => 'imgc-jkafjsjk****', - ], - ], - 'FailDeleteImageIds' => [ - 'title' => '失败删除的镜像id', - 'description' => 'The IDs of the images that failed to be deleted.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the image that failed to be deleted.'."\n", - 'type' => 'string', - 'example' => 'imgc-sjkdfs8****', + 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The request ID.', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'], + 'Count' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The number of records.', 'title' => '', 'example' => '1'], + 'NextToken' => ['type' => 'string', 'description' => 'The token for the next query. If not all results are returned, this parameter is not empty. Use the returned token to query the next page.', 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], + 'MetricTotalModel' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AndroidInstanceId' => ['type' => 'string', 'description' => 'For instance-level monitoring, the Cloud Phone instance ID is returned.'."\n" + .'For matrix-level monitoring, the matrix ID is returned.', 'title' => '', 'example' => 'acp-fkuit0cmyru4p****'], + 'MetricModelList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MetricName' => ['type' => 'string', 'description' => 'The name of the metric.', 'title' => '', 'example' => 'cpu_utilization'], + 'ProcessName' => ['type' => 'string', 'description' => 'The process name.', 'title' => '', 'example' => 'Required'], + 'DataPoints' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Timestamp' => ['type' => 'integer', 'format' => 'int64', 'description' => 'The timestamp of the statistics. Unit: milliseconds.', 'title' => '', 'example' => '1548777660000'], + 'Minimum' => ['type' => 'number', 'format' => 'double', 'description' => 'The minimum value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`bandwidth\\_package\\_usage\\_out\\` or \\`bandwidth\\_package\\_usage\\_in\\`.', 'title' => '', 'example' => '93.1'], + 'Average' => ['type' => 'number', 'format' => 'double', 'description' => 'The average value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`bandwidth\\_package\\_usage\\_out\\` or \\`bandwidth\\_package\\_usage\\_in\\`.', 'title' => '', 'example' => '99.52'], + 'Maximum' => ['type' => 'number', 'format' => 'double', 'description' => 'The maximum value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`bandwidth\\_package\\_usage\\_out\\` or \\`bandwidth\\_package\\_usage\\_in\\`.', 'title' => '', 'example' => '100'], + 'Value' => ['type' => 'number', 'format' => 'double', 'description' => 'The data value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`bandwidth\\_package\\_usage\\_out\\` or \\`bandwidth\\_package\\_usage\\_in\\`.', 'title' => '', 'example' => 'tf-testacc-oos-parameter'], + 'GpuId' => ['type' => 'string', 'description' => 'The GPU ID.', 'title' => '', 'example' => 'cpn-1t1bxvp9az2pk****-gpu-0'."\n"], + ], + 'description' => 'A monitoring data point.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of monitoring data points.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The monitoring data for the metric.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The monitoring data for metrics.', + 'title' => '', + 'example' => '', ], + 'InstanceId' => ['type' => 'string', 'description' => 'The instance ID.', 'title' => '', 'example' => 'np-5hh4a31emkt6u****'."\n"], ], + 'description' => 'The instance monitoring data.', + 'title' => '', + 'example' => '', ], - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '4610632D-D661-5982-B3D7-5D3FD183F595', + 'description' => 'The instance monitoring data.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The data returned by the operation.', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"SuccessDeleteImageIds\\": [\\n \\"imgc-jkafjsjk****\\"\\n ],\\n \\"FailDeleteImageIds\\": [\\n \\"imgc-sjkdfs8****\\"\\n ]\\n },\\n \\"RequestId\\": \\"4610632D-D661-5982-B3D7-5D3FD183F595\\"\\n}","type":"json"}]', - 'title' => 'DeleteImages', - 'description' => 'You cannot delete an image that is currently in use by an instance group.'."\n", - ], - 'CreateApp' => [ - 'summary' => 'Creates an Android application.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeMetricList', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Count\\": 1,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MetricTotalModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-fkuit0cmyru4p****\\",\\n \\"MetricModelList\\": [\\n {\\n \\"MetricName\\": \\"cpu_utilization\\",\\n \\"ProcessName\\": \\"Required\\",\\n \\"DataPoints\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Minimum\\": 93.1,\\n \\"Average\\": 99.52,\\n \\"Maximum\\": 100,\\n \\"Value\\": 0,\\n \\"GpuId\\": \\"cpn-1t1bxvp9az2pk****-gpu-0\\\\n\\"\\n }\\n ]\\n }\\n ],\\n \\"InstanceId\\": \\"np-5hh4a31emkt6u****\\\\n\\"\\n }\\n ]\\n}","type":"json"}]', + 'translator' => 'manual', + ], + 'DescribeMetricTop' => [ + 'summary' => 'Queries the latest monitoring data for metrics such as instance network bandwidth and returns the results in a sorted list.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneRPX4AN', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'AppName', - 'in' => 'query', - 'schema' => [ - 'title' => 'App名称', - 'description' => 'The name of the application.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Application Name 1'."\n", - ], - ], - [ - 'name' => 'FileName', - 'in' => 'query', - 'schema' => [ - 'title' => 'App文件名称', - 'description' => 'The name used by the app file in Object Storage Service (OSS). This parameter, combined with `FilePath`, uniquely identifies the OSS path of the app file.'."\n" - ."\n" - .'> '."\n" - ."\n" - .'* If you want to pass in an app from the Alibaba Cloud Workspace Application Center, configure the `FileName` and `FilePath` parameters. Alternatively, configure the `OssAppUrl` parameter. The FileName and FilePath parameters takes precedence over the OssAppUrl parameter.'."\n" - ."\n" - .'* Log on to the [Elastic Desktop Service (EDS) Enterprise](https://eds.console.aliyun.com/osshelp) console, upload the app file to the Application Center according to the on-screen instructions, and then retrieve the parameter value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testApp.apk', - ], - ], - [ - 'name' => 'FilePath', - 'in' => 'query', - 'schema' => [ - 'title' => 'App文件地址', - 'description' => 'The OSS bucket path to the app file. This parameter, combined with `FileName`, uniquely identifies the OSS path of the app file.'."\n" - ."\n" - .'> '."\n" - ."\n" - .'* If you want to pass in an app from the Alibaba Cloud Workspace Application Center, configure the `FileName` and `FilePath` parameters. Alternatively, configure the `OssAppUrl` parameter. The FileName and FilePath parameters takes precedence over the OssAppUrl parameter.'."\n" - ."\n" - .'* Log on to the [EDS Enterprise](https://eds.console.aliyun.com/osshelp) console, upload the app file to the Application Center according to the on-screen instructions, and then retrieve the parameter value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'tenant/1642150****/', - ], - ], - [ - 'name' => 'IconUrl', - 'in' => 'query', + 'name' => 'MetricNames', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'title' => 'App icon地址', - 'description' => 'The icon URL of the application.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'https://www.example.com/icon.png', + 'type' => 'array', + 'items' => [ + 'type' => 'string', + 'required' => false, + 'description' => 'The name of the metric.', + 'enumValueTitles' => ['instance_out_traffic' => 'Outbound bandwidth (for standard networks only)', 'instance_in_traffic' => 'Inbound bandwidth (for standard networks only)'], + 'title' => '', + 'example' => 'instance_in_traffic', + ], + 'required' => true, + 'maxItems' => 100, + 'description' => 'The list of metrics.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'OssAppUrl', - 'in' => 'query', + 'name' => 'AndroidInstanceIds', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'title' => 'App oss地址', - 'description' => 'The OSS bucket endpoint of the app file.'."\n" + 'type' => 'array', + 'items' => ['type' => 'string', 'description' => 'For instance-level monitoring, specify the cloud phone instance ID.'."\n" + .'For matrix-level monitoring, specify the matrix ID.', 'required' => false, 'title' => '', 'example' => 'acp-sgicbcdadjs****'], + 'maxItems' => 50, + 'description' => 'For instance-level monitoring, specify a list of cloud phone instance IDs.'."\n" ."\n" - .'> '."\n" + .''."\n" ."\n" - .'* If you want to pass in an app from the Alibaba Cloud Workspace Application Center, configure the `FileName` and `FilePath` parameters. Alternatively, configure the `OssAppUrl` parameter. The FileName and FilePath parameters takes precedence over the OssAppUrl parameter.'."\n" + .'For matrix-level monitoring, specify a list of matrix IDs.'."\n" ."\n" - .'* Log on to the [EDS Enterprise](https://eds.console.aliyun.com/osshelp) console, upload the app file to the Application Center according to the on-screen instructions, and then retrieve the parameter value.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'http://testApp.apk', - ], - ], - [ - 'name' => 'BizRegionId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'cn-hangzhou', - ], - ], - [ - 'name' => 'InstallParam', - 'in' => 'query', - 'schema' => [ - 'description' => 'The parameters used for installing the application. By default, the `-r` parameter is included when you install an application.'."\n", - 'type' => 'string', + .'', 'required' => false, - 'example' => '-d', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'Description', - 'in' => 'query', - 'schema' => [ - 'description' => 'The description of the application.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test', - ], + 'name' => 'Period', + 'in' => 'formData', + 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The statistical period of the monitoring data.'."\n" + .'Unit: seconds.', 'required' => false, 'title' => '', 'example' => '60'], ], [ - 'name' => 'CustomAppInfo', - 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => 'The information about the custom app.'."\n" - ."\n" - .'> '."\n" - ."\n" - .'* If you want to pass in a custom app, configure the `CustomAppInfo` parameter. Take note that the six fields within it are mandatory.'."\n" - ."\n" - .'* A custom app has a higher priority than an app from the Alibaba Cloud Workspace Application Center. If you configure the `CustomAppInfo` parameter, the `FileName` and `FilePath` pair or the `OssAppUrl` will not take effect.'."\n", - 'type' => 'object', - 'properties' => [ - 'DownloadUrl' => [ - 'description' => 'The download URL of the app.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'http://testApp.apk', - 'maxLength' => 1024, - ], - 'Version' => [ - 'description' => 'The version of the app.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1.0.0', - 'maxLength' => 64, - ], - 'VersionCode' => [ - 'description' => 'The code of the app version.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '10000', - 'maxLength' => 64, - ], - 'PackageName' => [ - 'description' => 'The name of the app package.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'com.example.demo', - 'maxLength' => 128, - ], - 'ApkSize' => [ - 'description' => 'The size of the .apk file. Unit: MB.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '10', - 'maxLength' => 128, - ], - 'Md5' => [ - 'description' => 'The MD5 value of the .apk file.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'df3f46ce5844ddb278f14c5a9cd2****', - 'maxLength' => 128, - ], - ], - 'required' => false, - ], + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => ['type' => 'string', 'description' => 'The start time of the query.', 'required' => false, 'title' => '', 'example' => '2019-01-31 10:00:00'], ], [ - 'name' => 'SignApk', - 'in' => 'query', + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => ['type' => 'string', 'description' => 'The end time of the query.', 'required' => false, 'title' => '', 'example' => '2019-01-31 11:00:00'], + ], + [ + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['type' => 'string', 'description' => 'The token that marks the start of the next page of results. If you leave this parameter empty, the query starts from the beginning.', 'required' => false, 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****'], + ], + [ + 'name' => 'Length', + 'in' => 'formData', + 'schema' => ['type' => 'string', 'description' => 'The number of entries to return on each page. This parameter is used for paged queries.'."\n" + ."\n" + .'> The maximum value is 100 when the metric is \\`instance\\_in\\_traffic\\` or \\`instance\\_out\\_traffic\\`.', 'required' => false, 'title' => '', 'example' => '100'], + ], + [ + 'name' => 'InstanceIds', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'string', + 'type' => 'array', + 'items' => ['type' => 'string', 'description' => 'The instance ID.'."\n" + ."\n" + .'> Specify a bandwidth plan ID to query the top N (where N is less than or equal to 100) bandwidth data points for the plan. The data is sorted by bandwidth in descending order.', 'required' => false, 'title' => '', 'example' => 'np-5hh4a31emkt6u****'], + 'maxItems' => 50, + 'description' => 'The list of instance IDs.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'AppId' => [ - 'description' => 'The ID of the application.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1234', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****', + 'RequestId' => ['type' => 'string', 'title' => '', 'description' => 'The request ID.', 'example' => '4610632D-D661-5982-B3D7-5D3FD183F****'], + 'Count' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The number of entries returned.', 'title' => '', 'example' => '1'], + 'NextToken' => ['type' => 'string', 'description' => 'The token to retrieve the next page of results. If the results are not fully returned in a single query, this parameter is not empty. You can use this token in a subsequent query to retrieve the next page of results.', 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], + 'MetricTotalModel' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AndroidInstanceId' => ['type' => 'string', 'description' => 'For instance-level monitoring, this is the cloud phone instance ID.'."\n" + .'For matrix-level monitoring, this is the matrix ID.', 'title' => '', 'example' => 'acp-fkuit0cmyru4p****'], + 'InstanceId' => ['type' => 'string', 'description' => 'The instance ID.', 'title' => '', 'example' => 'np-5hh4a31emkt6u****'], + 'MetricModelList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MetricName' => ['type' => 'string', 'description' => 'The name of the metric.', 'title' => '', 'example' => 'instance_in_traffic'], + 'DataPoints' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Timestamp' => ['type' => 'integer', 'format' => 'int64', 'description' => 'The timestamp of the data point. Unit: milliseconds.', 'title' => '', 'example' => '1548777660000'], + 'Minimum' => ['type' => 'number', 'format' => 'double', 'description' => 'The minimum value.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`instance\\_in\\_traffic\\` or \\`instance\\_out\\_traffic\\`.', 'title' => '', 'example' => '93.1'], + 'Average' => ['type' => 'number', 'format' => 'double', 'description' => 'The average value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`instance\\_in\\_traffic\\` or \\`instance\\_out\\_traffic\\`.', 'title' => '', 'example' => '99.52'], + 'Maximum' => ['type' => 'number', 'format' => 'double', 'description' => 'The maximum value. Unit: %.'."\n" + ."\n" + .'> The unit is bps when the metric is \\`instance\\_in\\_traffic\\` or \\`instance\\_out\\_traffic\\`.', 'title' => '', 'example' => '100'], + 'Name' => ['type' => 'string', 'description' => 'The name.', 'title' => '', 'example' => 'cloudPhone-****'], + 'Id' => ['type' => 'string', 'description' => 'The ID.', 'title' => '', 'example' => 'acp-fkuit0cmyru4p****'."\n"], + 'Properties' => ['type' => 'string', 'description' => 'The properties.'."\n" + ."\n" + .'> A JSON string that contains the extension properties.', 'title' => '', 'example' => '{"IP":"192.168.*.***"}'], + ], + 'description' => 'A monitoring data point.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The monitoring data points.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The monitoring data of metrics.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The monitoring data of metrics.', + 'title' => '', + 'example' => '', + ], + ], + 'description' => 'The instance monitoring data.', + 'title' => '', + 'example' => '', + ], + 'description' => 'The instance monitoring data.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The data returned.', + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AppId\\": 1234,\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\"\\n}","type":"json"}]', - 'title' => 'CreateApp', - 'description' => 'When creating an app, you can provide app information to the system in one of the following ways:'."\n" - ."\n" - .'* Way 1: Apps from the Application Center'."\n" - ."\n" - .' * You can use one of the following methods:'."\n" - ."\n" - .' * Method 1: Pass in the `FileName` and `FilePath` parameters at the same time.'."\n" - .' * Method 2: Pass in the `OssAppUrl` parameter'."\n" - ."\n" - .' * Rule: If your app is from the Alibaba Cloud Workspace Application Center, you must use either Method 1 or Method 2. If both are used, Method 1 takes priority.'."\n" - ."\n" - .' * Condition: Before you proceed, log on to the [Elastic Desktop Service (EDS) Enterprise console](https://eds.console.aliyun.com/osshelp) and follow the on-screen instructions to upload the app file to the Application Center to obtain the values of the `FileName`, `FilePath`, and `OssAppUrl` parameters.'."\n" - ."\n" - .'* Way 2: Custom apps'."\n" - ."\n" - .' * Pass in the `CustomAppInfo` parameter.'."\n" - .' * Rule: If you pass in the `CustomAppInfo` parameter, all six fields within it are required.'."\n" - ."\n" - .'> If Way 1 and Way 2 are adopted simultaneously, the information from Way 2 takes priority.'."\n", - ], - 'DescribeApps' => [ - 'summary' => 'Queries applications.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeMetricTop', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4610632D-D661-5982-B3D7-5D3FD183F****\\",\\n \\"Count\\": 1,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MetricTotalModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-fkuit0cmyru4p****\\",\\n \\"InstanceId\\": \\"np-5hh4a31emkt6u****\\",\\n \\"MetricModelList\\": [\\n {\\n \\"MetricName\\": \\"instance_in_traffic\\",\\n \\"DataPoints\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Minimum\\": 93.1,\\n \\"Average\\": 99.52,\\n \\"Maximum\\": 100,\\n \\"Name\\": \\"cloudPhone-****\\",\\n \\"Id\\": \\"acp-fkuit0cmyru4p****\\\\n\\",\\n \\"Properties\\": \\"{\\\\\\"IP\\\\\\":\\\\\\"192.168.*.***\\\\\\"}\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeMobileAgentPackage' => [ + 'summary' => 'Retrieves the details of one or more node packages.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -7848,444 +6787,491 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone4KHDE1', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], ], 'parameters' => [ [ - 'name' => 'AppIdList', + 'name' => 'PackageIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the applications.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the application.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1234', - ], - 'required' => false, + 'items' => ['description' => 'The package ID.', 'type' => 'string', 'required' => false, 'example' => 'cmag-0c1g77wjljl9hc****', 'title' => ''], 'maxItems' => 100, - 'minItems' => 1, + 'description' => 'An array of package IDs.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'AppName', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The name of the application.'."\n", - 'type' => 'string', + 'type' => 'array', + 'items' => ['description' => 'The node instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-itoxpeisht7if****', 'title' => ''], + 'maxItems' => 1000, + 'description' => 'An array of node instance IDs.', 'required' => false, - 'example' => 'defaultAppName', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'BizRegionId', + 'name' => 'PackageSpec', 'in' => 'query', - 'schema' => [ - 'type' => 'string', - 'required' => false, - 'description' => 'Region id.', - 'example' => 'cn-hangzhou', - ], + 'schema' => ['description' => 'The package specification.', 'type' => 'string', 'required' => false, 'example' => 'advanced', 'title' => ''], ], [ - 'name' => 'Status', + 'name' => 'PackageStatus', 'in' => 'query', - 'schema' => [ - 'description' => 'The status of the application.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* FAILED: The application failed to be created.'."\n" - .'* NORMAL: The application is available.'."\n" - .'* CREATING: The application is being created.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'FAILED' => '', - 'NORMAL' => '', - 'CREATING' => '', - ], - 'example' => 'NORMAL', - ], + 'schema' => ['description' => 'The package status.', 'type' => 'string', 'required' => false, 'example' => 'ACTIVE', 'title' => ''], ], [ - 'name' => 'InstallationStatus', + 'name' => 'PageNum', 'in' => 'query', - 'schema' => [ - 'description' => 'The installation/uninstallation status of the application.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* INSTALLFAILED: The application failed to be installed.'."\n" - .'* UNINSTALLING: The application is being uninstalled.'."\n" - .'* INSTALLING: The application is being installed.'."\n" - .'* UNINSTALLED: The application is uninstalled.'."\n" - .'* INSTALLED: The application is installed.'."\n" - .'* UNINSTALLFAILED: The application failed to be uninstalled.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'INSTALLFAILED' => '', - 'UNINSTALLING' => '', - 'INSTALLING' => '', - 'UNINSTALLED' => '', - 'INSTALLED' => '', - 'UNINSTALLFAILED' => '', - ], - 'example' => 'INSTALLING', - ], + 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'MaxResults', + 'name' => 'PageSize', 'in' => 'query', + 'schema' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'example' => '10', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC****'], + 'Code' => ['description' => 'The status code. A value of 200 indicates that the request was successful.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'string', 'example' => '30', 'title' => ''], + 'PackageList' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'PackageId' => ['description' => 'The package ID.', 'type' => 'string', 'example' => 'cmag-bp19i1yxu60r7twy****', 'title' => ''], + 'PackageStatus' => ['description' => 'The package status.', 'type' => 'string', 'example' => 'ACTIVE', 'title' => ''], + 'InstanceIds' => [ + 'type' => 'array', + 'items' => ['description' => 'The node instance ID.', 'type' => 'string', 'example' => 'acp-iuyb1zv1ap6nb****', 'title' => ''], + 'description' => 'The list of node instance IDs.', + 'title' => '', + 'example' => '', + ], + 'PackageCredit' => ['description' => 'The total package credit.', 'type' => 'string', 'example' => '8000', 'title' => ''], + 'UsedCredit' => ['description' => 'The amount of credit used.', 'type' => 'string', 'example' => '1000', 'title' => ''], + 'ExpiredAt' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2026-10-30 00:00:00 ', 'title' => ''], + 'PackageSpec' => ['description' => 'The package specification.', 'type' => 'string', 'example' => 'advanced', 'title' => ''], + 'PackageSpecName' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'description' => 'The details of a package.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of packages.', + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'description' => 'The data returned.', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeMobileAgentPackage', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\",\\n \\"TotalCount\\": \\"30\\",\\n \\"PackageList\\": [\\n {\\n \\"PackageId\\": \\"cmag-bp19i1yxu60r7twy****\\",\\n \\"PackageStatus\\": \\"ACTIVE\\",\\n \\"InstanceIds\\": [\\n \\"acp-iuyb1zv1ap6nb****\\"\\n ],\\n \\"PackageCredit\\": \\"8000\\",\\n \\"UsedCredit\\": \\"1000\\",\\n \\"ExpiredAt\\": \\"2026-10-30 00:00:00 \\",\\n \\"PackageSpec\\": \\"advanced\\",\\n \\"PackageSpecName\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeRegions' => [ + 'summary' => 'Query available regions.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneTVG3Y7'], + ], + 'parameters' => [ [ - 'name' => 'MD5', + 'name' => 'AcceptLanguage', 'in' => 'query', 'schema' => [ + 'description' => 'The display language of the console. Valid values:'."\n" + ."\n" + .'- cn: Simplified Chinese'."\n" + ."\n" + .'- en: English', + 'enumValueTitles' => ['en' => 'en', 'cn' => 'cn'], 'type' => 'string', 'required' => false, - 'description' => 'The value of MD5.', - 'example' => 'THCIEH73KEK3334', + 'example' => 'cn', + 'title' => '', ], ], [ - 'name' => 'AppType', + 'name' => 'SaleMode', 'in' => 'query', 'schema' => [ + 'description' => 'The sales mode.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'- Instance: the instance group mode. \\[Default]'."\n" + ."\n" + .'- Node: the matrix mode. \\[Whitelist required]', + 'enumValueTitles' => ['Instance' => 'Instance', 'Node' => 'Node'], 'type' => 'string', + 'enum' => ['Instance', 'Node'], + 'required' => false, + 'example' => 'Instance', + 'title' => '', ], ], ], 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'CB95E410-FD1D-53C5-9F7D-93CC44D7****', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'string', - 'example' => '10', - ], - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', - ], - 'Data' => [ - 'description' => 'The objects that are returned.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'AppName' => [ - 'description' => 'The name of the application.'."\n", - 'type' => 'string', - 'example' => 'testapp', - ], - 'AppId' => [ - 'description' => 'The ID of the application.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10404', - ], - 'AndroidAppVersion' => [ - 'description' => 'The version of the application.'."\n", - 'type' => 'string', - 'example' => '1.0.0', - ], - 'IconUrl' => [ - 'description' => 'The icon URL of the application.'."\n", - 'type' => 'string', - 'example' => 'https://test.png', - ], - 'InstanceGroupList' => [ - 'description' => 'The list of instance groups where the application is installed.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group where the application is installed.'."\n", - 'type' => 'string', - 'example' => 'ag-fasf****', - ], - ], - 'GmtCreate' => [ - 'description' => 'The time when the application was created.'."\n", - 'type' => 'string', - 'example' => '2022-08-11 17:45:03', - ], - 'GmtModified' => [ - 'description' => 'The time when the application was last modified.'."\n", - 'type' => 'string', - 'example' => '2022-08-11 17:45:03', - ], - 'Description' => [ - 'description' => 'The description of the application.'."\n", - 'type' => 'string', - 'example' => 'default description.', - ], - 'Status' => [ - 'description' => 'The status of the application.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* FAILED: The application failed to be created.'."\n" - .'* NORMAL: The application is available.'."\n" - .'* CREATING: The application is being created.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'FAILED' => '', - 'NORMAL' => '', - 'CREATING' => '', - ], - 'example' => 'NORMAL', - ], - 'InstallationStatus' => [ - 'description' => 'The installation/uninstallation status of the application.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* INSTALLFAILED: The application failed to be installed.'."\n" - .'* UNINSTALLING: The application is being uninstalled.'."\n" - .'* INSTALLING: The application is being installed.'."\n" - .'* UNINSTALLED: The application is uninstalled.'."\n" - .'* INSTALLED: The application is installed.'."\n" - .'* UNINSTALLFAILED: The application failed to be uninstalled.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'INSTALLFAILED' => '', - 'UNINSTALLING' => '', - 'INSTALLING' => '', - 'UNINSTALLED' => '', - 'INSTALLED' => '', - 'UNINSTALLFAILED' => '', - ], - 'example' => 'INSTALLING', - ], - 'BizRegionId' => [ - 'type' => 'string', - 'example' => 'cn-hangzhou', - 'description' => 'Region id.', - ], - 'PackageName' => [ - 'type' => 'string', - 'description' => 'The name of the application package.'."\n", - 'example' => 'cn.rdstar.rdstarandroid', - ], - 'ApkSize' => [ - 'type' => 'string', - 'description' => 'Apk size.', - 'example' => '10244893', - ], - 'MD5' => [ - 'type' => 'string', - 'description' => 'The value of MD5.', - 'example' => 'THCIEH73KEK3334', - ], - 'AppType' => [ - 'type' => 'string', - ], + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'Return parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A87B3769-0D05-5383-B236-5798B455****'], + 'RegionModels' => [ + 'description' => 'Available regions.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'RegionName' => ['description' => 'The region name.', 'type' => 'string', 'example' => 'China (Hangzhou)', 'title' => ''], ], 'description' => '', + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A87B3769-0D05-5383-B236-5798B455****\\",\\n \\"RegionModels\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"RegionName\\": \\"China (Hangzhou)\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'Query Available Regions', + 'changeSet' => [ + ['createdAt' => '2025-01-22T12:26:48.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-11-07T12:32:00.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB95E410-FD1D-53C5-9F7D-93CC44D7****\\",\\n \\"TotalCount\\": \\"10\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"Data\\": [\\n {\\n \\"AppName\\": \\"testapp\\",\\n \\"AppId\\": 10404,\\n \\"AndroidAppVersion\\": \\"1.0.0\\",\\n \\"IconUrl\\": \\"https://test.png\\",\\n \\"InstanceGroupList\\": [\\n \\"ag-fasf****\\"\\n ],\\n \\"GmtCreate\\": \\"2022-08-11 17:45:03\\",\\n \\"GmtModified\\": \\"2022-08-11 17:45:03\\",\\n \\"Description\\": \\"CustomApp\\",\\n \\"Status\\": \\"NORMAL\\",\\n \\"InstallationStatus\\": \\"INSTALLING\\",\\n \\"BizRegionId\\": \\"cn-hangzhou\\",\\n \\"PackageName\\": \\"com.example.chinalife\\",\\n \\"ApkSize\\": \\"2.7\\",\\n \\"MD5\\": \\"009ee07fe13a29fa0c180ed0b6bc****\\",\\n \\"AppType\\": \\"Normal\\"\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'DescribeApps', + 'translator' => 'manual', ], - 'ModifyApp' => [ - 'summary' => 'Modify attributes of an application.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeSpec' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneQ1CSHT', 'FEATUREcloudphoneM9M7K0', 'FEATUREcloudphone3VSOTB', 'FEATUREcloudphone32DVRA', 'FEATUREcloudphoneVYV97B'], ], 'parameters' => [ [ - 'name' => 'AppId', + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'SpecIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the application.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'description' => 'A list of specification IDs.', + 'type' => 'array', + 'items' => [ + 'description' => 'The specification ID.', + 'enumValueTitles' => ['acp.perf.large' => 'compute-optimized', 'acp.basic.small' => 'lightweight', 'acp.std.small' => 'general-purpose', 'acp.std.large' => 'standard', 'acp.perf.small' => 'enhanced'], + 'type' => 'string', + 'required' => false, + 'example' => 'acp.basic.small', + 'title' => '', + ], 'required' => false, - 'example' => '1234', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'AppName', + 'name' => 'SpecType', 'in' => 'query', 'schema' => [ - 'description' => 'The name of the application.'."\n", + 'description' => 'The specification type.', + 'enumValueTitles' => ['CPU' => 'CPU specifications', 'GPU' => 'GPU specifications'], 'type' => 'string', 'required' => false, - 'example' => 'defaultAppName', + 'example' => 'CPU', + 'title' => '', ], ], [ - 'name' => 'IconUrl', + 'name' => 'SpecStatus', 'in' => 'query', 'schema' => [ - 'description' => 'The URL of the icon.'."\n", + 'description' => 'The specification status.', + 'enumValueTitles' => ['Unsupported' => 'Unsupported', 'Available' => 'Available'], 'type' => 'string', 'required' => false, - 'example' => 'https://defaultIcon.png', + 'example' => 'Available', + 'title' => '', ], ], [ - 'name' => 'Description', + 'name' => 'SaleMode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The purchase mode of the cloud phone.', + 'enumValueTitles' => ['Instance' => 'instance group mode (default)', 'Node' => 'cloud phone matrix mode (whitelist feature)'], + 'type' => 'string', + 'enum' => ['Instance', 'Node'], + 'required' => false, + 'example' => 'Instance', + 'title' => '', + ], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of entries to return per page. Valid values: 1 to 100. Default value: 100.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '0', 'required' => false, 'example' => '20', 'title' => ''], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The position from which to start the query. Leave this parameter empty to query from the beginning.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', 'title' => ''], + ], + [ + 'name' => 'MatrixSpec', 'in' => 'query', 'schema' => [ - 'description' => 'The description of the application.'."\n", + 'description' => 'The cloud phone matrix specification.', + 'enumValueTitles' => ['cpm.gn6.gx1' => 'cpm.gn6.gx1'], 'type' => 'string', + 'enum' => ['cpm.gn6.gx2', 'cpm.gn6.gx1', 'cpm.8yx.gx1', 'cpm.gx8.16xlarge', 'cpm.gx7.10xlarge'], 'required' => false, - 'example' => 'default description.', + 'example' => 'cpm.gx7.10xlarge', + 'title' => '', ], ], + [ + 'name' => 'ChargeType', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '83418504-5A82-5896-A24C-B2D468F0****', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'D9888DAD-331E-5FBC-B5A0-F2445115****'], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], + 'NextToken' => ['description' => 'The token to use for the next request to retrieve a new page of results. If this parameter is empty, all results have been returned.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****', 'title' => ''], + 'SpecInfoModel' => [ + 'description' => 'The specification information.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'SpecId' => ['description' => 'The specification ID.', 'type' => 'string', 'example' => 'acp.basic.small', 'title' => ''], + 'Core' => ['description' => 'The number of CPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], + 'Memory' => ['description' => 'The memory size in GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '16', 'title' => ''], + 'SystemDiskSize' => ['description' => 'The size of the system disk, in GB.', 'type' => 'integer', 'format' => 'int32', 'example' => '32', 'title' => ''], + 'SpecType' => ['description' => 'The specification type.', 'type' => 'string', 'example' => 'ARM', 'title' => ''], + 'SpecStatus' => ['description' => 'The specification status.', 'type' => 'string', 'example' => 'Available', 'title' => ''], + 'PhoneCount' => ['description' => 'The number of instances.', 'type' => 'string', 'example' => '2', 'title' => ''], + 'Resolution' => ['description' => 'The resolution of the cloud phone instance.', 'type' => 'string', 'example' => '1920*1080', 'title' => ''], + 'MaxPhoneCount' => ['description' => 'The maximum number of instances.', 'type' => 'string', 'example' => '40', 'title' => ''], + 'MinPhoneCount' => ['description' => 'The minimum number of instances.', 'type' => 'string', 'example' => '4', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"83418504-5A82-5896-A24C-B2D468F0****\\"\\n}","type":"json"}]', - 'title' => 'ModifyApp', - ], - 'DeleteApps' => [ - 'summary' => 'Deletes an application. Before you delete an application, make sure that the application is not installed on any instances.', - 'methods' => [ - 'post', - 'get', + 'title' => 'DescribeSpec', + 'summary' => 'Queries the available specifications for cloud phones. This information is required to create an instance. For the cloud phone matrix mode, this operation also returns the minimum and maximum number of instances allowed per matrix.', + 'changeSet' => [ + ['createdAt' => '2025-07-22T07:17:49.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-06-04T07:13:57.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-03-14T10:54:56.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-22T12:26:48.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-09-26T12:10:24.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D9888DAD-331E-5FBC-B5A0-F2445115****\\",\\n \\"TotalCount\\": 4,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****\\",\\n \\"SpecInfoModel\\": [\\n {\\n \\"SpecId\\": \\"acp.basic.small\\",\\n \\"Core\\": 8,\\n \\"Memory\\": 16,\\n \\"SystemDiskSize\\": 32,\\n \\"SpecType\\": \\"ARM\\",\\n \\"SpecStatus\\": \\"Available\\",\\n \\"PhoneCount\\": \\"2\\",\\n \\"Resolution\\": \\"1920*1080\\",\\n \\"MaxPhoneCount\\": \\"40\\",\\n \\"MinPhoneCount\\": \\"4\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'DescribeSystemPropertyTemplates' => [ + 'summary' => 'Describes system property templates.', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'AppIdList', + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of entries to return for a single request.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '0', 'required' => false, 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The starting position for reading. If this parameter is empty, reading starts from the beginning.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6k****', 'title' => ''], + ], + [ + 'name' => 'TemplateIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the applications.'."\n", + 'description' => 'The property template ID.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the application.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1234', - ], + 'items' => ['description' => 'The IDs of the templates to query.', 'type' => 'string', 'required' => false, 'example' => 'ap-0caoenwutkkx****', 'title' => ''], 'required' => false, 'maxItems' => 100, - 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => ['description' => 'The template name.', 'type' => 'string', 'example' => 'Template 1', 'required' => false, 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '310A783E-CC46-5452-A8A3-71AE5DB5****', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], + 'NextToken' => ['description' => 'The token used to start the next query. An empty value indicates that all results have been returned.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU****', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'SystemPropertyTemplateModel' => [ + 'description' => 'The list of property template objects.', + 'type' => 'array', + 'items' => [ + 'description' => 'The property template object.', + 'type' => 'object', + 'properties' => [ + 'TemplateId' => ['description' => 'The property template ID.', 'type' => 'string', 'example' => 'ap-0caoenwutkkx****', 'title' => ''], + 'TemplateName' => ['description' => 'The template name.', 'type' => 'string', 'example' => 'Template 1', 'title' => ''], + 'Status' => ['description' => 'The template status.', 'type' => 'string', 'example' => 'init', 'title' => ''], + 'SystemPropertyInfo' => [ + 'description' => 'The system property template information.', + 'type' => 'object', + 'properties' => [ + 'RoProductDevice' => ['description' => '> This parameter is not yet available for use.', 'type' => 'string', 'example' => 'null', 'title' => ''], + 'CustomPropertyInfos' => [ + 'description' => 'The custom property information.', + 'type' => 'array', + 'items' => [ + 'description' => 'The custom property object, which consists of a key and a value.', + 'type' => 'object', + 'properties' => [ + 'PropertyName' => ['description' => 'The property name.', 'type' => 'string', 'example' => 'propKey', 'title' => ''], + 'PropertyValue' => ['description' => 'The property value.', 'type' => 'string', 'example' => 'propValue', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'FilePath' => ['description' => 'The URL path of the property template file.', 'type' => 'string', 'example' => 'https://filepath****.com', 'title' => ''], + 'EnableAuto' => ['description' => 'Indicates whether preset system properties can be automatically generated.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU****\\",\\n \\"TotalCount\\": 10,\\n \\"SystemPropertyTemplateModel\\": [\\n {\\n \\"TemplateId\\": \\"ap-0caoenwutkkx****\\",\\n \\"TemplateName\\": \\"Template 1\\",\\n \\"Status\\": \\"init\\",\\n \\"SystemPropertyInfo\\": {\\n \\"RoProductDevice\\": \\"null\\",\\n \\"CustomPropertyInfos\\": [\\n {\\n \\"PropertyName\\": \\"propKey\\",\\n \\"PropertyValue\\": \\"propValue\\"\\n }\\n ]\\n },\\n \\"FilePath\\": \\"https://filepath****.com\\",\\n \\"EnableAuto\\": true\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'DescribeSystemPropertyTemplates', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"310A783E-CC46-5452-A8A3-71AE5DB5****\\"\\n}","type":"json"}]', - 'title' => 'DeleteApps', + 'translator' => 'manual', ], - 'InstallApp' => [ - 'summary' => 'Installs an app on multiple cloud phone instances at the same time.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'DescribeTasks' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -8294,502 +7280,523 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneL912BU', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneWDBBSN', 'FEATUREcloudphoneDY533B', 'FEATUREcloudphoneQ3V7AF', 'FEATUREcloudphoneE62QJ7'], ], 'parameters' => [ [ - 'name' => 'AppIdList', + 'name' => 'InvokeId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the command execution. You can set the value to the last returned request ID.', 'type' => 'string', 'required' => false, 'example' => 'B8ED2BA9-0C6A-5643-818F-B5D60A64****', 'title' => ''], + ], + [ + 'name' => 'ResourceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the apps that you want to install.'."\n", + 'description' => 'The IDs of the resources.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the app that you want to install.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '12345', - ], + 'items' => ['description' => 'The ID of the resource. To check the status of a start, stop, restart, or reset task on a cloud phone instance, set the value to the ID of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-25nt4kk9whhok****', 'title' => ''], 'required' => false, 'maxItems' => 100, - 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'InstanceGroupIdList', + 'name' => 'TaskIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the instance groups.'."\n", + 'description' => 'The IDs of the tasks.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-ayyhomlal7mvm****', + 'items' => ['description' => 'The ID of the task.', 'type' => 'string', 'required' => false, 'example' => 't-bp67acfmxazb4p****', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'ParentTaskId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the parent task.', 'type' => 'string', 'required' => false, 'example' => 't-iaej5dkbnmivx****', 'title' => ''], + ], + [ + 'name' => 'TaskType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The type of the task.', + 'enumValueTitles' => [ + 'BackupFile' => '', 'StopInstance' => '', 'RebootInstance' => '', 'StartApp' => '', 'SendFile' => '', 'RunCommand' => '', 'RestartApp' => '', 'ResetInstance' => '', 'RecoverFile' => '', 'UninstallApp' => '', + 'StopApp' => '', 'Screenshot' => '', 'InstallApp' => '', 'FetchFile' => '', 'UpdateGroupImage' => '', 'StartInstance' => '', ], + 'type' => 'string', + 'required' => false, + 'example' => 'StartInstance', + 'title' => '', + ], + ], + [ + 'name' => 'TaskTypes', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The types of the tasks.', + 'type' => 'array', + 'items' => ['description' => 'The type of the task.', 'type' => 'string', 'required' => false, 'example' => 'StartInstance', 'title' => ''], 'required' => false, 'maxItems' => 100, - 'minItems' => 0, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'InstanceIdList', + 'name' => 'TaskStatus', + 'in' => 'query', + 'schema' => [ + 'description' => 'The state of the task.', + 'enumValueTitles' => ['PartFinished' => '', 'Finished' => '', 'Failed' => '', 'Skipped' => '', 'Processing' => '', 'Waiting' => ''], + 'type' => 'string', + 'required' => false, + 'example' => 'Processing', + 'title' => '', + ], + ], + [ + 'name' => 'TaskStatuses', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", + 'description' => 'The status of the tasks.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-dvbhknfasf123****', - ], + 'items' => ['description' => 'The state of the task.', 'type' => 'string', 'required' => false, 'example' => 'Finished', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'Level', + 'in' => 'query', + 'schema' => ['description' => 'The level of the task. A value of 1 specifies a batch task. A value of 2 specifies an instance-level task.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'InstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-2zecay9ponatdc4m****', 'title' => ''], + ], + [ + 'name' => 'InstanceName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'defaultInstanceName', 'title' => ''], + ], + [ + 'name' => 'Param', + 'in' => 'query', + 'schema' => ['description' => 'The extension field.', 'type' => 'string', 'required' => false, 'example' => 'param', 'title' => ''], + ], + [ + 'name' => 'MaxResults', + 'in' => 'query', + 'schema' => [ + 'description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 10.', + 'enumValueTitles' => [], + 'type' => 'integer', + 'format' => 'int32', + 'maximum' => '100', + 'minimum' => '0', 'required' => false, - 'maxItems' => 1000, - 'minItems' => 0, + 'example' => '10', + 'title' => '', ], ], + [ + 'name' => 'NextToken', + 'in' => 'query', + 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.', 'type' => 'string', 'required' => false, 'example' => 'FFbc8N4E1iOlcSxC+8boa0HHH2LKWbggYUinyrZWvtS1oTrMYCg1HuMLGuftj0****', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'title' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****', - ], - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'example' => 't-14xwibw7yp73q****', + 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', 'title' => ''], + 'Data' => [ + 'description' => 'The objects that are returned.', + 'type' => 'array', + 'items' => [ + 'description' => 'The object that is returned.', + 'type' => 'object', + 'properties' => [ + 'TaskId' => ['description' => 'The ID of the task.', 'type' => 'string', 'example' => 't-bp67acfmxazb4p****', 'title' => ''], + 'InvokeId' => ['description' => 'The ID of the command execution.', 'type' => 'string', 'example' => 'B8ED2BA9-0C6A-5643-818F-B5D60A64****', 'title' => ''], + 'RegionId' => ['description' => 'The ID of the region.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], + 'ResourceId' => ['description' => 'The ID of the resource.', 'type' => 'string', 'example' => 'acp-25nt4kk9whhok****', 'title' => ''], + 'TaskType' => [ + 'description' => 'The type of the task.', + 'enumValueTitles' => [], + 'type' => 'string', + 'example' => 'StartInstance', + 'title' => '', + ], + 'TaskStatus' => ['description' => 'The state of the task.', 'type' => 'string', 'example' => 'Processing', 'title' => ''], + 'StartTime' => ['description' => 'The start time of the task.', 'type' => 'string', 'title' => '', 'example' => '2022-10-11T08:53:32Z'], + 'FinishTime' => ['description' => 'The end time of the task.', 'type' => 'string', 'title' => '', 'example' => '2022-10-11T08:53:32Z'], + 'Param' => ['description' => 'The parameters of the task.', 'type' => 'string', 'example' => 'param', 'title' => ''], + 'Result' => ['description' => 'The execution result of the task.', 'type' => 'string', 'example' => '{\'Success\': True}', 'title' => ''], + 'ErrorCode' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'SendFileFailed', 'title' => ''], + 'ErrorMsg' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'connect error.', 'title' => ''], + 'Level' => ['description' => 'The level of the task.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'FailedChildCount' => ['description' => 'The total number of failed subtasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], + 'SuccessChildCount' => ['description' => 'The total number of successfully executed subtasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '98', 'title' => ''], + 'RunningChildCount' => ['description' => 'The total number of the subtasks that are running.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'TotalChildCount' => ['description' => 'The total number of subtasks of the current batch task.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'example' => 'acp-uto81vfd8t8z****', 'title' => ''], + 'InstanceName' => ['description' => 'The name of the cloud phone instance.', 'type' => 'string', 'example' => 'defaultInstanceName', 'title' => ''], + 'InstanceStatus' => ['description' => 'The state of the cloud phone instance.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'Operator' => ['description' => 'The operator.', 'type' => 'string', 'example' => 'test', 'title' => ''], + 'ParentTaskId' => ['description' => 'The ID of the parent task.', 'type' => 'string', 'example' => 't-41oan3tza16vs****', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', ], + 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'B8ED2BA9-0C6A-5643-818F-B5D60A64****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\",\\n \\"TaskId\\": \\"t-14xwibw7yp73q****\\"\\n}","type":"json"}]', - 'title' => 'InstallApp', - 'description' => 'This operation runs asynchronously. To check the operation result, visit the Task Center. To retrieve task details, call the [DescribeTasks](~~DescribeTasks~~) operation.'."\n", - ], - 'UninstallApp' => [ - 'summary' => 'Uninstalls an app from multiple cloud phone instances.', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'DescribeTasks', + 'summary' => 'Queries tasks created for a cloud phone instance. Many operations on cloud phones—such as creating, starting, or stopping them—are asynchronous. When you initiate an operation, the system returns a `Task ID` that you can use to track its progress and final result. You can call this API to retrieve a list of all tasks and their execution statuses.', + 'description' => '- You can call the DescribeTasks operation to query the tasks created for one or more cloud phone instances.'."\n" + ."\n" + .'- The system currently supports various tasks, including starting, stopping, restarting, and resetting cloud phone instances; backing up and restoring data; installing apps; and executing remote commands.'."\n" + ."\n" + .'- You can use the Level field to specify the type of task. If Level is set to 1, it represents a batch task. If Level is set to 2, it represents an instance-level task.'."\n" + ."\n" + .'**Example**'."\n" + ."\n" + .'Assume you restart two cloud phone instances with the instance IDs acp-25nt4kk9whhok\\*\\*\\*\\* and acp-j2taq887orj8l\\*\\*\\*\\*, and the returned request ID is B8ED2BA9-0C6A-5643-818F-B5D60A64\\*\\*\\*\\*. If you want to check the operation outcomes of the two cloud phone instances, you can call the DescribeTasks operation. You need to set the InvokeId request parameter to B8ED2BA9-0C6A-5643-818F-B5D60A64\\*\\*\\*\\*. If you only want to check the cloud phone instance with the ID acp-25nt4kk9whhok\\*\\*\\*\\*, you must set the ParentTaskId request parameter to the ID of the batch task and the AndroidInstanceId request parameter to acp-25nt4kk9whhok\\*\\*\\*\\* when calling the DescribeTasks operation.', + 'changeSet' => [ + ['createdAt' => '2025-01-03T11:17:53.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-12-17T05:04:23.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2024-11-14T10:59:55.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-08-21T08:15:03.000Z', 'description' => 'Response parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"Data\\": [\\n {\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\",\\n \\"InvokeId\\": \\"B8ED2BA9-0C6A-5643-818F-B5D60A64****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ResourceId\\": \\"acp-25nt4kk9whhok****\\",\\n \\"TaskType\\": \\"StartInstance\\",\\n \\"TaskStatus\\": \\"Processing\\",\\n \\"StartTime\\": \\"2022-10-11T08:53:32Z\\",\\n \\"FinishTime\\": \\"2022-10-11T08:53:32Z\\",\\n \\"Param\\": \\"param\\",\\n \\"Result\\": \\"{\'Success\': True}\\",\\n \\"ErrorCode\\": \\"SendFileFailed\\",\\n \\"ErrorMsg\\": \\"connect error.\\",\\n \\"Level\\": 1,\\n \\"FailedChildCount\\": 2,\\n \\"SuccessChildCount\\": 98,\\n \\"RunningChildCount\\": 0,\\n \\"TotalChildCount\\": 100,\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"InstanceName\\": \\"defaultInstanceName\\",\\n \\"InstanceStatus\\": \\"RUNNING\\",\\n \\"Operator\\": \\"test\\",\\n \\"ParentTaskId\\": \\"t-41oan3tza16vs****\\"\\n }\\n ],\\n \\"TotalCount\\": 10,\\n \\"RequestId\\": \\"B8ED2BA9-0C6A-5643-818F-B5D60A64****\\"\\n}","type":"json"}]', + ], + 'DetachKeyPair' => [ + 'summary' => 'Detaches an Android Debug Bridge (ADB) key pair from one or more cloud phone instances.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphonePZ72CH', - ], + 'abilityTreeNodes' => ['FEATUREcloudphone0AEVFG'], ], 'parameters' => [ [ - 'name' => 'AppIdList', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the apps.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the app.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '12345', - ], - 'required' => false, - 'maxItems' => 100, - 'minItems' => 1, - ], - ], - [ - 'name' => 'InstanceGroupIdList', + 'name' => 'KeyPairId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The ID of the instance groups. If you specify this parameter, you cannot specify InstanceIdList.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'ag-ferag1vraw****', - ], - 'required' => false, - 'maxItems' => 100, - 'minItems' => 0, - ], + 'schema' => ['description' => 'The ID of the ADB key pair.', 'type' => 'string', 'required' => true, 'example' => 'kp-6v2q33ae4tw3a****', 'title' => ''], ], [ - 'name' => 'InstanceIdList', + 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. If you specify this parameter, you cannot specify InstanceGroupIdList.'."\n", + 'description' => 'The IDs of the cloud phone instances. You can specify up to 50 instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-3eourrxapshn2****', - ], + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh431emkt6ua****', 'title' => ''], 'required' => false, - 'maxItems' => 1000, - 'minItems' => 0, + 'maxItems' => 200, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****', - ], - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'example' => 't-1ljew7on6ay0j****', + 'Data' => [ + 'description' => 'The result object.', + 'type' => 'object', + 'properties' => [ + 'KeyPairId' => ['description' => 'The ID of the ADB key pair.', 'type' => 'string', 'example' => 'kp-6v2q33ae4tw3a****', 'title' => ''], + 'TotalCount' => ['description' => 'The total number of instances for which the detach operation was attempted.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], + 'FailCount' => ['description' => 'The number of instances from which the key pair failed to detach.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'DetachedInstanceIds' => [ + 'description' => 'A list of IDs of the instances from which the key pair was successfully detached.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-5hh431emkt6ua****', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', 'title' => ''], ], + 'title' => '', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3a****\\",\\n \\"TotalCount\\": 10,\\n \\"FailCount\\": 0,\\n \\"DetachedInstanceIds\\": [\\n \\"acp-5hh431emkt6ua****\\"\\n ]\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', + 'title' => 'DetachKeyPair', + 'description' => '- After a key pair is detached, the cloud phone no longer stores a valid ADB public key. As a result, ADB connections may fail to authenticate.', + 'changeSet' => [ + ['createdAt' => '2025-05-31T07:55:40.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\",\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\"\\n}","type":"json"}]', - 'title' => 'UninstallApp', - 'description' => 'This operation runs asynchronously. To check the operation result, you can visit the Task Center. To retrieve task details, call the [DescribeTasks](~~DescribeTasks~~) operation.'."\n", ], - 'OperateApp' => [ - 'summary' => 'Operates apps in a cloud phone, such as opening, closing, and reopening apps.', + 'DisconnectAndroidInstance' => [ + 'summary' => 'Disconnects a connected instance or disassociates an instance that is associated with another user.', 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneL912BU', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneMEHI4H'], ], 'parameters' => [ [ - 'name' => 'InstanceIdList', + 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances.'."\n", + 'description' => 'A list of instance IDs. You can specify 1 to 100 IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-dvbhknfasf123****', - ], - 'required' => false, - 'maxItems' => 1000, - ], - ], - [ - 'name' => 'AppId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the app.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'items' => ['description' => 'An instance ID.', 'type' => 'string', 'required' => false, 'pattern' => '^[^\';<>=|\\(\\)]+$', 'example' => 'acp-5hh4a31emkt6u****', 'title' => ''], 'required' => false, - 'example' => '1234', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'OperateType', + 'name' => 'EndUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the operation.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* stop: closes the app.'."\n" - .'* restart: reopens the app.'."\n" - .'* start: open the app.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'stop' => '', - 'restart' => '', - 'start' => '', - ], - 'example' => 'start', - ], + 'schema' => ['description' => ''."\n" + ."\n" + .'If you use the Cloud Phone Matrix Edition and the instance stream pattern is collaborative mode, you can specify `EndUserId` to disconnect a specific user and invalidate the corresponding ticket.'."\n" + ."\n" + .''."\n" + ."\n" + .''."\n" + ."\n" + .'This parameter is not publicly available.'."\n" + ."\n" + .'', 'type' => 'string', 'required' => false, 'example' => 'user1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'example' => 't-imr0fufqgac2z****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TaskId\\": \\"t-imr0fufqgac2z****\\"\\n}","type":"json"}]', - 'title' => 'OperateApp', - 'description' => 'This operation runs asynchronously. To check the operation result, visit the Task Center. To retrieve task details, call the [DescribeTasks](~~DescribeTasks~~) operation.'."\n", - ], - 'CreateKeyPair' => [ - 'summary' => 'Creates an Android Debug Bridge (ADB) key pair. The system retains the public key and provides a PEM-encoded private key in PKCS#8 format, adhering to the ADB connection specification. You must securely store the private key.', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\"\\n}","type":"json"}]', + 'title' => 'DisconnectAndroidInstance', + 'description' => 'Connections to instances are established using the [](t2848888.xdita#). After a connection is closed with `session.stop()`, the system maintains the user-instance association for 5 minutes. During this time, other users cannot connect. The `DisconnectAndroidInstance` operation lets you disassociate the instance immediately.'."\n" + .'If you use the Cloud Phone Matrix Edition and the instance stream pattern is collaborative mode, you can specify `EndUserId` to disconnect a specific user and invalidate the corresponding ticket.', + 'changeSet' => [ + ['createdAt' => '2025-06-28T12:53:31.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'DistributeImage' => [ + 'summary' => 'Distributes an image to one or more regions. This lets you use the image to create cloud phones in regions other than its source region.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphone3OZQF8'], ], 'parameters' => [ [ - 'name' => 'KeyPairName', - 'in' => 'query', + 'name' => 'DistributeRegionList', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The name of the key pair. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (\\_), and hyphens (-). The name must start with a letter but cannot start with http:// or https://.'."\n", - 'type' => 'string', + 'description' => 'The list of destination regions.', + 'type' => 'array', + 'items' => ['description' => 'A destination region.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], 'required' => true, - 'example' => 'testKeyPairName', - 'maxLength' => 128, - 'minLength' => 2, + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the image.', 'type' => 'string', 'required' => true, 'example' => 'imgc-075cllfeuazh0****', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'PlainResult', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The objects that are returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'KeyPairId' => [ - 'description' => 'The ID of the key pair.'."\n", - 'type' => 'string', - 'example' => 'kp-6v2q33ae4tw3*****', - ], - 'KeyPairName' => [ - 'description' => 'The name of the key pair.'."\n", - 'type' => 'string', - 'example' => 'testKeyPairName', - ], - 'PrivateKeyBody' => [ - 'description' => 'The private key of the key pair. The PEM-encoded private key that is in PKCS#8 format and adheres to the ADB connection specification.'."\n", - 'type' => 'string', - 'example' => 'MIIEpAIBAAKCAQEAtReyMzLIcBH78EV2zj****', - ], - 'GmtCreated' => [ - 'title' => '创建时间', - 'description' => 'The time when the key pair was created.'."\n", - 'type' => 'string', - 'example' => '2024-06-30 08:45:09.0', - ], - ], - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', - ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3*****\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"PrivateKeyBody\\": \\"MIIEpAIBAAKCAQEAtReyMzLIcBH78EV2zj****\\",\\n \\"GmtCreated\\": \\"2024-06-30 08:45:09.0\\"\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - 'title' => 'CreateKeyPair', - 'description' => 'In addition to using the CreateKeyPair operation to generate a key pair, you can also create one by using the ADB tool and upload it to the Cloud Phone console. The usage of this key pair is identical to that of a system-generated key pair.'."\n" - ."\n" - .'Each tenant can create up to 500 key pairs.'."\n", - ], - 'ImportKeyPair' => [ - 'summary' => 'Imports the public key of an Android Debug Bridge (ADB) key pair.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1\\"\\n}","type":"json"}]', + 'title' => 'DistributeImage', + 'description' => 'You cannot cancel the distribution of an image to a region after the image is distributed.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'DowngradeAndroidInstanceGroup' => [ + 'summary' => 'Downgrades an instance group. Currently, this operation allows you to only delete specific cloud phone instances from an instance group.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneMGJBSL'], ], 'parameters' => [ [ - 'name' => 'KeyPairName', + 'name' => 'InstanceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the instance group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'ag-cuv4scs4obxhs****', 'title' => ''], + ], + [ + 'name' => 'AndroidInstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The name of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'TestKeyPairName', - 'maxLength' => 128, - 'minLength' => 1, + 'description' => 'The IDs of the cloud phone instances that you want to delete.'."\n", + 'type' => 'array', + 'items' => ['description' => 'The ID of the cloud phone instance that you want to delete.'."\n", 'type' => 'string', 'required' => false, 'example' => 'acp-hangzhouarmw****', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'PublicKeyBody', + 'name' => 'AutoPay', 'in' => 'query', 'schema' => [ - 'description' => 'The public key of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'ABC1234567*****', - 'maxLength' => 1024, - 'minLength' => 1, + 'description' => 'Specifies whether to enable the auto-payment feature. Default value: false.'."\n" + ."\n" + .'Valid values:'."\n" + ."\n" + .'* true: enables the auto-payment feature. Ensure your account has sufficient balance to use this feature.'."\n" + .'* false: disables the auto-payment feature. This requires manual payment each time you place an order.'."\n", + 'type' => 'boolean', + 'required' => false, + 'enumValueTitles' => ['true' => '', 'false' => ''], + 'example' => 'true', + 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', + 'title' => 'Schema of Response', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The object that is returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'KeyPairId' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'example' => 'kp-6v2q33ae4tw3*****', - ], - 'KeyPairName' => [ - 'description' => 'The name of the ADB key pair.'."\n", - 'type' => 'string', - 'example' => 'TestKeyPairName', - ], - 'GmtCreated' => [ - 'title' => '创建时间', - 'description' => 'The time when the ADB key pair was created.'."\n", - 'type' => 'string', - 'example' => '2023-03-05T10:29:22Z', - ], - ], - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '3AF82CE1-2801-52CE-BF64-B491DD7C****'], + 'OrderId' => ['description' => 'The ID of the order.'."\n", 'type' => 'string', 'example' => '22326560487****', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3*****\\",\\n \\"KeyPairName\\": \\"TestKeyPairName\\",\\n \\"GmtCreated\\": \\"2023-03-05T10:29:22Z\\"\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - 'title' => 'ImportKeyPair', - 'description' => 'To avoid authorization errors that could cause ADB connection failures, you must import the public key of an ADB key pair.'."\n", - ], - 'DescribeKeyPairs' => [ - 'summary' => 'Queries one or more key pairs.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3AF82CE1-2801-52CE-BF64-B491DD7C****\\",\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', + 'title' => 'DowngradeAndroidInstanceGroup', + 'description' => 'This operation only allows you to scale down an instance group.'."\n", + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'EndCoordination' => [ + 'summary' => 'Ends all coordination tasks for a cloud phone instance and invalidates the coordination code.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -8798,613 +7805,528 @@ 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneMEHI4H'], ], 'parameters' => [ [ - 'name' => 'KeyPairIds', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the ADB key pairs.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'kp-6v2q33ae4tw3*****', - ], - 'required' => false, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'KeyPairName', + 'name' => 'OwnerUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'testKeyPairName', - ], + 'schema' => ['description' => 'The user ID of the coordination initiator.', 'type' => 'string', 'required' => false, 'example' => 'xiaoming', 'title' => ''], ], [ - 'name' => 'MaxResults', + 'name' => 'CoordinatorUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '0', - 'example' => '10', - ], + 'schema' => ['description' => 'The user ID of the coordination participant.', 'type' => 'string', 'required' => false, 'example' => 'lina', 'title' => ''], ], [ - 'name' => 'NextToken', + 'name' => 'InstanceId', 'in' => 'query', - 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAYRHtOLVQzCYj17y+OP7LZQBUVVbi0GTu8g5****', - ], + 'schema' => ['description' => 'The ID of the instance that is in a coordination session.', 'type' => 'string', 'required' => false, 'example' => 'acp-2zecay9ponatdc4m****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult>', - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The reponse elements.', 'type' => 'object', 'properties' => [ - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'FFbc8N4E1iOlcSxC+8boa0HHH2LKWbggYUinyrZWvtS1oTrMYCg1HuMLGuftj0****', - ], - 'Data' => [ - 'description' => 'The objects that are returned.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The object that is returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'KeyPairId' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'example' => 'kp-6v2q33ae4tw3a****', - ], - 'KeyPairName' => [ - 'description' => 'The name of the ADB key pair.'."\n", - 'type' => 'string', - 'example' => 'testKeyPairName', - ], - 'GmtCreated' => [ - 'title' => '创建时间', - 'description' => 'The time when the ADB key pair was created.'."\n", - 'type' => 'string', - 'example' => '2022-10-11T08:53:32Z', - ], - ], - ], - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '565FB06A-AE04-5AD0-8A32-5BA92CA5****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"FFbc8N4E1iOlcSxC+8boa0HHH2LKWbggYUinyrZWvtS1oTrMYCg1HuMLGuftj0****\\",\\n \\"Data\\": [\\n {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3a****\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"GmtCreated\\": \\"2022-10-11T08:53:32Z\\"\\n }\\n ],\\n \\"TotalCount\\": 10,\\n \\"RequestId\\": \\"565FB06A-AE04-5AD0-8A32-5BA92CA5****\\"\\n}","type":"json"}]', - 'title' => 'DescribeKeyPairs', - ], - 'ModifyKeyPairName' => [ - 'summary' => 'Modifies Android Debug Bridge (ADB) key pairs.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\"\\n}","type":"json"}]', + 'title' => 'EndCoordination', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'ExpandDataVolume' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneUQT9QO'], ], 'parameters' => [ [ - 'name' => 'KeyPairId', + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'NodeIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'kp-6v2q33ae4tw3a****', + 'description' => 'The IDs of the cloud phone matrices.', + 'type' => 'array', + 'items' => ['description' => 'The ID of a cloud phone matrix.', 'type' => 'string', 'required' => false, 'example' => 'cpn-csbdhjcbvfd****', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NewKeyPairName', + 'name' => 'ShareDataVolume', + 'in' => 'query', + 'schema' => ['description' => 'The size of the shared storage for the matrix. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''], + ], + [ + 'name' => 'PhoneDataVolume', + 'in' => 'query', + 'schema' => ['description' => 'The size of the instance storage. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''], + ], + [ + 'name' => 'AutoPay', 'in' => 'query', 'schema' => [ - 'description' => 'The name of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'newKeyPairName', - 'minLength' => 2, + 'description' => 'Specifies whether to enable automatic payment. The default value is false.', + 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', ], ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'example' => '50003308011****', 'title' => ''], + ], + [ + 'name' => 'PaidCallBackUrl', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'BaseResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The response body.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '22326560487****', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - 'title' => 'ModifyKeyPairName', - ], - 'DeleteKeyPairs' => [ - 'summary' => 'Deletes Android Debug Bridge (ADB) key pairs.', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ExpandDataVolume', + 'summary' => 'Expands the storage of a cloud phone matrix. You can expand shared storage for matrix-level files such as images, and instance storage. Expanding the storage incurs new fees, and the API response returns an order ID.', + 'description' => 'This operation is only available on the china site (aliyun.com).', + 'changeSet' => [ + ['createdAt' => '2025-09-05T06:13:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-08-08T10:57:57.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', + ], + 'ExpandPhoneDataVolume' => [ + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'delete', + 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneUQT9QO'], ], 'parameters' => [ [ - 'name' => 'KeyPairIds', + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], + ], + [ + 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the ADB key pairs.'."\n", + 'description' => 'A list of cloud phone matrix instance IDs. You can specify 1 to 100 IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'kp-6v2q33ae4tw3a****', - ], + 'items' => ['description' => 'A cloud phone matrix instance ID.', 'type' => 'string', 'required' => false, 'example' => 'cpn-aw14zoevk6809****', 'title' => ''], 'required' => false, 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'PhoneDataVolume', + 'in' => 'query', + 'schema' => ['description' => 'The target size of the phone storage, in GiB.>The new value must be greater than the current size of the phone storage.>', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], + ], + [ + 'name' => 'AutoPay', + 'in' => 'query', + 'schema' => ['description' => 'Whether to enable automatic payment. The default value is false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'example' => '50003308011****', 'title' => ''], + ], + [ + 'name' => 'PaidCallBackUrl', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'BaseResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The returned data.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'DB070C80-45AC-52CA-8101-937C25DA****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '223684716098****', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\"\\n}","type":"json"}]', - 'title' => 'DeleteKeyPairs', - 'description' => '* If a cloud phone instance is currently associated with the ADB key pair you intend to delete, the ADB key pair cannot be deleted.'."\n" - .'* Once an ADB key pair is deleted, it cannot be retrieved or queried by using the DescribeKeyPairs operation.'."\n", - ], - 'AttachKeyPair' => [ - 'summary' => 'Attaches an Android Debug Bridge (ADB) key pair to one or more cloud phone instances.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ExpandPhoneDataVolume', + 'summary' => 'Expands the phone storage for one or more matrix instances.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DB070C80-45AC-52CA-8101-937C25DA****\\",\\n \\"OrderId\\": \\"223684716098****\\"\\n}","type":"json"}]', + ], + 'FetchFile' => [ + 'summary' => 'Fetches files from a cloud phone to Object Storage Service (OSS).', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone377ZZK', - ], + 'abilityTreeNodes' => ['FEATUREcloudphone0959GM'], ], 'parameters' => [ [ - 'name' => 'KeyPairId', + 'name' => 'AndroidInstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', + 'description' => 'A list of cloud phone instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'The ID of a cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-34pqe4r0kd9kn****'."\n", 'title' => ''], + 'deprecated' => false, 'required' => true, - 'example' => 'kp-6v2q33ae4tw3a****', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'InstanceIds', + 'name' => 'SourceFilePath', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. You can specify a maximum of 50 cloud phone instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-5hh4a31emkt6u****', - ], - 'required' => false, - 'maxItems' => 200, - ], + 'schema' => ['description' => 'The path of the file or folder to fetch from the cloud phone.', 'type' => 'string', 'required' => true, 'example' => '/data/a.txt', 'title' => ''], + ], + [ + 'name' => 'UploadType', + 'in' => 'query', + 'schema' => ['description' => 'The type of storage service for the fetched file.'."\n" + ."\n" + .'> Currently, only Object Storage Service (OSS) is supported.', 'type' => 'string', 'required' => true, 'example' => 'OSS', 'title' => ''], + ], + [ + 'name' => 'UploadEndpoint', + 'in' => 'query', + 'schema' => ['description' => 'The endpoint for uploading files to OSS.'."\n" + ."\n" + .'> If the cloud phone and the destination OSS bucket are in the same region, you can use an internal endpoint to accelerate the transfer and avoid public network charges. For example, in the China (Hangzhou) region, use `oss-cn-hangzhou-internal.aliyuncs.com`. For a complete list of endpoints, see [OSS regions and endpoints](~~31837~~).', 'type' => 'string', 'required' => true, 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com', 'title' => ''], + ], + [ + 'name' => 'UploadUrl', + 'in' => 'query', + 'schema' => ['description' => 'The destination URL in OSS.'."\n" + ."\n" + .'> The destination bucket name must be prefixed with `cloudphone-saved-bucket-`. For example, `cloudphone-saved-bucket-example`. You must also create a folder in the bucket to serve as the destination directory. The `UploadUrl` must follow the format: `oss:///`.', 'type' => 'string', 'required' => true, 'example' => 'oss://cloudphone-saved-bucket-example/received'."\n", 'title' => ''], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => 'A client-generated token, up to 100 characters long, that ensures the idempotency of the request.', 'type' => 'string', 'required' => false, 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], ], ], 'responses' => [ 200 => [ - 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", - 'type' => 'object', - 'properties' => [ - 'Data' => [ - 'description' => 'The object that is returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'KeyPairId' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'example' => 'kp-6v2q33ae4tw3a****', - ], - 'TotalCount' => [ - 'description' => 'The total number of the cloud phone instances.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'FailCount' => [ - 'description' => 'The number of the cloud phone instances to which the ADB key pair failed to be attached.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'AttachedInstanceIds' => [ - 'description' => 'The IDs of the cloud phone instances to which the ADB key pair is successfully attached.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'acp-5hh431emkt6ua****', - ], + 'schema' => [ + 'title' => 'PlainResult', + 'description' => 'The response object.', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'An array of results, with one entry for each instance specified in the request.', + 'type' => 'array', + 'items' => [ + 'description' => 'The result for a single cloud phone instance.', + 'type' => 'object', + 'properties' => [ + 'AndroidInstanceId' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the task created for this specific instance.', 'type' => 'string', 'example' => 't-bp67acfmxazb4p****', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'."\n", + 'title' => '', ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', - ], + 'RequestId' => ['description' => 'The request ID. Provide this ID when contacting support for troubleshooting.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], + 'TaskId' => ['description' => 'The batch task ID.', 'type' => 'string', 'example' => 't-ehs0yoedj0xe9****', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3a****\\",\\n \\"TotalCount\\": 100,\\n \\"FailCount\\": 0,\\n \\"AttachedInstanceIds\\": [\\n \\"acp-5hh431emkt6ua****\\"\\n ]\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - 'title' => 'AttachKeyPair', - 'description' => '* You can attach to an ADB key pair only to cloud phone instances in the Running state.'."\n" - .'* After you attach an ADB key pair, make sure the private key of the ADB key pair is copied to the ~/.android directory (macOS or Linux operating systems) or the C:\\Users\\Username.android directory (Windows operating systems). In addition, you must run the adb kill-server command to restart the ADB process to ensure correct ADB connection. Otherwise, ADB connection may fail due to authentication exceptions.', - ], - 'DetachKeyPair' => [ - 'summary' => 'Detaches an Android Debug Bridge (ADB) key pair from one or more cloud phone instances.', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TaskId\\": \\"t-ehs0yoedj0xe9****\\"\\n}","type":"json"}]', + 'title' => 'FetchFile', + 'description' => 'This operation fetches only files or folders from a cloud phone to Object Storage Service.', + 'changeSet' => [ + ['createdAt' => '2024-12-17T05:04:23.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-09-13T09:20:16.000Z', 'description' => 'Response parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'GenerateCoordinationCode' => [ + 'summary' => 'By default, you can only use the BatchGetAcpConnectionTicket operation to get the ticket for a connection to a cloud phone, and a cloud phone supports only one connected user at a time. To allow multiple users to connect to a cloud phone at the same time, connect to the cloud phone with a convenience account, use this operation to generate a collaboration code by using the current account, and share this code with other convenience accounts to allow them to access the same cloud phone.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone0AEVFG', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneMEHI4H'], ], 'parameters' => [ [ - 'name' => 'KeyPairId', + 'name' => 'OwnerUserId', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'kp-6v2q33ae4tw3a****', - ], + 'schema' => ['description' => 'The ID of the user to whom the current instance is assigned.', 'type' => 'string', 'required' => false, 'example' => 'xiaoming', 'title' => ''], ], [ - 'name' => 'InstanceIds', + 'name' => 'InstanceId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. You can specify a maximum of 50 cloud phone instances.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-5hh431emkt6ua****', - ], - 'required' => false, - 'maxItems' => 200, - ], + 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-2zecay9ponatdc4m****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The object that is returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'KeyPairId' => [ - 'description' => 'The ID of the ADB key pair.'."\n", - 'type' => 'string', - 'example' => 'kp-6v2q33ae4tw3a****', - ], - 'TotalCount' => [ - 'description' => 'The total number of the cloud phone instances.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'FailCount' => [ - 'description' => 'The number of the cloud phone instances from which the ADB key pair failed to be detached.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'DetachedInstanceIds' => [ - 'description' => 'The IDs of the cloud phone instances from which the ADB key pair is successfully detached.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'acp-5hh431emkt6ua****', - ], - ], - ], - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****'], + 'CoordinatorCode' => ['description' => 'The collaboration code.', 'type' => 'string', 'example' => 'CSHGDK', 'title' => ''], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3a****\\",\\n \\"TotalCount\\": 10,\\n \\"FailCount\\": 0,\\n \\"DetachedInstanceIds\\": [\\n \\"acp-5hh431emkt6ua****\\"\\n ]\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - 'title' => 'DetachKeyPair', - 'description' => '* After you detach an ADB key pair from a cloud phone instance, the ADB connection will fail. This occurs because the system can no longer authenticate using a valid ADB public key, leading to authentication errors.'."\n", + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'GenerateCoordinationCode', + 'description' => 'You can call this operation to generate a collaboration code for a cloud phone accessed by your current account and share this code with other convenience users to allow them to access the same cloud phone over the desktop, mobile, or web client.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"CoordinatorCode\\": \\"CSHGDK\\"\\n}","type":"json"}]', ], - 'BackupAndroidInstance' => [ - 'summary' => '整机备份', + 'GetInstanceProperties' => [ + 'summary' => 'Retrieves the properties of an instance. This operation runs the android getprop command to retrieve all properties of the cloud phone.', 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneE62QJ7', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneA5LZN6'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIdList', - 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'aic-ig2bdpk374l12****', - ], - 'deprecated' => false, - 'required' => true, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'Description', + 'name' => 'InstanceId', 'in' => 'query', - 'schema' => [ - 'title' => 'App文件名称', - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'this is a backup android instance', - ], + 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'cpn-2ofr9kf41apy3****-014', 'title' => ''], ], - [ - 'name' => 'UploadEndpoint', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com', + 'title' => 'Schema of Response', + 'description' => 'The response elements.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******'], + 'PropertyTemplateModel' => [ + 'description' => 'The instance properties.', + 'type' => 'object', + 'properties' => [ + 'Content' => ['description' => 'The instance properties.'."\n" + ."\n" + .'> Format: `{ "propties":{"key1":"value1"}}`.', 'type' => 'string', 'example' => '{ "propties":{"key1":"value1"}}', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + ], + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\",\\n \\"PropertyTemplateModel\\": {\\n \\"Content\\": \\"{ \\\\\\"propties\\\\\\":{\\\\\\"key1\\\\\\":\\\\\\"value1\\\\\\"}}\\"\\n }\\n}","type":"json"}]', + 'title' => 'GetInstanceProperties', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'GetNetworkBlacklist' => [ + 'summary' => 'Queries the network access blacklist for IP addresses and domain names.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'BackupFilePath', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/backupDir/acp-ig2bdpk374l12****_2024052014****.ab', - ], + 'AK' => [], ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphone89PVC7'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ [ - 'name' => 'BackupFileName', + 'name' => 'Type', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The query type. Valid values: IP and Domain. If you do not specify this parameter, information for both types is returned.', 'type' => 'string', + 'enum' => ['Domain', 'IP'], 'required' => false, - 'example' => 'abc', + 'example' => 'IP', + 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'PlainResult', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'BackupFileId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'bf-b0qbg3pbpjkn7****', - ], - 'BackupFileName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'a-58ftsoo90p0qa****.ab', - ], - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-bp67acfmxazb4p****', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'A578AD3A-8E7C-54FE-A09F-B060941*****'], + 'NetworkBlacklistModel' => [ + 'type' => 'object', + 'properties' => [ + 'IpBlacklist' => [ + 'type' => 'array', + 'items' => ['description' => 'An IP address or an IP address range.', 'type' => 'string', 'example' => '12.34.56.78', 'title' => ''], + 'description' => 'The list of blacklisted IP addresses.', + 'title' => '', + 'example' => '', + ], + 'DomainBlacklist' => [ + 'type' => 'array', + 'items' => ['description' => 'A domain name.', 'type' => 'string', 'example' => 'malicious.com', 'title' => ''], + 'description' => 'The list of blacklisted domain names.', + 'title' => '', + 'example' => '', ], ], - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1', - ], - 'Count' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-14xwibw7pyrjd****', + 'description' => 'The network blacklist.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response elements.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'GetNetworkBlacklist', + 'description' => '- This operation requires image version 26.01 or later.'."\n" + ."\n" + .'- This operation queries the network access blacklist for your account. The blacklist includes IP addresses and domain names.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"a-58ftsoo90p0qa****.ab\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\"\\n }\\n ],\\n \\"RequestId\\": \\"440D7342-5FC2-5E7C-B2DB-D0B4EAC2BDF1\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-14xwibw7pyrjd****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A578AD3A-8E7C-54FE-A09F-B060941*****\\",\\n \\"NetworkBlacklistModel\\": {\\n \\"IpBlacklist\\": [\\n \\"12.34.56.78\\"\\n ],\\n \\"DomainBlacklist\\": [\\n \\"malicious.com\\"\\n ]\\n }\\n}","type":"json"}]', ], - 'BackupApp' => [ - 'summary' => '应用备份', + 'ImportImage' => [ + 'summary' => 'Imports a custom image.', 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -9416,1269 +8338,984 @@ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneE62QJ7', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneLJI39N'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIdList', + 'name' => 'ImageFileURL', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-34pqe4r0kd9kn****'."\n", - ], - 'deprecated' => false, - 'required' => true, - 'maxItems' => 100, - ], + 'schema' => ['description' => 'The URL of the image. This must be an Alibaba Cloud OSS address.', 'type' => 'string', 'required' => false, 'example' => 'https://xxx.oss-xxx/xxxx.tgz', 'title' => ''], ], [ - 'name' => 'Description', + 'name' => 'ImageName', 'in' => 'query', - 'schema' => [ - 'title' => 'App文件名称', - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'this is a backup app', - ], + 'schema' => ['description' => 'The name of the image.', 'type' => 'string', 'required' => false, 'example' => 'import custom image', 'title' => ''], ], [ - 'name' => 'UploadEndpoint', + 'name' => 'ImageDescription', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'oss-cn-shanghai-internal.aliyuncs.com', - ], + 'schema' => ['description' => 'The description of the image.', 'type' => 'string', 'required' => false, 'example' => 'android 12 custom image', 'title' => ''], ], - [ - 'name' => 'BackupFilePath', - 'in' => 'query', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'oss://cloudphone-saved-bucket-****/backupDir/', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'], + 'ImageId' => ['description' => 'The ID of the image.', 'type' => 'string', 'title' => '', 'example' => 'imgc-06zyt9m93zwax****'], + ], + 'title' => '', + 'description' => 'The response schema.', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ImportImage', + 'description' => '1. You can import a custom image to develop custom features or services.'."\n" + ."\n" + .'2. First, obtain the required Android Open Source Project (AOSP) image baseline from the platform. Then, create a custom build. After the build is complete, import the image to the platform. For detailed instructions, contact Wuying technical support.'."\n" + ."\n" + .'3. Ensure the image tar package is smaller than 2 GB. Otherwise, image parsing may fail.'."\n" + ."\n" + .'4. Ensure the Object Storage Service (OSS) address is in mainland China. If the address is outside mainland China or in the Hong Kong region, the image file download may time out.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"ImageId\\": \\"imgc-06zyt9m93zwax****\\"\\n}","type":"json"}]', + ], + 'ImportKeyPair' => [ + 'summary' => 'Imports the public key of an Android Debug Bridge (ADB) key pair.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ [ - 'name' => 'BackupFileName', + 'name' => 'KeyPairName', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'MyBackup', - ], + 'schema' => ['description' => 'The name of the ADB key pair.', 'type' => 'string', 'required' => true, 'maxLength' => 128, 'minLength' => 1, 'example' => 'TestKeyPairName', 'title' => ''], ], [ - 'name' => 'SourceAppList', + 'name' => 'PublicKeyBody', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'com.example.xhs', - ], - 'required' => true, - 'maxItems' => 100, - ], + 'schema' => ['description' => 'The public key of the ADB key pair.', 'type' => 'string', 'required' => true, 'maxLength' => 1024, 'minLength' => 1, 'example' => 'ABC1234567*****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'PlainResult', + 'title' => 'PlainResult', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'Data' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'BackupFileId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'bf-b0qbg3pbpjkn7****', - ], - 'BackupFileName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'MyBackup', - ], - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-4ks224ujixw****', - ], - ], + 'description' => 'The object that is returned.', + 'type' => 'object', + 'properties' => [ + 'KeyPairId' => ['description' => 'The ID of the ADB key pair.', 'type' => 'string', 'example' => 'kp-6v2q33ae4tw3*****', 'title' => ''], + 'KeyPairName' => ['description' => 'The name of the ADB key pair.', 'type' => 'string', 'example' => 'TestKeyPairName', 'title' => ''], + 'GmtCreated' => ['description' => 'The time when the ADB key pair was created.', 'type' => 'string', 'title' => '', 'example' => '2023-03-05T10:29:22Z'], ], + 'title' => '', + 'example' => '', ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'Count' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-14xwibw7pyrjd****', - ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"KeyPairId\\": \\"kp-6v2q33ae4tw3*****\\",\\n \\"KeyPairName\\": \\"TestKeyPairName\\",\\n \\"GmtCreated\\": \\"2023-03-05T10:29:22Z\\"\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', + 'title' => 'ImportKeyPair', + 'description' => 'To avoid authorization errors that could cause ADB connection failures, you must import the public key of an ADB key pair.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"MyBackup\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-4ks224ujixw****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-14xwibw7pyrjd****\\"\\n}","type":"json"}]', ], - 'RecoverAndroidInstance' => [ - 'summary' => '整机恢复', - 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'InstallApp' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneWDBBSN', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneL912BU'], ], 'parameters' => [ [ - 'name' => 'BackupFileId', + 'name' => 'AppIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => 'App oss地址', - 'description' => '', - 'type' => 'string', + 'description' => 'The application IDs.', + 'type' => 'array', + 'items' => ['description' => 'An application ID.', 'type' => 'string', 'required' => false, 'example' => '12710', 'title' => ''], 'required' => false, - 'example' => 'bf-azhps4rdyi2th****', + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'AndroidInstanceIdList', + 'name' => 'InstanceGroupIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The instance group IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-ig2bdpk374l12****', - ], - 'deprecated' => false, - 'required' => true, + 'items' => ['description' => 'An instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-ayyhomlal7mvm****', 'title' => ''], + 'required' => false, 'maxItems' => 100, + 'minItems' => 0, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'UploadEndpoint', + 'name' => 'InstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'The instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'An instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-dvbhknfasf123****', 'title' => ''], 'required' => false, - 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com', - ], - ], - [ - 'name' => 'UploadType', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'OSS', - ], - ], - [ - 'name' => 'BackupFilePath', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/backupDir/acp-ig2bdpk374l12****_2024052014****.ab', + 'maxItems' => 1000, + 'minItems' => 0, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'PlainResult', + 'title' => 'Schema of Response', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => '', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****'], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'title' => '', 'example' => 't-14xwibw7yp73q****'], + 'ChildTaskInfo' => [ 'type' => 'array', 'items' => [ - 'description' => '', 'type' => 'object', 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-bp67acfmxazb4p****', - ], + 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-ty3bnd7b9xxxx', 'title' => ''], + 'ChildTaskId' => ['description' => 'The child task ID.', 'type' => 'string', 'example' => 't-ybde48cevxxxx', 'title' => ''], + 'AppId' => ['description' => 'The application ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], + 'description' => 'A child task object.', + 'title' => '', + 'example' => '', ], - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'Count' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-1ljew7on6ay0j****', + 'description' => 'The child task objects.', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\"\\n}","type":"json"}]', - ], - 'RecoverApp' => [ - 'summary' => '恢复应用', - 'path' => '', - 'methods' => [ - 'get', - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'InstallApp', + 'summary' => 'Installs applications in batches on Cloud Phone instances.', + 'description' => 'Before you can install an application, you must create it by calling the [CreateApp](~~2807330~~) operation. This is an asynchronous operation. You can call the [DescribeTasks](~~DescribeTasks~~) operation to query the task status.', + 'changeSet' => [ + ['createdAt' => '2025-09-22T13:03:49.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-17T03:35:22.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-08-19T09:35:42.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\",\\n \\"TaskId\\": \\"t-14xwibw7yp73q****\\",\\n \\"ChildTaskInfo\\": [\\n {\\n \\"InstanceId\\": \\"acp-ty3bnd7b9xxxx\\",\\n \\"ChildTaskId\\": \\"t-ybde48cevxxxx\\",\\n \\"AppId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'InstallMonitorAgent' => [ + 'summary' => 'Installs the monitoring plugin in a single step. An instance can generate monitoring data only after the plugin is installed.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneWDBBSN', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'BackupFileId', - 'in' => 'query', - 'schema' => [ - 'title' => 'App oss地址', - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'bf-azhps4rdyi2th****', - ], - ], - [ - 'name' => 'AndroidInstanceIdList', - 'in' => 'query', + 'name' => 'AndroidInstanceIds', + 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'A list of instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'deprecated' => false, - 'required' => true, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'UploadEndpoint', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'cpn-a1qp88ohp3a8g****-040'], 'required' => false, - 'example' => 'oss-cn-shanghai-internal.aliyuncs.com', - ], - ], - [ - 'name' => 'UploadType', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'example' => 'OSS', + 'maxItems' => 1000, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'BackupFilePath', - 'in' => 'query', + 'name' => 'SaleMode', + 'in' => 'formData', 'schema' => [ - 'description' => '', + 'description' => 'The monitoring type.'."\n" + ."\n" + .'- Instance mode: Instance'."\n" + ."\n" + .'- Node mode: Node', 'type' => 'string', - 'required' => true, - 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/backupDir/acp-ig2bdpk374l12****_2024052014****.ab', + 'required' => false, + 'enumValueTitles' => ['Instance' => 'Instance mode', 'Node' => 'Node mode'], + 'title' => '', + 'example' => 'NODE', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'PlainResult', + 'title' => 'Schema of Response', + 'description' => 'The response body.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-22ex666a653gq****', - ], - ], - ], - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****', - ], - 'Count' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1', - ], - 'TaskId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 't-1ljew7on6ay0j****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'DB070C80-45AC-52CA-8101-937C25DA****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'InstallMonitorAgent', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-22ex666a653gq****\\"\\n }\\n ],\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DB070C80-45AC-52CA-8101-937C25DA****\\"\\n}","type":"json"}]', ], - 'BackupFile' => [ - 'summary' => 'Generates and uploads backup files.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'InstanceHealer' => [ + 'summary' => 'Diagnoses and recovers cloud phone matrix instances. This operation clears the system log files of an instance to prevent the instance from becoming unrecoverable due to a full disk.', + 'path' => '', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', + 'operationType' => 'update', + 'riskType' => 'high', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneE62QJ7', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneYYGTDB'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIdList', + 'name' => 'InstanceIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the instances.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'aic-ig2bdpk374l12****', - ], - 'deprecated' => false, + 'items' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => false, 'example' => 'cpn-42do7k******-001', 'title' => ''], 'required' => true, 'maxItems' => 100, + 'description' => 'The list of instances.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'Description', + 'name' => 'Timeout', + 'in' => 'query', + 'schema' => ['description' => 'The timeout period in seconds. If you do not specify this parameter, the default value is 30.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '30', 'title' => ''], + ], + [ + 'name' => 'Strategy', 'in' => 'query', 'schema' => [ - 'title' => 'App文件名称', - 'description' => 'The description of the backup file.'."\n", + 'description' => 'The policy type. The only supported value is Clean.', + 'enumValueTitles' => ['Clean' => 'Clears system logs.'], 'type' => 'string', 'required' => false, - 'example' => 'This is a backup file description.', + 'example' => 'Clean', + 'title' => '', ], ], - [ - 'name' => 'SourceFilePathList', - 'in' => 'query', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The paths to the source files.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The absolute path to the source file.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '/data', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****'], + 'InstanceHealerModel' => [ + 'type' => 'object', + 'properties' => [ + 'Result' => ['description' => 'The result of the task execution.', 'type' => 'string', 'example' => 'True', 'title' => ''], + ], + 'description' => 'The diagnosis result object.', + 'title' => '', + 'example' => '', + ], ], - 'required' => false, - 'maxItems' => 100, + 'title' => '', + 'description' => 'The response elements.', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'InstanceHealer', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\",\\n \\"InstanceHealerModel\\": {\\n \\"Result\\": \\"True\\"\\n }\\n}","type":"json"}]', + ], + 'ListInstanceAdbAttributes' => [ + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'SourceAppList', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphone89PVC7'], + ], + 'parameters' => [ + [ + 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The names of the application packages that you want to back up.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The name of the application package that you want to back up.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'com.ss.android.ugc.aweme', - ], - 'required' => false, + 'items' => ['type' => 'string', 'description' => 'The ID of a cloud phone instance.', 'required' => false, 'title' => '', 'example' => 'acp-5hh431emkt6u*****'], 'maxItems' => 100, + 'description' => 'The list of cloud phone instance IDs. You can specify from 1 to 100 IDs.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'UploadType', + 'name' => 'ExternalIp', 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the backup.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* OSS: uploads the backup file to an OSS bucket.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'OSS' => '', - ], - 'example' => 'OSS', - ], + 'schema' => ['type' => 'string', 'description' => 'The public IP address.', 'required' => false, 'title' => '', 'example' => '106.38.188.223'], ], [ - 'name' => 'UploadEndpoint', + 'name' => 'InternalIp', 'in' => 'query', - 'schema' => [ - 'description' => 'The endpoint of the OSS bucket to which you want to upload the backup file.'."\n" - ."\n" - .'> : When calling the DescribeBuckets operation to query buckets, retrieve the IntranetEndpoint value if the cloud phone and the OSS bucket are in the same region. If they are in different regions, retrieve the ExtranetEndpoint value instead.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'oss-cn-shanghai-internal.aliyuncs.com', - ], + 'schema' => ['type' => 'string', 'description' => 'The private IP address.', 'required' => false, 'title' => '', 'example' => '10.0.3.23'], ], [ - 'name' => 'BackupFilePath', + 'name' => 'InternalPort', 'in' => 'query', - 'schema' => [ - 'description' => 'The OSS path of the backup file.'."\n" - ."\n" - .'> To upload a backup file to an OSS bucket, you must obtain the name of the bucket. When calling the describeBuckets operation to retrieve a bucket name, you must also call the ossObjectList operation to obtain the object key. Combine these to form the full path: oss://${bucketName}/${key}.'."\n", - 'type' => 'string', - 'required' => true, - 'example' => 'oss://cloudphone-saved-bucket-****/mabo/aic-i3b83gk0rw6p24jx3_2024051409****.ab', - ], + 'schema' => ['type' => 'string', 'description' => 'The ADB port number.', 'required' => false, 'title' => '', 'example' => '5555'], ], [ - 'name' => 'BackupFileName', + 'name' => 'IpProtocol', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the backup file.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'defaultBackupFile'."\n", - ], + 'schema' => ['type' => 'string', 'description' => 'The network protocol type.', 'required' => false, 'title' => '', 'example' => 'TCP'], ], [ - 'name' => 'BackupAll', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether to back up the whole instance.'."\n", - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '0', 'default' => '20', 'description' => 'The maximum number of records to return on each page for a paged query. Valid values: 1 to 100. Default value: 100.', 'required' => false, 'title' => '', 'example' => '20'], ], [ - 'name' => 'ExcludeSourceFilePathList', + 'name' => 'NextToken', 'in' => 'query', - 'allowEmptyValue' => false, - 'style' => 'repeatList', - 'schema' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - 'maxItems' => 100, - ], + 'schema' => ['type' => 'string', 'description' => 'The token that indicates the position from which the query starts. If you leave this parameter empty, the query starts from the beginning.', 'required' => false, 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ 'Data' => [ - 'description' => 'The object that is returned.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'BackupFileId' => [ - 'description' => 'The ID of the backup file.'."\n", - 'type' => 'string', - 'example' => 'bf-b0qbg3pbpjkn7****', - ], - 'BackupFileName' => [ - 'description' => 'The name of the backup file.'."\n", - 'type' => 'string', - 'example' => 'a-58ftsoo90p0qa****.ab', - ], - 'AndroidInstanceId' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 't-22ex666a5mco5****', - ], + 'GmtCreated' => ['type' => 'string', 'description' => 'The time when the connection was created.', 'title' => '', 'example' => '2024-05-15 17:33:59'], + 'GmtModified' => ['type' => 'string', 'description' => 'The time when the connection was last modified.', 'title' => '', 'example' => '2024-05-15 17:33:59'], + 'InstanceId' => ['type' => 'string', 'description' => 'The ID of the cloud phone instance.', 'title' => '', 'example' => 'acp-uto81vfd8t8z****'], + 'ExternalIp' => ['type' => 'string', 'description' => 'The public IP address.', 'title' => '', 'example' => '183.201.219.157'], + 'ExternalPort' => ['type' => 'string', 'description' => 'The public network port number.', 'title' => '', 'example' => '14840/14849'], + 'InternalIp' => ['type' => 'string', 'description' => 'The private IP address.', 'title' => '', 'example' => '10.0.0.239'], + 'InternalPort' => ['type' => 'string', 'description' => 'The private network port number.', 'title' => '', 'example' => '5555/5555'], + 'IpProtocol' => ['type' => 'string', 'description' => 'The network protocol type.', 'title' => '', 'example' => 'TCP'], ], - 'description' => '', + 'description' => 'The ADB connection information for an instance.', + 'title' => '', + 'example' => '', ], - 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****'."\n", - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****', - ], - 'Count' => [ - 'description' => 'The number of instances that are backed up.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '100', - ], - 'TaskId' => [ - 'description' => 'The ID of the batch task.'."\n", - 'type' => 'string', - 'example' => 't-22ex666a5mco5****', + 'description' => 'The ADB connection information for the instances.', + 'title' => '', + 'example' => '', ], + 'TotalCount' => ['type' => 'integer', 'format' => 'int64', 'description' => 'The total number of records.', 'title' => '', 'example' => '10'], + 'RequestId' => ['type' => 'string', 'description' => 'The request ID.', 'title' => '', 'example' => 'CB95E410-FD1D-53C5-9F7D-93CC44D7****'], + 'NextToken' => ['type' => 'string', 'description' => 'The token to start the next query. If a query does not return all results, NextToken is not empty. Use the returned NextToken value to query the next page.', 'title' => '', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****'], + 'MaxResults' => ['type' => 'integer', 'format' => 'int32', 'description' => 'The maximum number of records returned in this query.', 'title' => '', 'example' => '100'], ], + 'title' => '', + 'description' => 'The data returned.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ListInstanceAdbAttributes', + 'summary' => 'Queries the Android Debug Bridge (ADB) connection information for instances. This operation is available only to standard networks.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"MyBackup\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-22ex666a653gq****\\"\\n }\\n ],\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-14xwibw7pyrjd****\\"\\n}","type":"json"}]', - 'title' => 'BackupFile', - 'description' => 'Currently, this operation allows you to upload only backup files generated by cloud phones to Object Storage Service (OSS) buckets.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreated\\": \\"2024-05-15 17:33:59\\",\\n \\"GmtModified\\": \\"2024-05-15 17:33:59\\",\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"ExternalIp\\": \\"183.201.219.157\\",\\n \\"ExternalPort\\": \\"14840/14849\\",\\n \\"InternalIp\\": \\"10.0.0.239\\",\\n \\"InternalPort\\": \\"5555/5555\\",\\n \\"IpProtocol\\": \\"TCP\\"\\n }\\n ],\\n \\"TotalCount\\": 10,\\n \\"RequestId\\": \\"CB95E410-FD1D-53C5-9F7D-93CC44D7****\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MaxResults\\": 100\\n}","type":"json"}]', ], - 'RecoveryFile' => [ - 'summary' => 'Restores backup files.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListPolicyGroups' => [ + 'summary' => 'Queries the details of a policy.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMPR6T6', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneS5VM56'], ], 'parameters' => [ [ - 'name' => 'BackupFileId', - 'in' => 'query', - 'schema' => [ - 'title' => 'App oss地址', - 'description' => 'The ID of the backup file.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'bf-azhps4rdyi2th****', - ], - ], - [ - 'name' => 'AndroidInstanceIdList', - 'in' => 'query', + 'name' => 'PolicyGroupIds', + 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the instances.'."\n", + 'description' => 'The list of policy IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-ig2bdpk374l12****', - ], - 'deprecated' => false, - 'required' => true, + 'items' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'example' => 'pg-jc31jdxfdcsclk****', 'title' => ''], + 'required' => false, 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'UploadType', - 'in' => 'query', - 'schema' => [ - 'description' => 'The type of the backup.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* OSS: backup files are stored in OSS buckets.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'OSS' => '', - ], - 'example' => 'OSS', - ], + 'name' => 'PolicyGroupName', + 'in' => 'formData', + 'schema' => ['description' => 'The policy name.', 'type' => 'string', 'required' => false, 'example' => 'Default policy', 'title' => ''], ], [ - 'name' => 'UploadEndpoint', - 'in' => 'query', - 'schema' => [ - 'description' => 'The endpoint of the OSS bucket that stores the backup file.'."\n" - ."\n" - .'> : When calling the DescribeBuckets operation to query buckets, retrieve the IntranetEndpoint value if the cloud phone and the OSS bucket are in the same region. If they are in different regions, retrieve the ExtranetEndpoint value instead.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com', - ], + 'name' => 'MaxResults', + 'in' => 'formData', + 'schema' => ['description' => 'The maximum number of entries per page for a paged query. Valid values: 1 to 100. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '20', 'title' => ''], ], [ - 'name' => 'BackupFilePath', - 'in' => 'query', - 'schema' => [ - 'description' => 'The OSS path to which the backup file is uploaded.'."\n" - ."\n" - .'> When calling the describeBuckets operation to retrieve a bucket name, you must also call the ossObjectList operation to obtain the object key. Combine these to form the full path: oss://${bucketName}/${key}.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/aaa/acp-ig2bdpk374l12****_2024052014****.ab', - ], + 'name' => 'NextToken', + 'in' => 'formData', + 'schema' => ['description' => 'The pagination token that marks the position from which to start reading. Leave this parameter empty to read from the beginning.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', 'title' => ''], ], [ - 'name' => 'BackupAll', - 'in' => 'query', + 'name' => 'PolicyType', + 'in' => 'formData', 'schema' => [ - 'description' => 'Specifies whether to back up the whole instance.'."\n", - 'type' => 'boolean', + 'description' => 'The policy type.', + 'enumValueTitles' => ['Instance' => 'Instance', 'Node' => 'Node'], + 'type' => 'string', + 'enum' => ['Instance', 'Node'], 'required' => false, - 'example' => 'true', + 'example' => 'Instance', + 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", + 'title' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The backup file that is restored.'."\n", + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****'], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '31', 'title' => ''], + 'NextToken' => ['description' => 'The pagination token that indicates the position up to which data has been read in the current call. An empty value indicates that all data has been read.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', 'title' => ''], + 'PolicyGroupModel' => [ + 'description' => 'The policy information.', 'type' => 'array', 'items' => [ + 'description' => 'The policy information.', 'type' => 'object', 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => 'The instance ID.'."\n", + 'PolicyGroupId' => ['description' => 'The policy ID.', 'type' => 'string', 'example' => 'pg-9q6o8qpiy8opkj****', 'title' => ''], + 'PolicyGroupName' => ['description' => 'The policy name.', 'type' => 'string', 'example' => 'Default policy.', 'title' => ''], + 'GmtCreate' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2024-06-04 10:28:54', 'title' => ''], + 'Clipboard' => [ + 'description' => 'The clipboard permission.', + 'enumValueTitles' => ['read' => 'one-way allowed.', 'readwrite' => 'two-way allowed.', 'off' => 'two-way disabled.'], + 'type' => 'string', + 'example' => 'readwrite', + 'title' => '', + ], + 'Html5FileTransfer' => [ + 'description' => 'The file transfer policy for the HTML5 client.', + 'enumValueTitles' => ['all' => 'upload and download allowed.', 'download' => 'download allowed.', 'upload' => 'upload allowed.', 'off' => 'disabled.'], + 'type' => 'string', + 'example' => 'download', + 'title' => '', + ], + 'CameraRedirect' => [ + 'description' => 'Indicates whether local camera redirection is enabled.', + 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], + 'type' => 'string', + 'example' => 'on', + 'title' => '', + ], + 'LocalDrive' => [ + 'description' => 'The local disk mapping permission.', + 'enumValueTitles' => ['read' => 'read-only.', 'readwrite' => 'read and write.', 'off' => 'disabled.'], + 'type' => 'string', + 'example' => 'off', + 'title' => '', + ], + 'LockResolution' => [ + 'description' => 'The locked resolution.', + 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', + 'example' => 'off', + 'title' => '', + ], + 'NetRedirectPolicy' => [ + 'description' => 'The network redirection settings.', + 'type' => 'object', + 'properties' => [ + 'NetRedirect' => [ + 'description' => 'Indicates whether network redirection is enabled. After this feature is enabled, traffic is redirected to the client-side network by default.', + 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], + 'type' => 'string', + 'example' => 'off', + 'title' => '', + ], + 'CustomProxy' => [ + 'description' => 'Indicates whether a transparent proxy is manually configured.', + 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], + 'type' => 'string', + 'example' => 'off', + 'title' => '', + ], + 'ProxyType' => [ + 'description' => 'The proxy protocol type.', + 'enumValueTitles' => ['socks5' => 'socks5'], + 'type' => 'string', + 'example' => 'socks5', + 'title' => '', + ], + 'HostAddr' => ['description' => 'The proxy IP address of the transparent proxy. The value must be in IPv4 format.', 'type' => 'string', 'example' => '47.100.XX.XX', 'title' => ''], + 'Port' => ['description' => 'The port of the transparent proxy. Valid values: 1 to 65535.', 'type' => 'string', 'example' => '1145', 'title' => ''], + 'ProxyUserName' => ['description' => 'The proxy username. The value must be 1 to 256 characters in length and cannot contain Chinese characters or whitespace characters.', 'type' => 'string', 'example' => 'username', 'title' => ''], + 'ProxyPassword' => ['description' => 'The proxy password. The value must be 1 to 256 characters in length and cannot contain Chinese characters or whitespace characters.', 'type' => 'string', 'example' => 'password', 'title' => ''], + 'Rules' => [ + 'description' => 'The list of proxy rules.', + 'type' => 'array', + 'items' => [ + 'description' => 'The proxy rule.', + 'type' => 'object', + 'properties' => [ + 'Target' => ['description' => 'The application package name or domain name.', 'type' => 'string', 'example' => '*.baidu.com', 'title' => ''], + 'RuleType' => [ + 'description' => 'The rule type.', + 'enumValueTitles' => ['prc' => 'application package name.', 'domain' => 'domain name.'], + 'type' => 'string', + 'example' => 'domain', + 'title' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', ], - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 't-5prhfo7wv1gjx****', + 'SessionResolutionHeight' => ['description' => 'The height of the resolution.', 'type' => 'integer', 'format' => 'int32', 'example' => '1080', 'title' => ''], + 'SessionResolutionWidth' => ['description' => 'The width of the resolution.', 'type' => 'integer', 'format' => 'int32', 'example' => '1920', 'title' => ''], + 'PolicyRelatedResources' => [ + 'description' => 'The resources associated with the policy.', + 'type' => 'object', + 'properties' => [ + 'AndroidInstanceGroupIds' => [ + 'description' => 'The list of instance group IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'example' => 'ag-2dzpub83srxt*****', 'title' => ''], + 'title' => '', + 'example' => '', + ], + 'CloudPhoneMatrixIds' => [ + 'description' => 'The list of matrix IDs.', + 'type' => 'array', + 'items' => ['description' => 'The matrix ID.', 'type' => 'string', 'example' => 'cpn-3dskdfjj245s*****', 'title' => ''], + 'title' => '', + 'example' => '', + ], + ], + 'title' => '', + 'example' => '', + ], + 'Watermark' => [ + 'description' => 'The screen watermark settings.', + 'type' => 'object', + 'properties' => [ + 'WatermarkSwitch' => [ + 'description' => 'The screen watermark switch.', + 'enumValueTitles' => ['off' => 'disabled.', 'on' => 'enabled.'], + 'type' => 'string', + 'example' => 'off', + 'title' => '', + ], + 'WatermarkTypes' => [ + 'description' => 'The screen watermark content.', + 'type' => 'array', + 'items' => [ + 'description' => 'The screen watermark content.', + 'enumValueTitles' => ['Username' => 'username.', 'CustomText' => 'custom text.', 'ClientIpAddress' => 'client IP address.', 'IpAddress' => 'IP address.', 'ClientTime' => 'current time.'], + 'type' => 'string', + 'example' => 'Username', + 'title' => '', + ], + 'title' => '', + 'example' => '', + ], + 'WatermarkCustomText' => ['description' => 'The custom watermark content. The value can be up to 10 characters in length and does not support emoji characters.', 'type' => 'string', 'example' => 'custom text', 'title' => ''], + 'WatermarkFontSize' => ['description' => 'The watermark font size. Valid values: 10 to 20.', 'type' => 'integer', 'format' => 'int32', 'example' => '12', 'title' => ''], + 'WatermarkColor' => ['description' => 'The watermark font color. Valid values: 0 to 16777215.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'WatermarkTransparencyValue' => ['description' => 'The watermark opacity. A larger value indicates lower transparency. Valid values: 10 to 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '25', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'AccessPolicies' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AccessPolicyRuleId' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''], + 'CidrIp' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'Policy' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'Priority' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], + 'Description' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], - 'description' => '', + 'title' => '', + 'example' => '', ], - 'example' => '6AD56E39-430B-5401-AB4A-7B086454****'."\n", - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '6AD56E39-430B-5401-AB4A-7B086454****', - ], - 'Count' => [ - 'description' => 'The number of restored instances.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '97', - ], - 'TaskId' => [ - 'description' => 'The ID of the batch task.'."\n", - 'type' => 'string', - 'example' => 't-5prhfo7wv1gjx****', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-ehs0yoedsskom****\\"\\n }\\n ],\\n \\"RequestId\\": \\"6AD56E39-430B-5401-AB4A-7B086454****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-3eourrxaoliqq****\\"\\n}","type":"json"}]', - 'title' => 'RecoveryFile', - 'description' => 'Currently, this operation allows you to restore only backup files generated by cloud phones that are stored in Object Storage Service (OSS) buckets.'."\n", + 'gatewayOptions' => [ + 'gatewayProtocols' => [], + ], + 'title' => 'Query policy details', + 'changeSet' => [ + ['createdAt' => '2025-04-25T11:27:20.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-04-17T12:43:42.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-04-03T10:00:32.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-01-21T07:20:10.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2025-01-09T15:07:06.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-11-15T01:35:07.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-09-26T11:32:59.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-08-20T03:54:01.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-08-19T09:42:45.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\",\\n \\"TotalCount\\": 31,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"PolicyGroupModel\\": [\\n {\\n \\"PolicyGroupId\\": \\"pg-9q6o8qpiy8opkj****\\",\\n \\"PolicyGroupName\\": \\"Default policy.\\",\\n \\"GmtCreate\\": \\"2024-06-04 10:28:54\\",\\n \\"Clipboard\\": \\"readwrite\\",\\n \\"Html5FileTransfer\\": \\"download\\",\\n \\"CameraRedirect\\": \\"on\\",\\n \\"LocalDrive\\": \\"off\\",\\n \\"LockResolution\\": \\"off\\",\\n \\"NetRedirectPolicy\\": {\\n \\"NetRedirect\\": \\"off\\",\\n \\"CustomProxy\\": \\"off\\",\\n \\"ProxyType\\": \\"socks5\\",\\n \\"HostAddr\\": \\"47.100.XX.XX\\",\\n \\"Port\\": \\"1145\\",\\n \\"ProxyUserName\\": \\"username\\",\\n \\"ProxyPassword\\": \\"password\\",\\n \\"Rules\\": [\\n {\\n \\"Target\\": \\"*.baidu.com\\",\\n \\"RuleType\\": \\"domain\\"\\n }\\n ]\\n },\\n \\"SessionResolutionHeight\\": 1080,\\n \\"SessionResolutionWidth\\": 1920,\\n \\"PolicyRelatedResources\\": {\\n \\"AndroidInstanceGroupIds\\": [\\n \\"ag-2dzpub83srxt*****\\"\\n ],\\n \\"CloudPhoneMatrixIds\\": [\\n \\"cpn-3dskdfjj245s*****\\"\\n ]\\n },\\n \\"Watermark\\": {\\n \\"WatermarkSwitch\\": \\"off\\",\\n \\"WatermarkTypes\\": [\\n \\"Username\\"\\n ],\\n \\"WatermarkCustomText\\": \\"custom text\\",\\n \\"WatermarkFontSize\\": 12,\\n \\"WatermarkColor\\": 0,\\n \\"WatermarkTransparencyValue\\": 25\\n },\\n \\"AccessPolicies\\": [\\n {\\n \\"AccessPolicyRuleId\\": 0,\\n \\"CidrIp\\": \\"\\",\\n \\"Policy\\": \\"\\",\\n \\"Priority\\": 0,\\n \\"Description\\": \\"\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', ], - 'DescribeBackupFiles' => [ - 'summary' => 'Queries backup files.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ListTagResources' => [ + 'summary' => 'Queries the tags that are associated with Cloud Phone instances.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMPR6T6', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], ], 'parameters' => [ [ - 'name' => 'BackupFileId', - 'in' => 'query', - 'schema' => [ - 'title' => 'App文件地址', - 'description' => 'The ID of the backup file.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'bf-dxrh5jrv0zpb8****', - ], - ], - [ - 'name' => 'BackupFileName', + 'name' => 'RegionId', 'in' => 'query', - 'schema' => [ - 'title' => 'App文件名称', - 'description' => 'The name of the backup file. Fuzzy match is supported.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'defaulBackupFile'."\n", - ], + 'schema' => ['description' => 'The region ID.'."\n" + .'Set the value of this parameter to `cn-shanghai`.Set the value of this parameter to `ap-southeast-1`.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-shanghai / ap-southeast-1', 'title' => ''], ], [ - 'name' => 'InstanceGroupId', + 'name' => 'ResourceType', 'in' => 'query', 'schema' => [ - 'title' => 'App oss地址', - 'description' => 'The ID of the instance group.'."\n", + 'description' => 'The resource type.', + 'enumValueTitles' => ['ALIYUN::ACP::INSTANCE' => 'Cloud Phone instance'], 'type' => 'string', - 'required' => false, - 'example' => 'ag-fxdx91jsfyiy3****', + 'required' => true, + 'docRequired' => true, + 'example' => 'ALIYUN::ACP::INSTANCE', + 'title' => '', ], ], [ - 'name' => 'AndroidInstanceId', + 'name' => 'MaxResults', 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-34pqe4r0kd9kn****', - ], + 'schema' => ['description' => 'The number of entries to return on each page for a paged query.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'docRequired' => false, 'example' => '10', 'title' => ''], ], [ - 'name' => 'AndroidInstanceName', + 'name' => 'NextToken', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the instance. Fuzzy match is supported.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-34pqe4r0kd9kn****', - ], + 'schema' => ['description' => 'The token that marks the position from which to start the query. If you leave this parameter empty, the query starts from the beginning.', 'type' => 'string', 'required' => false, 'docRequired' => false, 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', 'title' => ''], ], [ - 'name' => 'Description', + 'name' => 'ResourceId', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The description of the backup file. Fuzzy match is supported.'."\n", - 'type' => 'string', + 'description' => 'A list of resource IDs. This is a list of cloud phone instance IDs. You can specify 1 to 50 IDs.', + 'type' => 'array', + 'items' => ['description' => 'The resource ID. This is the ID of a cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-123456abc****', 'title' => ''], 'required' => false, - 'example' => 'default description.', + 'maxItems' => 50, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'StatusList', + 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The status of the backup files.'."\n", + 'description' => 'A list of tags.', 'type' => 'array', 'items' => [ - 'description' => 'The state of the backup file.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* AVAILABLE: The backup file is available.'."\n" - .'* BACKUPING: The backup is in progress.'."\n" - .'* RECOVERING: Data is being restored by using the backup file.'."\n" - .'* DELETING: The backup file is being deleted.'."\n" - .'* BACKUP_FAILED: The backup operation failed.'."\n" - .'* RECOVERY_FAILED: The restoration operation failed.'."\n" - .'* PART_BACKUP_FINISHED: The backup operation is partially successful.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'AVAILABLE' => '', - 'BACKUPING' => '', - 'RECOVERING' => '', - 'DELETING' => '', - 'BACKUP_FAILED' => '', - 'RECOVERY_FAILED' => '', - 'PART_BACKUP_FINISHED' => '', + 'description' => 'A tag.', + 'type' => 'object', + 'properties' => [ + 'Key' => ['description' => 'The tag key. You can specify 1 to 20 tag keys.', 'type' => 'string', 'required' => false, 'example' => 'department', 'title' => ''], + 'Value' => ['description' => 'The tag value. You can specify 1 to 20 tag values.', 'type' => 'string', 'required' => false, 'example' => 'design', 'title' => ''], ], - 'example' => 'AVAILABLE', - ], - 'required' => false, - 'maxItems' => 100, - ], - ], - [ - 'name' => 'StartTime', - 'in' => 'query', - 'schema' => [ - 'description' => 'The beginning of the period for querying generated backup files.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '2024-05-23 10:00:00', - ], - ], - [ - 'name' => 'EndTime', - 'in' => 'query', - 'schema' => [ - 'description' => 'The end of the period for querying generated backup files.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '2024-05-20 10:00:00', - ], - ], - [ - 'name' => 'EndUserId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The owner of the backup file.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'test1', - ], - ], - [ - 'name' => 'BackupAll', - 'in' => 'query', - 'schema' => [ - 'description' => 'Specifies whether the whole instance is backed up.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* true'."\n" - .'* false'."\n", - 'type' => 'boolean', - 'required' => false, - 'enumValueTitles' => [ - 'true' => 'true', - 'false' => 'false', + 'required' => false, + 'title' => '', + 'example' => '', ], - 'example' => 'true', - ], - ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'required' => false, - 'maximum' => '100', - 'minimum' => '0', - 'example' => '10', - 'default' => '20', - ], - ], - [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', - ], - ], - [ - 'name' => 'SaleMode', - 'in' => 'query', - 'schema' => [ - 'type' => 'string', + 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The backup files that are returned.'."\n", + 'NextToken' => ['description' => 'The token that marks the position from which to start the next query. If this parameter is empty, all results have been returned.', 'type' => 'string', 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', 'title' => ''], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '20393E53-8FF1-524C-B494-B478A5369733', 'title' => ''], + 'TagResources' => [ + 'description' => 'A collection of resources and their tag information.', 'type' => 'array', 'items' => [ - 'description' => 'The backup file that is returned.'."\n", + 'description' => 'The details of the queried instance and its tags.', 'type' => 'object', 'properties' => [ - 'GmtCreated' => [ - 'description' => 'The time when the backup file was created.'."\n", - 'type' => 'string', - 'example' => '2024-05-15 17:33:59', - ], - 'GmtModified' => [ - 'description' => 'The time when the backup file was last updated.'."\n", - 'type' => 'string', - 'example' => '2024-05-15 17:33:59', - ], - 'BackupFileId' => [ - 'description' => 'The ID of the backup file.'."\n", - 'type' => 'string', - 'example' => 'bf-b0qbg3pbpjkn7****', - ], - 'BackupFileName' => [ - 'description' => 'The name of the backup file.'."\n", - 'type' => 'string', - 'example' => 'a-58ftsoo90p0qa****.ab', - ], - 'InstanceGroupId' => [ - 'description' => 'The ID of the instance group.'."\n", - 'type' => 'string', - 'example' => 'ag-58ftsoo90p0qi****', - ], - 'AndroidInstanceId' => [ - 'description' => 'The ID of the instance.'."\n", - 'type' => 'string', - 'example' => 'acp-34pqe4r0kd9kn****', - ], - 'AndroidInstanceName' => [ - 'description' => 'The name of the instance.'."\n", - 'type' => 'string', - 'example' => 'defaultInstanceName', - ], - 'TaskId' => [ - 'description' => 'The task ID.'."\n", - 'type' => 'string', - 'example' => 't-bp67acfmxazb4p****', - ], - 'EndUserId' => [ - 'description' => 'The owner of the backup file.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'Status' => [ - 'description' => 'The status of the backup file.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* AVAILABLE'."\n" - .'* RECOVERING'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'AVAILABLE' => '', - 'RECOVERING' => '', - ], - 'example' => 'AVAILABLE', - ], - 'SourceFilePathList' => [ - 'description' => 'The directories of the source files.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The directory of the source file.'."\n", - 'type' => 'string', - 'example' => '/data/media', - ], - ], - 'SourceAppInfoList' => [ - 'description' => 'The names of the application packages that are backed up.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The name of the application package that is backed up.'."\n", - 'type' => 'string', - 'example' => 'com.ss.android.ugc.aweme'."\n", - ], - ], - 'RegionId' => [ - 'description' => 'The region ID.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'FileSize' => [ - 'description' => 'The total size of the source files.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '10227168', - ], - 'UploadType' => [ - 'description' => 'The type of the backup.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* OSS: backup files are stored in OSS buckets. .'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'OSS' => '', - ], - 'example' => 'OSS', - ], - 'UploadEndpoint' => [ - 'description' => 'The endpoint of the OSS bucket that stores the backup file.'."\n", - 'type' => 'string', - 'example' => 'oss-cn-hangzhou.aliyuncs.com', - ], - 'BackupFilePath' => [ - 'description' => 'The directory in which the backup file is stored.'."\n", - 'type' => 'string', - 'example' => 'oss://cloudphone-saved-bucket-cn-shanghai/backup/aic-58ftsoo90p0qa****.ab', - ], - 'Description' => [ - 'description' => 'The description of the backup file.'."\n", - 'type' => 'string', - 'example' => 'This is default description.', - ], - 'BackupAll' => [ - 'description' => 'Indicates whether the whole instance is backed up.'."\n", - 'type' => 'boolean', - 'example' => 'true', - ], - 'SystemVersion' => [ + 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TF', 'title' => ''], + 'ResourceType' => [ + 'description' => 'The resource type.', + 'enumValueTitles' => ['ALIYUN::ACP::INSTANCE' => 'Cloud phone instance'], 'type' => 'string', + 'example' => 'ALIYUN::ACP::INSTANCE', + 'title' => '', ], + 'ResourceId' => ['description' => 'The resource ID. This is the ID of the cloud phone instance.', 'type' => 'string', 'example' => 'acp-8jwttemxb4t6y****', 'title' => ''], + 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'department', 'title' => ''], ], + 'title' => '', + 'example' => '', ], - ], - 'RequestId' => [ - 'description' => 'The ID of the request. If the request fails, provide this ID to technical support to assist in diagnosing the issue.'."\n", - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', - ], - 'MaxResults' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'string', - 'example' => '10', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int64', - 'example' => '91', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****\\",\\n \\"RequestId\\": \\"20393E53-8FF1-524C-B494-B478A5369733\\",\\n \\"TagResources\\": [\\n {\\n \\"TagValue\\": \\"TF\\",\\n \\"ResourceType\\": \\"ALIYUN::ACP::INSTANCE\\",\\n \\"ResourceId\\": \\"acp-8jwttemxb4t6y****\\",\\n \\"TagKey\\": \\"department\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'ListTagResources', + 'description' => 'Specify at least one of the following parameters in the request to determine the queried object: `ResourceId.N`, `Tag.N.Key`, or `Tag.N.Value`.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreated\\": \\"2024-05-15 17:33:59\\",\\n \\"GmtModified\\": \\"2024-05-15 17:33:59\\",\\n \\"BackupFileId\\": \\"bf-b0qbg3pbpjkn7****\\",\\n \\"BackupFileName\\": \\"a-58ftsoo90p0qa****.ab\\",\\n \\"InstanceGroupId\\": \\"ag-58ftsoo90p0qi****\\",\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"AndroidInstanceName\\": \\"测试云手机\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\",\\n \\"EndUserId\\": \\"test\\",\\n \\"Status\\": \\"AVAILABLE\\",\\n \\"SourceFilePathList\\": [\\n \\"/data/media\\"\\n ],\\n \\"SourceAppInfoList\\": [\\n \\"com.example.xhs\\"\\n ],\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"FileSize\\": 10227168,\\n \\"UploadType\\": \\"OSS\\",\\n \\"UploadEndpoint\\": \\"oss-cn-hangzhou.aliyuncs.com\\",\\n \\"BackupFilePath\\": \\"oss://cloudphone-saved-bucket-cn-shanghai/backup/aic-58ftsoo90p0qa****.ab\\",\\n \\"Description\\": \\"这是备份/data/media目录的备份文件。\\",\\n \\"BackupAll\\": false,\\n \\"SystemVersion\\": \\"\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"MaxResults\\": \\"10\\",\\n \\"TotalCount\\": 91\\n}","type":"json"}]', - 'title' => 'DescribeBackupFiles', - 'description' => 'Currently, this operation allows you to query only backup files generated by cloud phones that are stored in Object Storage Service (OSS) buckets.'."\n", ], - 'DeleteBackupFile' => [ - 'summary' => '删除备份文件', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ModifyAndroidInstance' => [ + 'summary' => 'Modifies the information of an Android instance. Currently, this operation can be used to modify only the instance name and the upstream and downstream bandwidth limits.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMPR6T6', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVGR0HK'], ], 'parameters' => [ [ - 'name' => 'BackupFileIdList', + 'name' => 'AndroidInstanceId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of a single instance. If you specify this parameter, InstanceIds is ignored.', 'type' => 'string', 'required' => false, 'example' => 'acp-8v5bjld0r7tkl****'."\n", 'title' => ''], + ], + [ + 'name' => 'NewAndroidInstanceName', + 'in' => 'query', + 'schema' => ['description' => 'The new name for the instance.'."\n" + ."\n" + .'> - The name can be up to 30 characters long. It must start with a letter or a Chinese character and cannot start with http\\:// or https\\://. The name can contain only letters, digits, Chinese characters, colons (:), underscores (\\_), periods (.), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'new_name', 'title' => ''], + ], + [ + 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'bf-islptramvb730****', - ], - 'required' => true, + 'items' => ['description' => 'An Android instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh4a31emkt6u****', 'title' => ''], 'maxItems' => 100, + 'description' => 'The list of Android instance IDs. You can specify from 1 to 100 IDs.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'UpBandwidthLimit', + 'in' => 'query', + 'schema' => ['description' => 'The limit for upstream bandwidth. Unit: Mbps.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], + ], + [ + 'name' => 'DownBandwidthLimit', + 'in' => 'query', + 'schema' => ['description' => 'The limit for downstream bandwidth. Unit: Mbps.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'PlainResult', + 'title' => 'Schema of Response', + 'description' => 'The returned parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\"\\n}","type":"json"}]', - ], - 'CreatePolicyGroup' => [ - 'summary' => 'Creates a policy.', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\"\\n}","type":"json"}]', + 'title' => 'ModifyAndroidInstance', + 'changeSet' => [ + ['createdAt' => '2025-07-15T07:46:27.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + ], + 'ModifyAndroidInstanceGroup' => [ + 'summary' => 'Modifies attributes of an instance group.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -10687,730 +9324,530 @@ 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneS5VM56', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphoneVGR0HK'], ], 'parameters' => [ [ - 'name' => 'Html5FileTransfer', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The file transfer policy of the Alibaba Cloud Workspace web client.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* all: File upload and download are supported.'."\n" - .'* download: Only file download is supported.'."\n" - .'* upload: Only file upload is supported.'."\n" - .'* off: File upload or download is forbidden.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'all' => '', - 'download' => '', - 'upload' => '', - 'off' => '', - ], - 'example' => 'off', - ], + 'name' => 'InstanceGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the instance group.', 'type' => 'string', 'required' => false, 'example' => 'ag-cuv4scs4obxhs****'."\n", 'title' => ''], ], [ - 'name' => 'LocalDrive', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The read/write permissions on the on-premises drive.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* read: read-only.'."\n" - .'* readwrite: ready and write.'."\n" - .'* off: read/write disabled.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'read' => '', - 'readwrite' => '', - 'off' => '', - ], - 'example' => 'off', - ], + 'name' => 'NewInstanceGroupName', + 'in' => 'query', + 'schema' => ['description' => 'The new name of the instance group.'."\n" + ."\n" + .'> The name can be up to 30 characters in length. It can contain letters, digits, colons (:), underscores (\\_), periods (.), or hyphens (-). It must start with letters but cannot start with http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'newName', 'title' => ''], ], [ - 'name' => 'PolicyGroupName', - 'in' => 'formData', + 'name' => 'PolicyGroupId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the policy.', 'type' => 'string', 'required' => false, 'example' => 'pg-2w97kp89gnsif****', 'title' => ''], + ], + [ + 'name' => 'StreamMode', + 'in' => 'query', 'schema' => [ - 'description' => 'The name of the policy.'."\n", - 'type' => 'string', + 'description' => 'Specifies the streaming mode for instances within the instance group. If this parameter is omitted, the mode defaults to 1 (Preemptive).', + 'enumValueTitles' => [1 => 'Preemptive Mode (Default)', 'Collaborative Mode'], + 'type' => 'integer', + 'format' => 'int32', 'required' => false, - 'example' => 'defaultPolicy', + 'example' => '1', + 'title' => '', ], ], - [ - 'name' => 'CameraRedirect', - 'in' => 'formData', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'Specifies whether to enable the webcam redirection feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', + 'title' => 'Schema of Response', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '6C83EBE3-F267-5F11-ABF8-4E7B90B****'], ], - 'example' => 'off', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6C83EBE3-F267-5F11-ABF8-4E7B90B****\\"\\n}","type":"json"}]', + 'title' => 'ModifyAndroidInstanceGroup', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'ModifyApp' => [ + 'summary' => 'Modify attributes of an application.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'deprecated' => false, + 'systemTags' => ['operationType' => 'none'], + 'parameters' => [ [ - 'name' => 'Clipboard', - 'in' => 'formData', + 'name' => 'AppId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the application.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1234', 'title' => ''], + ], + [ + 'name' => 'AppName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the application.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Application name', 'title' => ''], + ], + [ + 'name' => 'IconUrl', + 'in' => 'query', + 'schema' => ['description' => 'The URL of the icon.'."\n", 'type' => 'string', 'required' => false, 'example' => 'https://defaultIcon.png', 'title' => ''], + ], + [ + 'name' => 'Description', + 'in' => 'query', + 'schema' => ['description' => 'The description of the application.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Application description', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The read/write permissions on the clipboard.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* read: read-only.'."\n" - .'* readwrite: read and write.'."\n" - .'* off: read/write disabled.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'read' => '', - 'readwrite' => '', - 'off' => '', + 'title' => 'Schema of Response', + 'description' => 'The response parameters.'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '83418504-5A82-5896-A24C-B2D468F0****'], ], - 'example' => 'readwrite', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"83418504-5A82-5896-A24C-B2D468F0****\\"\\n}","type":"json"}]', + 'title' => 'ModifyApp', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'translator' => 'manual', + ], + 'ModifyCloudPhoneNode' => [ + 'summary' => 'Modifies a cloud phone matrix. Currently, you can only modify the name of a cloud phone matrix. Note: In the Cloud Phone system, a Matrix (Cloud Phone Server) is a logical resource management unit that represents a single physical server instance. This physical server can be partitioned into multiple, independently running cloud phone instances. These instances share the Matrix\'s underlying compute, storage, and network resources. Creating a Matrix is equivalent to leasing a dedicated physical server. On this server, you can then create your cloud phone instances. The number of instances you can create depends on their configuration.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'ResolutionHeight', - 'in' => 'formData', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneE7UBTJ'], + ], + 'parameters' => [ + [ + 'name' => 'NodeId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the cloud phone matrix.', 'type' => 'string', 'required' => false, 'example' => 'cpn-0ugbptfu473fy****', 'title' => ''], + ], + [ + 'name' => 'NewNodeName', + 'in' => 'query', + 'schema' => ['description' => 'The name that you want to assign to the cloud phone matrix.', 'type' => 'string', 'required' => false, 'example' => 'node_name_new', 'title' => ''], + ], + [ + 'name' => 'StreamMode', + 'in' => 'query', 'schema' => [ - 'description' => 'The height of the resolution. Unit: pixels.'."\n", + 'description' => 'Specifies the streaming mode for instances in the cloud phone matrix. If this parameter is left empty, the exclusive mode is used.', + 'enumValueTitles' => [1 => 'Exclusive mode', 'Collaborative mode'], 'type' => 'integer', 'format' => 'int32', 'required' => false, - 'example' => '1280', + 'example' => '1', + 'title' => '', ], ], - [ - 'name' => 'ResolutionWidth', - 'in' => 'formData', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The width of the resolution. Unit: pixels.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '720', + 'title' => 'Schema of Response', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****'], + ], + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\"\\n}","type":"json"}]', + 'title' => 'ModifyCloudPhoneNode', + 'description' => 'Changing the streaming mode is an asynchronous operation. Please do not perform this action frequently.', + 'changeSet' => [ + ['createdAt' => '2025-06-28T12:53:31.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'ModifyDisplayConfig' => [ + 'summary' => 'Modifies display settings.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneVB2A7J'], + ], + 'parameters' => [ [ - 'name' => 'LockResolution', + 'name' => 'AndroidInstanceIds', 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'Specifies whether to lock the resolution.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', + 'description' => 'A list of instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'cpn-9y1nwysxr9d6lk2xq-****', 'title' => ''], 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NetRedirectPolicy', + 'name' => 'DisplayConfig', 'in' => 'formData', 'style' => 'json', 'schema' => [ - 'description' => 'The network redirection policy.'."\n", + 'description' => 'The display settings.', 'type' => 'object', 'properties' => [ - 'NetRedirect' => [ - 'description' => 'Specifies whether to enable the network redirection feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - 'CustomProxy' => [ - 'description' => 'Specifies whether to manually configure a custom proxy.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", + 'ResolutionHeight' => ['description' => 'The resolution height, in pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1920', 'title' => ''], + 'ResolutionWidth' => ['description' => 'The resolution width, in pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '720', 'title' => ''], + 'Dpi' => ['description' => 'The dots per inch (DPI). Valid values: 72 to 600.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '240', 'title' => ''], + 'Fps' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => 'null', 'title' => ''], + 'LockResolution' => [ + 'description' => 'Specifies whether to lock the resolution.', + 'enumValueTitles' => ['off' => 'Does not lock the resolution.', 'on' => 'Locks the resolution.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], 'example' => 'off', - ], - 'ProxyType' => [ - 'description' => 'The type of the proxy protocol.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* socks5.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'socks5' => 'socks5', - ], - 'example' => 'socks5', - ], - 'HostAddr' => [ - 'description' => 'The IPv4 address of the custom proxy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '47.100.XX.XX', - ], - 'Port' => [ - 'description' => 'The port of the custom proxy. Valid values: 1 to 65535.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '1145', - ], - 'ProxyUserName' => [ - 'description' => 'The username of the proxy. The name must be 1 to 256 in length and cannot contain Chinese character or space characters.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'username', - ], - 'ProxyPassword' => [ - 'description' => 'The password of the proxy. The password must be 1 to 256 in length and cannot contain Chinese character or space characters.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'password', - ], - 'Rules' => [ - 'description' => 'The proxy rules. You can create up to 100 proxy rules.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The proxy rule.'."\n", - 'type' => 'object', - 'properties' => [ - 'Target' => [ - 'description' => 'The name of the application package or domain name.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '*.example.com', - ], - 'RuleType' => [ - 'description' => 'The type of the rule.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* prc: an application package name.'."\n" - .'* domain: a domain name.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'prc' => '', - 'domain' => '', - ], - 'example' => 'domain', - ], - ], - 'required' => false, - ], - 'required' => false, + 'title' => '', ], ], 'required' => false, + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'PolicyType', - 'in' => 'formData', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'type' => 'string', - 'enum' => [ - 'Instance', - 'Node', + 'title' => 'Schema of Response', + 'description' => 'The response elements.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'A578AD3A-8E7C-54FE-A09F-B060941*****'], ], + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A578AD3A-8E7C-54FE-A09F-B060941*****\\"\\n}","type":"json"}]', + 'title' => 'ModifyDisplayConfig', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'ModifyInstanceChargeType' => [ + 'summary' => 'Modifies the billing method. Currently, this operation only allows you to change the billing method from pay-as-you-go to subscription.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneTVG3Y7'], + ], + 'parameters' => [ [ - 'name' => 'Watermark', - 'in' => 'formData', - 'style' => 'json', + 'name' => 'InstanceGroupIds', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'type' => 'object', - 'properties' => [ - 'WatermarkSwitch' => [ - 'type' => 'string', - ], - 'WatermarkTypes' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - ], - 'WatermarkCustomText' => [ - 'type' => 'string', - ], - 'WatermarkFontSize' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'WatermarkColor' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'WatermarkTransparencyValue' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], + 'description' => 'The instance group IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-25nt4kk9whhdh****', 'title' => ''], + 'required' => true, + 'maxItems' => 100, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'ChargeType', + 'in' => 'query', + 'schema' => [ + 'description' => 'The new billing method for the instance groups.'."\n" + ."\n" + .'> You can only change the billing method from pay-as-you-go to subscription.', + 'enumValueTitles' => ['PrePaid' => 'Subscription'], + 'type' => 'string', + 'required' => true, + 'example' => 'PrePaid', + 'title' => '', ], ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['description' => 'The subscription duration. The PeriodUnit parameter specifies the unit. Valid subscription durations are 1, 2, 3, and 6 months, and 1 year.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'query', + 'schema' => ['description' => 'The unit for the subscription duration. Valid values:'."\n" + ."\n" + .'- **Month**'."\n" + ."\n" + .'- **Year**', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], + ], + [ + 'name' => 'AutoPay', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable auto-payment. The default value is `false`.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'AutoRenew', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable auto-renewal. The default value is `false`.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => ['description' => 'The promotion or coupon ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******', - ], - 'PolicyGroupId' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'example' => 'pg-exbuu6yrpvb******', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****'], + 'InstanceGroupIds' => [ + 'description' => 'The instance group IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'example' => 'ag-cuv4scs4obxch****', 'title' => ''], + 'title' => '', + 'example' => '', ], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '22326560487****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ModifyInstanceChargeType', + 'changeSet' => [ + ['createdAt' => '2025-09-05T07:55:24.000Z', 'description' => 'Request parameters changed'], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\",\\n \\"PolicyGroupId\\": \\"pg-exbuu6yrpvb******\\"\\n}","type":"json"}]', - 'title' => 'CreatePolicyGroup', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"InstanceGroupIds\\": [\\n \\"ag-cuv4scs4obxch****\\"\\n ],\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', ], - 'ListPolicyGroups' => [ - 'summary' => 'Queries policies.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ModifyJVSInstance' => [ + 'summary' => 'Modifies the configuration of a JVS instance.', + 'path' => '', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', - 'riskType' => 'none', + 'operationType' => 'update', + 'riskType' => 'high', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneS5VM56', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], ], 'parameters' => [ [ - 'name' => 'PolicyGroupIds', - 'in' => 'formData', + 'name' => 'InstanceIds', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the policies.'."\n", 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'pg-jc31jdxfdcsclk****', - ], + 'items' => ['description' => 'The ID of a cloud phone instance. You can specify 1 to 100 IDs.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh4a31emkt6u****', 'title' => ''], 'required' => false, 'maxItems' => 100, + 'title' => '', + 'description' => 'A list of instance IDs.', + 'example' => '', ], ], [ - 'name' => 'PolicyGroupName', - 'in' => 'formData', + 'name' => 'CreditConfig', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The name of the policy.'."\n", - 'type' => 'string', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CreditLimit' => ['description' => 'The credit limit.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], + 'LimitPeriod' => [ + 'description' => 'The credit limit period.', + 'enumValueTitles' => ['total' => 'The total usage limit.', 'month' => 'The limit resets monthly, based on the resource activation time.', 'day' => 'The limit resets daily at 00:00.'], + 'type' => 'string', + 'required' => false, + 'example' => 'day', + 'title' => '', + ], + ], + 'description' => 'A credit limit configuration.', + 'required' => false, + 'title' => '', + 'example' => '', + ], 'required' => false, - 'example' => 'defaultPolicyGroup', + 'maxItems' => 100, + 'title' => '', + 'description' => 'The credit limit configuration. New configurations overwrite existing ones.', + 'example' => '', ], ], [ - 'name' => 'MaxResults', - 'in' => 'formData', - 'schema' => [ - 'description' => 'The maximum number of entries per page. Value range: 1 to 100. Default value: 20.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '1', - 'example' => '20', - ], + 'name' => 'ApplyToAll', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to apply the configuration to all instances.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'true'], ], [ - 'name' => 'NextToken', - 'in' => 'formData', + 'name' => 'InstanceName', + 'in' => 'query', + 'schema' => ['description' => 'The new instance name.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'defaultInstanceName'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The pagination token that is used in the request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****', 'title' => ''], + ], + 'title' => '', + 'description' => 'The response object.', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ModifyJVSInstance', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\"\\n}","type":"json"}]', + ], + 'ModifyKeyPairName' => [ + 'summary' => 'Modifies Android Debug Bridge (ADB) key pairs.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], + ], + 'parameters' => [ + [ + 'name' => 'KeyPairId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the ADB key pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'kp-6v2q33ae4tw3a****', 'title' => ''], + ], [ - 'name' => 'PolicyType', - 'in' => 'formData', - 'schema' => [ - 'type' => 'string', - 'enum' => [ - 'Instance', - 'Node', - ], - ], + 'name' => 'NewKeyPairName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the ADB key pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'newKeyPairName', 'minLength' => 2, 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', + 'title' => 'BaseResult', 'description' => 'The response parameters.'."\n", 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****', - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '31', - ], - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****', - ], - 'PolicyGroupModel' => [ - 'description' => 'The policies.'."\n", - 'type' => 'array', - 'items' => [ - 'type' => 'object', - 'properties' => [ - 'PolicyGroupId' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'example' => 'pg-9q6o8qpiy8opkj****', - ], - 'PolicyGroupName' => [ - 'description' => 'The name of the policy.'."\n", - 'type' => 'string', - 'example' => 'Default Policy'."\n", - ], - 'GmtCreate' => [ - 'description' => 'The time when the policy was created.'."\n", - 'type' => 'string', - 'example' => '2024-06-04 10:28:54', - ], - 'Clipboard' => [ - 'description' => 'The read/write permissions on the clipboard.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* read: read-only.'."\n" - .'* readwrite: read and write.'."\n" - .'* off: read/write disabled.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'read' => '', - 'readwrite' => '', - 'off' => '', - ], - 'example' => 'readwrite', - ], - 'Html5FileTransfer' => [ - 'description' => 'The file transfer policy of the HTML5 client.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* all: File upload and download are supported.'."\n" - .'* download: Only file download is supported.'."\n" - .'* upload: Only file upload is supported.'."\n" - .'* off: File upload or download is forbidden.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'all' => '', - 'download' => '', - 'upload' => '', - 'off' => '', - ], - 'example' => 'download', - ], - 'CameraRedirect' => [ - 'description' => 'Specifies whether to enable the webcam redirection feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'on', - ], - 'LocalDrive' => [ - 'description' => 'The read/write permissions on the on-premises drive.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* read: read-only.'."\n" - .'* readwrite: ready and write.'."\n" - .'* off: read/write denied.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'read' => '', - 'readwrite' => '', - 'off' => '', - ], - 'example' => 'off', - ], - 'LockResolution' => [ - 'description' => 'Identifies whether the resolution is locked.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - 'NetRedirectPolicy' => [ - 'description' => 'The network redirection policy.'."\n", - 'type' => 'object', - 'properties' => [ - 'NetRedirect' => [ - 'description' => 'Indicates whether the network redirection feature is enabled. When this feature is enabled, network traffic is automatically redirected to the on-premises network by default.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - 'CustomProxy' => [ - 'description' => 'Indicates whether a custom proxy is manually configured.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - 'ProxyType' => [ - 'description' => 'The type of the proxy protocol.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* socks5.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'socks5' => 'socks5', - ], - 'example' => 'socks5', - ], - 'HostAddr' => [ - 'description' => 'The IPv4 address of the custom proxy.'."\n", - 'type' => 'string', - 'example' => '47.100.XX.XX', - ], - 'Port' => [ - 'description' => 'The port of the custom proxy. Valid values: 1 to 65535.'."\n", - 'type' => 'string', - 'example' => '1145', - ], - 'ProxyUserName' => [ - 'description' => 'The username of the proxy. The name must be 1 to 256 in length and cannot contain Chinese character or space characters.'."\n", - 'type' => 'string', - 'example' => 'username', - ], - 'ProxyPassword' => [ - 'description' => 'The password of the proxy. The password must be 1 to 256 in length and cannot contain Chinese character or space characters.'."\n", - 'type' => 'string', - 'example' => 'password', - ], - 'Rules' => [ - 'description' => 'The proxy rules.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The proxy rule.'."\n", - 'type' => 'object', - 'properties' => [ - 'Target' => [ - 'description' => 'The name of the application package or domain name.'."\n", - 'type' => 'string', - 'example' => '*.example.com', - ], - 'RuleType' => [ - 'description' => 'The type of the rule.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* prc: an application package name.'."\n" - .'* domain: a domain name.'."\n", - 'type' => 'string', - 'enumValueTitles' => [ - 'prc' => '', - 'domain' => '', - ], - 'example' => 'domain', - ], - ], - ], - ], - ], - ], - 'SessionResolutionHeight' => [ - 'description' => 'The height of the resolution.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1080', - ], - 'SessionResolutionWidth' => [ - 'description' => 'The width of the resolution.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1920', - ], - 'PolicyRelatedResources' => [ - 'type' => 'object', - 'properties' => [ - 'AndroidInstanceGroupIds' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - ], - 'CloudPhoneMatrixIds' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - ], - ], - ], - 'Watermark' => [ - 'type' => 'object', - 'properties' => [ - 'WatermarkSwitch' => [ - 'type' => 'string', - ], - 'WatermarkTypes' => [ - 'type' => 'array', - 'items' => [ - 'type' => 'string', - ], - ], - 'WatermarkCustomText' => [ - 'type' => 'string', - ], - 'WatermarkFontSize' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'WatermarkColor' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'WatermarkTransparencyValue' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - ], - ], - ], - 'description' => '', - ], - ], + 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', + 'title' => 'ModifyKeyPairName', + 'changeSet' => [ + ['createdAt' => '2025-07-22T06:44:12.000Z', 'description' => 'Request parameters changed'], ], - 'eventInfo' => [ - 'enable' => false, - 'eventNames' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\",\\n \\"TotalCount\\": 31,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uON****\\",\\n \\"PolicyGroupModel\\": [\\n {\\n \\"PolicyGroupId\\": \\"pg-9q6o8qpiy8opkj****\\",\\n \\"PolicyGroupName\\": \\"默认策略。\\",\\n \\"GmtCreate\\": \\"2024-06-04 10:28:54\\",\\n \\"Clipboard\\": \\"readwrite\\",\\n \\"Html5FileTransfer\\": \\"download\\",\\n \\"CameraRedirect\\": \\"on\\",\\n \\"LocalDrive\\": \\"off\\",\\n \\"LockResolution\\": \\"off\\",\\n \\"NetRedirectPolicy\\": {\\n \\"NetRedirect\\": \\"off\\",\\n \\"CustomProxy\\": \\"off\\",\\n \\"ProxyType\\": \\"socks5\\",\\n \\"HostAddr\\": \\"47.100.XX.XX\\",\\n \\"Port\\": \\"1145\\",\\n \\"ProxyUserName\\": \\"username\\",\\n \\"ProxyPassword\\": \\"password\\",\\n \\"Rules\\": [\\n {\\n \\"Target\\": \\"*.baidu.com\\",\\n \\"RuleType\\": \\"domain\\"\\n }\\n ]\\n },\\n \\"SessionResolutionHeight\\": 1080,\\n \\"SessionResolutionWidth\\": 1920,\\n \\"PolicyRelatedResources\\": {\\n \\"AndroidInstanceGroupIds\\": [\\n \\"ag-2dzpub83srxt*****\\"\\n ],\\n \\"CloudPhoneMatrixIds\\": [\\n \\"cpn-3dskdfjj245s*****\\"\\n ]\\n },\\n \\"Watermark\\": {\\n \\"WatermarkSwitch\\": \\"off\\",\\n \\"WatermarkTypes\\": [\\n \\"Username\\"\\n ],\\n \\"WatermarkCustomText\\": \\"custom text\\",\\n \\"WatermarkFontSize\\": 12,\\n \\"WatermarkColor\\": 0,\\n \\"WatermarkTransparencyValue\\": 25\\n }\\n }\\n ]\\n}","type":"json"}]', - 'title' => 'ListPolicyGroups', ], 'ModifyPolicyGroup' => [ - 'summary' => 'Modifies a policy.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'summary' => 'Modifies the information of a policy group.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -11422,247 +9859,154 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVB2A7J', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVB2A7J'], ], 'parameters' => [ [ 'name' => 'Html5FileTransfer', 'in' => 'formData', 'schema' => [ - 'description' => 'The file transfer policy of the Alibaba Cloud Workspace web client.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* all: File upload and download are supported.'."\n" - .'* download: Only file download is supported.'."\n" - .'* upload: Only file upload is supported.'."\n" - .'* off: File upload or download is forbidden.'."\n", + 'description' => 'The file transfer policy for the Wuying web client.', + 'enumValueTitles' => ['all' => 'Allows uploads and downloads.', 'download' => 'Allows downloads.', 'upload' => 'Allows uploads.', 'off' => 'Disables file transfer.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'all' => '', - 'download' => '', - 'upload' => '', - 'off' => '', - ], 'example' => 'off', + 'title' => '', ], ], [ 'name' => 'LocalDrive', 'in' => 'formData', 'schema' => [ - 'description' => 'The read/write permissions on the on-premises drive.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* read: read-only.'."\n" - .'* readwrite: ready and write.'."\n" - .'* off: read/write disabled.'."\n", + 'description' => 'The local disk mapping permission.', + 'enumValueTitles' => ['read' => 'Read-only.', 'readwrite' => 'Read and write.', 'off' => 'Disabled.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'read' => '', - 'readwrite' => '', - 'off' => '', - ], 'example' => 'off', + 'title' => '', ], ], [ 'name' => 'CameraRedirect', 'in' => 'formData', 'schema' => [ - 'description' => 'Specifies whether to enable the webcam redirection feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", + 'description' => 'Specifies whether to enable local camera redirection.', + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], 'example' => 'off', + 'title' => '', ], ], [ 'name' => 'Clipboard', 'in' => 'formData', 'schema' => [ - 'description' => 'The read/write permissions on the clipboard.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* read: read-only.'."\n" - .'* readwrite: ready and write.'."\n" - .'* off: read/write disabled.'."\n", + 'description' => 'The clipboard permission.', + 'enumValueTitles' => ['read' => 'Read-only.', 'readwrite' => 'Read and write.', 'off' => 'Disabled.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'read' => '', - 'readwrite' => '', - 'off' => '', - ], 'example' => 'readwrite', + 'title' => '', ], ], [ 'name' => 'PolicyGroupId', 'in' => 'formData', - 'schema' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'pg-4bi18ebi9tfjh****', - ], + 'schema' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'example' => 'pg-4bi18ebi9tfjh****', 'title' => ''], ], [ 'name' => 'PolicyGroupName', 'in' => 'formData', - 'schema' => [ - 'description' => 'The name of the policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'defaultPolicyGroup', - ], + 'schema' => ['description' => 'The policy name.', 'type' => 'string', 'example' => 'Default policy', 'required' => false, 'title' => ''], ], [ 'name' => 'ResolutionHeight', 'in' => 'formData', - 'schema' => [ - 'description' => 'The height of the resolution. Unit: pixels.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1280', - ], + 'schema' => ['description' => 'The height of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1280', 'title' => ''], ], [ 'name' => 'ResolutionWidth', 'in' => 'formData', - 'schema' => [ - 'description' => 'The width of the resolution. Unit: pixels.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '720', - ], + 'schema' => ['description' => 'The width of the resolution. Unit: pixels.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '720', 'title' => ''], ], [ 'name' => 'LockResolution', 'in' => 'formData', 'schema' => [ - 'description' => 'Specifies whether to lock the resolution.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", + 'description' => 'Specifies whether to lock the resolution.', + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], 'example' => 'off', - ], - ], - [ - 'name' => 'NetRedirectPolicy', - 'in' => 'formData', - 'style' => 'json', - 'schema' => [ - 'description' => 'The network redirection policy.'."\n", - 'type' => 'object', - 'properties' => [ - 'NetRedirect' => [ - 'description' => 'Specifies whether to enable network redirection.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - 'CustomProxy' => [ - 'description' => 'Specifies whether to manually configure a custom proxy.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* off'."\n" - .'* on'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - 'ProxyType' => [ - 'description' => 'The type of the proxy protocol.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* socks5.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'socks5' => 'socks5', - ], - 'example' => 'socks5', - ], - 'HostAddr' => [ - 'description' => 'The IPv4 address of the custom proxy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => '47.100.XX.XX', - ], - 'Port' => [ - 'description' => 'The port of the custom proxy. Valid values: 1 to 65535.'."\n", + 'title' => '', + ], + ], + [ + 'name' => 'NetRedirectPolicy', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'Network redirection.', + 'type' => 'object', + 'properties' => [ + 'NetRedirect' => [ + 'description' => 'Specifies whether to enable network redirection.', + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, - 'example' => '1145', + 'example' => 'off', + 'title' => '', ], - 'ProxyUserName' => [ - 'description' => 'The username of the proxy. The name must be 1 to 256 in length and cannot contain Chinese character or space characters.'."\n", + 'CustomProxy' => [ + 'description' => 'Specifies whether to manually configure a transparent proxy.', + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', 'required' => false, - 'example' => 'username', + 'example' => 'off', + 'title' => '', ], - 'ProxyPassword' => [ - 'description' => 'The password of the proxy. The password must be 1 to 256 in length and cannot contain Chinese character or space characters.'."\n", + 'ProxyType' => [ + 'description' => 'The proxy protocol type.', + 'enumValueTitles' => ['socks5' => 'SOCKS5'], 'type' => 'string', 'required' => false, - 'example' => 'password', + 'example' => 'socks5', + 'title' => '', ], + 'HostAddr' => ['description' => 'The IP address of the transparent proxy. The value must be an IPv4 address.', 'type' => 'string', 'required' => false, 'example' => '47.100.XX.XX', 'title' => ''], + 'Port' => ['description' => 'The port for the transparent proxy. The port number must be an integer from 1 to 65535.', 'type' => 'string', 'required' => false, 'example' => '1145', 'title' => ''], + 'ProxyUserName' => ['description' => 'The username for the proxy. The username must be 1 to 256 characters in length and cannot contain Chinese characters or spaces.', 'type' => 'string', 'required' => false, 'example' => 'username', 'title' => ''], + 'ProxyPassword' => ['description' => 'The password for the proxy. The password must be 1 to 256 characters in length and cannot contain Chinese characters or spaces.', 'type' => 'string', 'required' => false, 'example' => 'password', 'title' => ''], 'Rules' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ - 'Target' => [ - 'type' => 'string', - ], + 'Target' => ['description' => 'The application package name or domain name.', 'type' => 'string', 'required' => false, 'example' => 'example.com', 'title' => ''], 'RuleType' => [ + 'description' => 'The rule type.', + 'enumValueTitles' => ['prc' => 'Application package name', 'domain' => 'Domain name'], 'type' => 'string', + 'required' => false, + 'example' => 'domain', + 'title' => '', ], ], + 'description' => 'A proxy rule.', + 'required' => false, + 'title' => '', + 'example' => '', ], + 'description' => 'The proxy rules.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], 'required' => false, + 'title' => '', + 'example' => '', ], ], [ @@ -11673,30 +10017,37 @@ 'type' => 'object', 'properties' => [ 'WatermarkSwitch' => [ + 'description' => 'Specifies whether to enable the screen watermark.', + 'enumValueTitles' => ['off' => 'Disabled.', 'on' => 'Enabled.'], 'type' => 'string', + 'required' => false, + 'example' => 'off', + 'title' => '', ], 'WatermarkTypes' => [ 'type' => 'array', 'items' => [ + 'description' => 'The content of the screen watermark.', + 'enumValueTitles' => ['Username' => 'Username', 'CustomText' => 'Custom text', 'ClientIpAddress' => 'Client IP address', 'IpAddress' => 'IP address', 'ClientTime' => 'Current time'], 'type' => 'string', + 'required' => false, + 'example' => 'Username', + 'title' => '', ], + 'description' => 'The content of the screen watermark.', + 'required' => false, + 'title' => '', + 'example' => '', ], - 'WatermarkCustomText' => [ - 'type' => 'string', - ], - 'WatermarkFontSize' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'WatermarkColor' => [ - 'type' => 'integer', - 'format' => 'int32', - ], - 'WatermarkTransparencyValue' => [ - 'type' => 'integer', - 'format' => 'int32', - ], + 'WatermarkCustomText' => ['description' => 'The custom text for the watermark. The text can be up to 10 characters in length and cannot contain emoji characters.', 'type' => 'string', 'required' => false, 'example' => 'custom text', 'title' => ''], + 'WatermarkFontSize' => ['description' => 'The font size of the watermark. Valid values: 10 to 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12', 'title' => ''], + 'WatermarkColor' => ['description' => 'The font color of the watermark. Valid values: 0 to 16777215.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], + 'WatermarkTransparencyValue' => ['description' => 'The opacity of the watermark. A larger value makes the watermark more opaque. Valid values: 10 to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '25', 'title' => ''], ], + 'description' => 'The screen watermark.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], ], @@ -11704,311 +10055,322 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'Response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '552B7EED-D434-511F-B838-29EA4E906034', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '552B7EED-D434-511F-B838-29EA4E906034'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], + 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"552B7EED-D434-511F-B838-29EA4E906034\\"\\n}","type":"json"}]', 'title' => 'ModifyPolicyGroup', + 'changeSet' => [ + ['createdAt' => '2025-04-25T11:27:20.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-04-16T06:34:33.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-11-15T01:35:07.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-09-26T11:32:59.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-08-20T03:54:01.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-08-19T09:42:45.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'translator' => 'manual', ], - 'DeletePolicyGroup' => [ - 'summary' => 'Deletes a policy.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ModifySystemPropertyTemplate' => [ + 'summary' => 'Modifies a property template.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'PolicyGroupIds', + 'name' => 'TemplateId', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['description' => 'The ID of the property template.', 'type' => 'string', 'required' => false, 'example' => 'ap-angyvganxlf****', 'title' => ''], + ], + [ + 'name' => 'TemplateName', + 'in' => 'query', + 'schema' => ['description' => 'The name of the template.', 'type' => 'string', 'example' => 'Template 1', 'required' => false, 'title' => ''], + ], + [ + 'name' => 'SystemPropertyInfo', + 'in' => 'query', + 'style' => 'json', 'schema' => [ - 'description' => 'The IDs of the policies.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the policy.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'pg-gx4ger9hynfov****', + 'description' => 'The information about the system property template.', + 'type' => 'object', + 'properties' => [ + 'RoBuildFingerprint' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductModel' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductManufacturer' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductBrand' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildUser' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildId' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBootloader' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildTags' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductBoard' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoProductDevice' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildProduct' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildType' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildHost' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RoBuildDisplayId' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'RwRoSerialNo' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], + 'CustomPropertyInfos' => [ + 'description' => 'The information about custom properties.', + 'type' => 'array', + 'items' => [ + 'description' => 'The information about a custom property.', + 'type' => 'object', + 'properties' => [ + 'PropertyName' => ['description' => 'The key of the custom property.', 'type' => 'string', 'required' => false, 'example' => 'propKey', 'title' => ''], + 'PropertyValue' => ['description' => 'The value of the custom property.', 'type' => 'string', 'required' => false, 'example' => 'propValue', 'title' => ''], + ], + 'required' => false, + 'title' => '', + 'example' => '', + ], + 'required' => false, + 'maxItems' => 100, + 'title' => '', + 'example' => '', + ], ], - 'required' => true, - 'maxItems' => 100, + 'required' => false, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'FilePath', + 'in' => 'query', + 'schema' => ['description' => 'The URL of the property template file. The system synchronously parses the file. If the file format is invalid, a parsing error is returned.'."\n" + ."\n" + .'> File template format: `{ "properties":{"key1":"value1", "key2":"value2"}}`.', 'type' => 'string', 'maxLength' => 512, 'required' => false, 'example' => 'https://filepath****.com', 'title' => ''], + ], + [ + 'name' => 'EnableAuto', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to automatically generate preset system properties.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'The response parameters.'."\n", + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '17C731AB-AAEE-5844-A352-D8D0352D3F0B', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], + 'TemplateId' => ['description' => 'The ID of the property template.', 'type' => 'string', 'example' => 'ap-angyvganxlf****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"TemplateId\\": \\"ap-angyvganxlf****\\"\\n}","type":"json"}]', + 'title' => 'ModifySystemPropertyTemplate', + 'description' => 'When you modify a property template, the [](t3010125.xdita#)operation is not triggered. To apply the changes to cloud phones, you must call the [](t3010125.xdita#)operation separately.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"17C731AB-AAEE-5844-A352-D8D0352D3F0B\\"\\n}","type":"json"}]', - 'title' => 'DeletePolicyGroup', + 'translator' => 'manual', ], - 'CreateSystemPropertyTemplate' => [ - 'summary' => '创建系统属性模板', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'OperateApp' => [ + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone3OZQF8', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphoneL912BU'], ], 'parameters' => [ [ - 'name' => 'TemplateName', + 'name' => 'InstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'The IDs of the cloud phone instances.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-dvbhknfasf123****', 'title' => ''], 'required' => false, + 'maxItems' => 1000, + 'title' => '', 'example' => '', ], ], [ - 'name' => 'SystemPropertyInfo', + 'name' => 'AppId', 'in' => 'query', - 'style' => 'json', - 'schema' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'RoBuildFingerprint' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductModel' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductManufacturer' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductBrand' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildUser' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildId' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBootloader' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildTags' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductBoard' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductDevice' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildProduct' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildType' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildHost' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildDisplayId' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RwRoSerialNo' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'CustomPropertyInfos' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'PropertyName' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'propKey', - ], - 'PropertyValue' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'propValue', - ], - ], - 'required' => false, - ], - 'required' => false, - 'maxItems' => 100, - ], - ], - 'required' => false, - ], + 'schema' => ['description' => 'The ID of the app.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1234', 'title' => ''], ], [ - 'name' => 'FilePath', + 'name' => 'OperateType', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The type of the operation.', + 'enumValueTitles' => ['stop' => 'Closes the app.', 'restart' => 'Reopens the app.', 'start' => 'Opens the app.'], 'type' => 'string', 'required' => false, - 'example' => 'https://filepath****.com'."\n", - 'maxLength' => 512, + 'example' => 'start', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'], + 'TaskId' => ['description' => 'The ID of the task.', 'type' => 'string', 'example' => 't-imr0fufqgac2z****', 'title' => ''], + ], + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'OperateApp', + 'summary' => 'Operates apps in a cloud phone, such as opening, closing, and reopening apps.', + 'description' => 'This operation runs asynchronously. To check the operation result, visit the Task Center. To retrieve task details, call the [](t2740507.xdita#)operation.', + 'changeSet' => [ + ['createdAt' => '2025-09-22T13:03:48.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TaskId\\": \\"t-imr0fufqgac2z****\\"\\n}","type":"json"}]', + ], + 'PauseAgentTask' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'EnableAuto', + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], + ], + 'parameters' => [ + [ + 'name' => 'TaskIds', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', + 'style' => 'repeatList', + 'schema' => [ + 'type' => 'array', + 'items' => ['description' => 'The task ID.', 'type' => 'string', 'required' => true, 'example' => 't-bp67acfmxazb4p****', 'title' => ''], + 'required' => true, + 'maxItems' => 100, + 'description' => 'A list of task IDs.', + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'TemplateId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ap-g6gyv4a4xlf****', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => 'E38B41A8-8E00-5AE4-A957-6636ACB8****'], + 'Code' => ['description' => 'The status code.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + 'Tasks' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TaskId' => ['description' => 'The unique ID of the task.', 'type' => 'string', 'example' => 't-imr0fufqd7cle****', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the Mobile node.', 'type' => 'string', 'example' => 'acp-anzzuho371azi44xr', 'title' => ''], + 'PreviousStatus' => ['description' => 'The status of the task before the pause request. The only valid value is:'."\n" + ."\n" + .'RUNNING: The task is running.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'CurrentStatus' => ['description' => 'The current status of the task. The following are possible values:'."\n" + ."\n" + .'PENDING: The task is being created.'."\n" + ."\n" + .'RUNNING: The task is running.'."\n" + ."\n" + .'COMPLETED: The task is completed.'."\n" + ."\n" + .'FAILED: The task failed.'."\n" + ."\n" + .'TIMEOUT: The task timed out.'."\n" + ."\n" + .'PAUSING: The task is being paused.'."\n" + ."\n" + .'PAUSED: The task is paused.', 'type' => 'string', 'example' => 'PAUSING', 'title' => ''], + 'PausingAt' => ['description' => 'The time when the pause request was initiated, in ISO 8601 format.', 'type' => 'string', 'example' => '2026-04-13T17:42:19Z', 'title' => ''], + 'FailedReason' => ['description' => 'The reason the task failed to pause.', 'type' => 'string', 'example' => 'Task status [COMPLETED] does not support pause, only RUNNING tasks can be paused.', 'title' => ''], + ], + 'description' => 'A task object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of tasks.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response object.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'PauseAgentTask', + 'summary' => 'Pauses running agent tasks on Mobile nodes.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TemplateId\\": \\"ap-g6gyv4a4xlf****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E38B41A8-8E00-5AE4-A957-6636ACB8****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\",\\n \\"Tasks\\": [\\n {\\n \\"TaskId\\": \\"t-imr0fufqd7cle****\\",\\n \\"InstanceId\\": \\"acp-anzzuho371azi44xr\\",\\n \\"PreviousStatus\\": \\"RUNNING\\",\\n \\"CurrentStatus\\": \\"PAUSING\\",\\n \\"PausingAt\\": \\"2026-04-13T17:42:19Z\\",\\n \\"FailedReason\\": \\"Task status [COMPLETED] does not support pause, only RUNNING tasks can be paused.\\"\\n }\\n ]\\n}","type":"json"}]', ], - 'SendSystemPropertyTemplate' => [ - 'summary' => '发送属性模板', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'RebootAndroidInstancesInGroup' => [ + 'summary' => 'Reboots (shuts down and then starts) Cloud Phone instances.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], @@ -12020,1342 +10382,1254 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneO96MC6'], ], 'parameters' => [ [ - 'name' => 'TemplateId', + 'name' => 'AndroidInstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'A list of instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-sgicbcdadjs****', 'title' => ''], 'required' => false, - 'example' => 'ap-angyvganxlf****', + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'AndroidInstanceIds', - 'in' => 'formData', - 'style' => 'repeatList', + 'name' => 'ForceStop', + 'in' => 'query', 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-25nt4kk9whhok****', - ], + 'description' => 'Specifies whether to forcefully reboot the instances. If a Cloud Phone instance cannot be shut down because of system or network errors, you can force a reboot. This operation may cause data loss.', + 'enumValueTitles' => ['true' => 'Forcefully reboots the instances.', 'false' => 'Does not forcefully reboot the instances.'], + 'type' => 'boolean', 'required' => false, - 'maxItems' => 200, + 'example' => 'false', + 'title' => '', ], ], [ - 'name' => 'TemplateIds', + 'name' => 'SaleMode', 'in' => 'query', - 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'ap-0caoenwutkkxb0****', - ], + 'description' => 'The sales mode. This parameter is deprecated.', + 'enumValueTitles' => ['Instance' => 'Cloud Phone instance', 'Node' => 'Cloud Phone matrix'], + 'type' => 'string', + 'enum' => ['Instance', 'Node'], 'required' => false, - 'maxItems' => 100, + 'example' => 'Instance', + 'title' => '', ], ], + [ + 'name' => 'IgnoreParamValidation', + 'in' => 'query', + 'schema' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '227CBB4C-F5DC-589D-A667-C5CA3D52****'], + 'Tasks' => [ + 'type' => 'object', + 'properties' => [ + 'ParentTaskId' => ['type' => 'string', 'example' => 't-xxxx', 'description' => '', 'title' => ''], + 'ChildTasks' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['type' => 'string', 'example' => 'acp-xxxx', 'description' => '', 'title' => ''], + 'TaskId' => ['type' => 'string', 'example' => 't-xxxx', 'description' => '', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\"\\n}","type":"json"}]', - ], - 'DescribeSystemPropertyTemplates' => [ - 'summary' => '查询系统属性模板', - 'methods' => [ - 'get', - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'RebootAndroidInstancesInGroup', + 'description' => 'You can reboot an instance only if its status is Active, Abnormal, Backup failed, or **Recover failed**.', + 'changeSet' => [ + ['createdAt' => '2025-04-07T03:35:38.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-07-02T02:05:34.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"227CBB4C-F5DC-589D-A667-C5CA3D52****\\",\\n \\"Tasks\\": {\\n \\"ParentTaskId\\": \\"t-xxxx\\",\\n \\"ChildTasks\\": [\\n {\\n \\"InstanceId\\": \\"acp-xxxx\\",\\n \\"TaskId\\": \\"t-xxxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'RecoverAndroidInstance' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneWDBBSN'], ], 'parameters' => [ [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'maximum' => '100', - 'minimum' => '0', - 'example' => '10', - ], - ], - [ - 'name' => 'NextToken', + 'name' => 'BackupFileId', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6k****', - ], + 'schema' => ['description' => 'The ID of the backup file.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'bf-azhps4rdyi2th****'], ], [ - 'name' => 'TemplateIds', + 'name' => 'AndroidInstanceIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'ap-0caoenwutkkx****', - ], - 'required' => false, + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-ig2bdpk374l12****', 'title' => ''], + 'deprecated' => false, + 'required' => true, 'maxItems' => 100, + 'description' => 'A list of instance IDs.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'TemplateName', + 'name' => 'UploadEndpoint', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '', - ], + 'schema' => ['description' => 'The region where the backup is located.', 'type' => 'string', 'required' => false, 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com', 'title' => ''], + ], + [ + 'name' => 'UploadType', + 'in' => 'query', + 'schema' => ['description' => 'The upload type.', 'type' => 'string', 'required' => true, 'example' => 'OSS', 'title' => ''], + ], + [ + 'name' => 'BackupFilePath', + 'in' => 'query', + 'schema' => ['description' => 'The OSS URL where the backup file is uploaded.', 'type' => 'string', 'required' => true, 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/backupDir/acp-ig2bdpk374l12****_2024052014****.ab', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****', - ], - 'NextToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU****', - ], - 'TotalCount' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'SystemPropertyTemplateModel' => [ - 'description' => '', + 'Data' => [ 'type' => 'array', 'items' => [ - 'description' => '', 'type' => 'object', 'properties' => [ - 'TemplateId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ap-0caoenwutkkx****', - ], - 'TemplateName' => [ - 'description' => '', - 'type' => 'string', - 'example' => '', - ], - 'Status' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'init', - ], - 'SystemPropertyInfo' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'RoProductDevice' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'null', - ], - 'CustomPropertyInfos' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'PropertyName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'propKey', - ], - 'PropertyValue' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'propValue', - ], - ], - ], - ], - ], - ], - 'FilePath' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'https://filepath****.com', - ], - 'EnableAuto' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'true', - ], + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-bp67acfmxazb4p****', 'title' => ''], ], + 'description' => 'The returned result object.', + 'title' => '', + 'example' => '', ], + 'description' => 'The returned result objects.', + 'title' => '', + 'example' => '', ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], + 'Count' => ['description' => 'The number of restored instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + 'TaskId' => ['description' => 'The batch task ID.', 'type' => 'string', 'example' => 't-1ljew7on6ay0j****', 'title' => ''], ], + 'title' => '', + 'description' => 'PlainResult', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'RecoverAndroidInstance', + 'summary' => 'Restores a full instance backup to another cloud phone instance.', + 'description' => '1. When you restore a full instance, the system restarts the instance to ensure a successful restoration. A restart is not required if you restore only applications and data. Make sure the instance is in an active state. Do not perform any operations on the instance during the restoration process. Otherwise, the restoration may fail.'."\n" + ."\n" + .'2. Ensure that the backup file can be used to restore the instance properly. After a restoration is complete, check that all your data is complete and all features are working properly. Do not delete the original backup file or reset the source instance until you have verified the restored data. Otherwise, you may lose your data.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU****\\",\\n \\"TotalCount\\": 10,\\n \\"SystemPropertyTemplateModel\\": [\\n {\\n \\"TemplateId\\": \\"ap-0caoenwutkkx****\\",\\n \\"TemplateName\\": \\"模板1\\",\\n \\"Status\\": \\"init\\",\\n \\"SystemPropertyInfo\\": {\\n \\"RoProductDevice\\": \\"null\\",\\n \\"CustomPropertyInfos\\": [\\n {\\n \\"PropertyName\\": \\"propKey\\",\\n \\"PropertyValue\\": \\"propValue\\"\\n }\\n ]\\n },\\n \\"FilePath\\": \\"https://filepath****.com\\",\\n \\"EnableAuto\\": true\\n }\\n ]\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\"\\n}","type":"json"}]', ], - 'GetInstanceProperties' => [ - 'summary' => '获取属性模板信息', + 'RecoverApp' => [ + 'summary' => 'Recovers an application from a backup file to another cloud phone instance.', 'path' => '', - 'methods' => [ - 'post', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneA5LZN6', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneWDBBSN'], ], 'parameters' => [ [ - 'name' => 'InstanceId', + 'name' => 'BackupFileId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the backup file.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'bf-azhps4rdyi2th****'], + ], + [ + 'name' => 'AndroidInstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-2ofr9kf41apy3****-014', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'deprecated' => false, + 'required' => true, + 'maxItems' => 100, + 'description' => 'The list of instance IDs.', + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'UploadEndpoint', + 'in' => 'query', + 'schema' => ['description' => 'The backup region.', 'type' => 'string', 'required' => false, 'example' => 'oss-cn-shanghai-internal.aliyuncs.com', 'title' => ''], + ], + [ + 'name' => 'UploadType', + 'in' => 'query', + 'schema' => ['description' => 'The backup type.', 'type' => 'string', 'required' => true, 'example' => 'OSS', 'title' => ''], + ], + [ + 'name' => 'BackupFilePath', + 'in' => 'query', + 'schema' => ['description' => 'The OSS URL where the backup file is uploaded.', 'type' => 'string', 'required' => true, 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/backupDir/acp-ig2bdpk374l12****_2024052014****.ab', 'title' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******', - ], - 'PropertyTemplateModel' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Content' => [ - 'description' => '', - 'type' => 'string', - 'example' => '{ "propties":{"key1":"value1"}}', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-22ex666a653gq****', 'title' => ''], ], + 'description' => 'The returned result object.', + 'title' => '', + 'example' => '', ], + 'description' => 'The returned result objects.', + 'title' => '', + 'example' => '', ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****', 'title' => ''], + 'Count' => ['description' => 'The number of recovered instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-1ljew7on6ay0j****', 'title' => ''], ], + 'title' => '', + 'description' => 'PlainResult', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'RecoverApp', + 'description' => '1. A full instance recovery restarts the cloud phone. An application and data recovery does not require a restart. To ensure a successful recovery, make sure your cloud phone is in the active state. Do not perform any operations on the cloud phone during the recovery process. Otherwise, the recovery operation may fail.'."\n" + ."\n" + .'2. If the application being recovered already exists on the target cloud phone, the existing application is uninstalled before the backup version is installed. This prevents version conflicts.'."\n" + ."\n" + .'3. Ensure that your backup file can be used to recover the instance or application properly. After a recovery is complete, verify that your data is complete and all features work correctly. Do not delete the original backup file or reset the source instance until you have verified that the recovery was successful. Otherwise, there is risks that you lose some data.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\",\\n \\"PropertyTemplateModel\\": {\\n \\"Content\\": \\"{ \\\\\\"propties\\\\\\":{\\\\\\"key1\\\\\\":\\\\\\"value1\\\\\\"}}\\"\\n }\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-22ex666a653gq****\\"\\n }\\n ],\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\"\\n}","type":"json"}]', ], - 'ModifySystemPropertyTemplate' => [ - 'summary' => '修改属性模板', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'RecoveryFile' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneMPR6T6'], ], 'parameters' => [ [ - 'name' => 'TemplateId', + 'name' => 'BackupFileId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The ID of the backup file.', 'type' => 'string', 'required' => false, 'example' => 'bf-azhps4rdyi2th****'], + ], + [ + 'name' => 'AndroidInstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'ap-angyvganxlf****', + 'description' => 'The IDs of the instances.', + 'type' => 'array', + 'items' => ['description' => 'The ID of the cloud phone.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'acp-ig2bdpk374l12****'], + 'deprecated' => false, + 'required' => true, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'TemplateName', + 'name' => 'UploadType', 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The type of the backup.', 'type' => 'string', 'required' => false, - 'example' => '', + 'enumValueTitles' => ['OSS' => 'Backup files are stored in OSS buckets.'], + 'title' => '', + 'example' => 'OSS', ], ], [ - 'name' => 'SystemPropertyInfo', + 'name' => 'UploadEndpoint', 'in' => 'query', - 'style' => 'json', + 'schema' => ['description' => 'The endpoint of the OSS bucket that stores the backup file.'."\n" + ."\n" + .'> : When calling the DescribeBuckets operation to query buckets, retrieve the IntranetEndpoint value if the cloud phone and the OSS bucket are in the same region. If they are in different regions, retrieve the ExtranetEndpoint value instead.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com'], + ], + [ + 'name' => 'BackupFilePath', + 'in' => 'query', + 'schema' => ['description' => 'The OSS path to which the backup file is uploaded.'."\n" + ."\n" + .'> When calling the describeBuckets operation to retrieve a bucket name, you must also call the ossObjectList operation to obtain the object key. Combine these to form the full path: oss\\://${bucketName}/${key}.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'oss://cloudphone-saved-bucket-cn-hangzhou-****/backupDir/acp-ig2bdpk374l12****_2024052014****.ab'], + ], + [ + 'name' => 'BackupAll', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to back up the whole instance.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => 'false'], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '', + 'title' => 'PlainResult', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RoBuildFingerprint' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductModel' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductManufacturer' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductBrand' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildUser' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildId' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBootloader' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildTags' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductBoard' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoProductDevice' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildProduct' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildType' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildHost' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RoBuildDisplayId' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'RwRoSerialNo' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'null', - ], - 'CustomPropertyInfos' => [ - 'description' => '', + 'Data' => [ + 'description' => 'The backup file that is restored.', 'type' => 'array', 'items' => [ - 'description' => '', 'type' => 'object', 'properties' => [ - 'PropertyName' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'propKey', - ], - 'PropertyValue' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'propValue', - ], + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'title' => '', 'example' => 'acp-34pqe4r0kd9kn****'], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'title' => '', 'example' => 't-ehs0yoedsskom****'], ], - 'required' => false, + 'description' => '', + 'title' => '', + 'example' => '', ], - 'required' => false, - 'maxItems' => 100, + 'example' => '6AD56E39-430B-5401-AB4A-7B086454****'."\n", + 'title' => '', ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => '6AD56E39-430B-5401-AB4A-7B086454****'], + 'Count' => ['description' => 'The number of restored instances.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1'], + 'TaskId' => ['description' => 'The ID of the batch task.', 'type' => 'string', 'title' => '', 'example' => 't-3eourrxaoliqq****'], ], - 'required' => false, + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'title' => 'RecoveryFile', + 'summary' => 'Restores backup files.', + 'description' => 'Currently, this operation allows you to restore only backup files generated by cloud phones that are stored in Object Storage Service (OSS) buckets.', + 'changeSet' => [ + ['createdAt' => '2025-01-03T11:17:53.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-17T05:04:23.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-10-16T09:05:59.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-08-12T07:39:51.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-ehs0yoedsskom****\\"\\n }\\n ],\\n \\"RequestId\\": \\"6AD56E39-430B-5401-AB4A-7B086454****\\",\\n \\"Count\\": 1,\\n \\"TaskId\\": \\"t-3eourrxaoliqq****\\"\\n}","type":"json"}]', + ], + 'RefreshAuthTokens' => [ + 'summary' => 'Refreshes model authentication tokens.', + 'path' => '', + 'methods' => ['post'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'FilePath', + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], + ], + 'parameters' => [ + [ + 'name' => 'LicenseKeys', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'https://filepath****.com', - 'maxLength' => 512, - ], + 'schema' => ['title' => '', 'description' => 'The list of license keys.', 'type' => 'string', 'example' => 'lk-abcdef1234567890,lk-abcdef1234567891', 'required' => false], ], [ - 'name' => 'EnableAuto', + 'name' => 'InstanceIds', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'boolean', - 'required' => false, - 'example' => 'true', - ], + 'schema' => ['title' => '', 'description' => 'The list of instance IDs.', 'type' => 'string', 'example' => 'acp-2zef0gov2nh2l3xxx,acp-2zef0gov2nh2l3yyy', 'required' => false], + ], + [ + 'name' => 'ExpireSeconds', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The validity period in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '600', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => '', + 'description' => 'PlainResult', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****', - ], - 'TemplateId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ap-angyvganxlf****', + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '9A51B1DF-96FF-3BCC-B08C-783161D3****'], + 'Data' => [ + 'title' => '', + 'description' => 'The token data.', + 'type' => 'object', + 'properties' => [ + 'BaseUrl' => ['title' => '', 'description' => 'The model gateway access URL.', 'type' => 'string', 'example' => 'https://ai-gateway.example.com/v1'], + 'Tokens' => [ + 'title' => '', + 'description' => 'The list of tokens.', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AuthToken' => ['title' => '', 'description' => 'The authorization token value.', 'type' => 'string', 'example' => 'cp******lp'], + 'ExpireSeconds' => ['title' => '', 'description' => 'The validity period in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '600'], + 'ExpireAt' => ['title' => '', 'description' => 'The expiration timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719648600'], + 'IssuedAt' => ['title' => '', 'description' => 'The issuance timestamp.', 'type' => 'integer', 'format' => 'int64', 'example' => '1719648000'], + 'InstanceId' => ['title' => '', 'description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-2zef0gov2nh2l3xxx'], + 'LicenseKey' => ['title' => '', 'description' => 'The license key.', 'type' => 'string', 'example' => 'lk-abcdef1234567890'], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'example' => '', + ], + ], + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Refresh model authentication tokens', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"TemplateId\\": \\"ap-angyvganxlf****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9A51B1DF-96FF-3BCC-B08C-783161D3****\\",\\n \\"Data\\": {\\n \\"BaseUrl\\": \\"https://ai-gateway.example.com/v1\\",\\n \\"Tokens\\": [\\n {\\n \\"AuthToken\\": \\"cp******lp\\",\\n \\"ExpireSeconds\\": 600,\\n \\"ExpireAt\\": 1719648600,\\n \\"IssuedAt\\": 1719648000,\\n \\"InstanceId\\": \\"acp-2zef0gov2nh2l3xxx\\",\\n \\"LicenseKey\\": \\"lk-abcdef1234567890\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], - 'DeleteSystemPropertyTemplates' => [ - 'summary' => '删除系统属性模板', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'RenewAndroidInstanceGroups' => [ + 'summary' => 'Renews subscription Cloud Phone instance groups. If a subscription instance group expires, the system automatically deletes the instance group and its instances after 15 days. You cannot recover deleted resources. Renew your instance groups promptly to prevent resource loss.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneMR1L7E'], ], 'parameters' => [ [ - 'name' => 'TemplateIds', + 'name' => 'InstanceGroupIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The instance group IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'ap-6f1z5z9d85qq7****', - ], + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-aobj3xwnvexhs****', 'title' => ''], 'required' => false, 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'Period', + 'in' => 'query', + 'schema' => ['description' => 'The renewal duration.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '6', 'title' => ''], + ], + [ + 'name' => 'PeriodUnit', + 'in' => 'query', + 'schema' => [ + 'description' => 'The unit of the renewal duration specified by `Period`. Default value: Month.', + 'enumValueTitles' => ['Month' => 'The unit of the renewal duration is month.', 'Year' => 'The unit of the renewal duration is year.'], + 'type' => 'string', + 'required' => false, + 'example' => 'Month', + 'title' => '', + ], + ], + [ + 'name' => 'AutoPay', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to enable automatic payment.', + 'enumValueTitles' => ['true' => 'Automatic payment is enabled. Make sure that your account has a sufficient balance.', 'false' => 'Manual payment is enabled.'], + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'title' => '', ], ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], + ], + [ + 'name' => 'PaidCallBackUrl', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****', - ], - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'Success.', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '4B886792-2051-5DB4-8AE6-C8E45D3B4****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '22326560487****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\"\\n}","type":"json"}]', - ], - 'DescribeTasks' => [ - 'summary' => 'Queries tasks created for a cloud phone instance.', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'RenewAndroidInstanceGroups', + 'changeSet' => [ + ['createdAt' => '2025-09-05T06:13:13.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4B886792-2051-5DB4-8AE6-C8E45D3B4****\\",\\n \\"OrderId\\": \\"22326560487****\\"\\n}","type":"json"}]', + ], + 'RenewCloudPhoneNodes' => [ + 'summary' => 'Renews the specified cloud phone matrices.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneWDBBSN', - 'FEATUREcloudphoneDY533B', - 'FEATUREcloudphoneQ3V7AF', - 'FEATUREcloudphoneE62QJ7', - ], + 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphone3XZF7I'], ], 'parameters' => [ [ - 'name' => 'InvokeId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the command execution. You can set the value to the last returned request ID.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'B8ED2BA9-0C6A-5643-818F-B5D60A64****', - ], - ], - [ - 'name' => 'ResourceIds', - 'in' => 'query', + 'name' => 'NodeIds', + 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the resources.'."\n", + 'description' => 'A list of cloud phone matrix IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the resource. To check the status of a start, stop, restart, or reset task on a cloud phone instance, set the value to the ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-25nt4kk9whhok****', - ], + 'items' => ['description' => 'A cloud phone matrix ID.', 'type' => 'string', 'required' => false, 'example' => 'cpn-csbdhjcbvfd****', 'title' => ''], 'required' => false, 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'TaskIds', - 'in' => 'query', - 'style' => 'repeatList', + 'name' => 'PeriodUnit', + 'in' => 'formData', 'schema' => [ - 'description' => 'The IDs of the tasks.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 't-bp67acfmxazb4p****', - ], + 'description' => 'The unit of the renewal duration.', + 'enumValueTitles' => ['Month' => 'Month. This is the default.', 'Year' => 'Year'], + 'type' => 'string', 'required' => false, - 'maxItems' => 100, + 'example' => 'Month', + 'title' => '', ], ], [ - 'name' => 'ParentTaskId', - 'in' => 'query', - 'schema' => [ - 'description' => 'The ID of the parent task.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 't-iaej5dkbnmivx****', - ], + 'name' => 'Period', + 'in' => 'formData', + 'schema' => ['description' => 'The renewal duration. The `PeriodUnit` parameter specifies the unit.'."\n" + ."\n" + .'- If `PeriodUnit` is **Year**, the value must be 1.'."\n" + ."\n" + .'- If `PeriodUnit` is **Month**, the valid values are 1, 2, 3, and 6.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ - 'name' => 'TaskType', - 'in' => 'query', + 'name' => 'AutoRenew', + 'in' => 'formData', 'schema' => [ - 'description' => 'The type of the task.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* BackupFile: backs up files.'."\n" - .'* StopInstance: stops cloud phone instances.'."\n" - .'* RebootInstance: restarts cloud phone instances.'."\n" - .'* StartApp: starts apps.'."\n" - .'* SendFile: uploads files.'."\n" - .'* RunCommand: sends remote command.'."\n" - .'* RestartApp: restarts apps.'."\n" - .'* ResetInstance: resets cloud phone instances.'."\n" - .'* RecoverFile: recovers files.'."\n" - .'* UninstallApp: uninstalls apps.'."\n" - .'* StopApp: stops apps.'."\n" - .'* Screenshot: takes screenshots.'."\n" - .'* InstallApp: installs apps.'."\n" - .'* FetchFile: downloads files.'."\n" - .'* UpdateGroupImage: replaces images.'."\n" - .'* StartInstance: starts instances.'."\n", - 'type' => 'string', + 'description' => 'Specifies whether to enable auto-renewal.', + 'enumValueTitles' => ['true' => 'Enables auto-renewal. The system automatically renews the instance upon expiration.', 'false' => 'Disables auto-renewal. You must manually renew the instance upon expiration. This is the default.'], + 'type' => 'boolean', 'required' => false, - 'enumValueTitles' => [ - 'BackupFile' => '', - 'StopInstance' => '', - 'RebootInstance' => '', - 'StartApp' => '', - 'SendFile' => '', - 'RunCommand' => '', - 'RestartApp' => '', - 'ResetInstance' => '', - 'RecoverFile' => '', - 'UninstallApp' => '', - 'StopApp' => '', - 'Screenshot' => '', - 'InstallApp' => '', - 'FetchFile' => '', - 'UpdateGroupImage' => '', - 'StartInstance' => '', - ], - 'example' => 'StartInstance', + 'example' => 'true', + 'title' => '', ], ], [ - 'name' => 'TaskTypes', + 'name' => 'AutoPay', 'in' => 'query', - 'style' => 'repeatList', 'schema' => [ - 'description' => 'The types of the tasks.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The type of the task.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'StartInstance', - ], + 'description' => 'Specifies whether to enable automatic payment. The default value is false.', + 'enumValueTitles' => ['true' => 'Enables automatic payment. The system automatically completes the payment for the order.', 'false' => 'Disables automatic payment. You must manually complete the payment in the Alibaba Cloud Expenses and Costs Center. This is the default.'], + 'type' => 'boolean', 'required' => false, - 'maxItems' => 100, + 'example' => 'false', + 'title' => '', ], ], [ - 'name' => 'TaskStatus', + 'name' => 'PromotionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The state of the task.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* PartFinished: The task is partially successful.'."\n" - .'* Finished: The task is completed.'."\n" - .'* Failed: The task failed.'."\n" - .'* Skipped: The task is skipped.'."\n" - .'* Processing: The task is running.'."\n" - .'* Waiting: The task is in queue.'."\n", - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'PartFinished' => '', - 'Finished' => '', - 'Failed' => '', - 'Skipped' => '', - 'Processing' => '', - 'Waiting' => '', - ], - 'example' => 'Processing', - ], + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ - 'name' => 'TaskStatuses', + 'name' => 'PaidCallBackUrl', 'in' => 'query', - 'style' => 'repeatList', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => 'The status of the tasks.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The state of the task.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'Finished', + 'title' => 'Schema of Response', + 'description' => 'The response data.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '22365781890****', 'title' => ''], ], - 'required' => false, - 'maxItems' => 100, + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'RenewCloudPhoneNodes', + 'changeSet' => [ + ['createdAt' => '2025-09-05T06:13:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-04-25T11:15:35.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC****\\",\\n \\"OrderId\\": \\"22365781890****\\"\\n}","type":"json"}]', + ], + 'RenewMobileAgentPackage' => [ + 'summary' => 'Renews a mobile agent package.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], + ], + 'parameters' => [ [ - 'name' => 'Level', + 'name' => 'Period', 'in' => 'query', - 'schema' => [ - 'description' => 'The level of the task. A value of 1 specifies a batch task. A value of 2 specifies an instance-level task.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1', - ], + 'schema' => ['description' => 'The renewal period. The `PeriodUnit` parameter specifies the time unit.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '6', 'title' => ''], ], [ - 'name' => 'InstanceId', + 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", + 'description' => 'The unit of the renewal period.'."\n" + .'Valid values:'."\n" + ."\n" + .'- **Month**: month.'."\n" + ."\n" + .'- **Year**: year.', + 'enumValueTitles' => ['Month' => 'Month', 'Year' => 'Year'], 'type' => 'string', 'required' => false, - 'example' => 'acp-2zecay9ponatdc4m****', + 'example' => 'Month', + 'title' => '', ], ], [ - 'name' => 'InstanceName', + 'name' => 'AutoPay', 'in' => 'query', - 'schema' => [ - 'description' => 'The name of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'defaultInstanceName', - ], + 'schema' => ['description' => 'Specifies whether to enable automatic payment. Valid values:'."\n" + ."\n" + .'- **true**: Enables automatic payment. Make sure that your account balance is sufficient.'."\n" + ."\n" + .'- **false** (default): Generates an unpaid order.'."\n" + ."\n" + .'> If your account balance is insufficient, set this parameter to `false` to generate an unpaid order. You can then pay for the order in the Wuying Mobile Cloud Phone management console.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ - 'name' => 'Param', + 'name' => 'PromotionId', 'in' => 'query', - 'schema' => [ - 'description' => 'The extension field.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'param', - ], + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'example' => '50003308011****', 'title' => ''], ], [ - 'name' => 'MaxResults', + 'name' => 'MobileAgentPackageIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => 'The maximum number of entries per page. Valid values: 1 to 100. Default value: 10.'."\n", - 'type' => 'integer', - 'format' => 'int32', + 'type' => 'array', + 'items' => ['description' => 'The mobile agent package ID.', 'type' => 'string', 'required' => false, 'example' => 'cmag-shdbcudbaib****', 'title' => ''], + 'maxItems' => 100, + 'description' => 'A list of mobile agent package IDs.', 'required' => false, - 'maximum' => '100', - 'minimum' => '0', - 'enumValueTitles' => [], - 'example' => '10', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NextToken', + 'name' => 'PaidCallbackUrl', 'in' => 'query', - 'schema' => [ - 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. If the parameter is left empty, the data is queried from the first entry.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'FFbc8N4E1iOlcSxC+8boa0HHH2LKWbggYUinyrZWvtS1oTrMYCg1HuMLGuftj0****', - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => '', - 'description' => 'The response parameters.'."\n", - 'type' => 'object', - 'properties' => [ - 'NextToken' => [ - 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], - 'Data' => [ - 'description' => 'The objects that are returned.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The object that is returned.'."\n", - 'type' => 'object', - 'properties' => [ - 'TaskId' => [ - 'description' => 'The ID of the task.'."\n", - 'type' => 'string', - 'example' => 't-bp67acfmxazb4p****', - ], - 'InvokeId' => [ - 'description' => 'The ID of the command execution.'."\n", - 'type' => 'string', - 'example' => 'B8ED2BA9-0C6A-5643-818F-B5D60A64****', - ], - 'RegionId' => [ - 'description' => 'The ID of the region.'."\n", - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'ResourceId' => [ - 'description' => 'The ID of the resource.'."\n", - 'type' => 'string', - 'example' => 'acp-25nt4kk9whhok****', - ], - 'TaskType' => [ - 'description' => 'The type of the task.'."\n", - 'type' => 'string', - 'enumValueTitles' => [], - 'example' => 'StartInstance', - ], - 'TaskStatus' => [ - 'description' => 'The state of the task.'."\n", - 'type' => 'string', - 'example' => 'Processing', - ], - 'StartTime' => [ - 'title' => '创建时间', - 'description' => 'The start time of the task.'."\n", - 'type' => 'string', - 'example' => '2022-10-11T08:53:32Z', - ], - 'FinishTime' => [ - 'title' => '修改时间', - 'description' => 'The end time of the task.'."\n", - 'type' => 'string', - 'example' => '2022-10-11T08:53:32Z', - ], - 'Param' => [ - 'description' => 'The parameters of the task.'."\n", - 'type' => 'string', - 'example' => 'param', - ], - 'Result' => [ - 'description' => 'The execution result of the task.'."\n", - 'type' => 'string', - 'example' => '{\'Success\': True}', - ], - 'ErrorCode' => [ - 'description' => 'The error code.'."\n", - 'type' => 'string', - 'example' => 'SendFileFailed', - ], - 'ErrorMsg' => [ - 'description' => 'The error message.'."\n", - 'type' => 'string', - 'example' => 'connect error.', - ], - 'Level' => [ - 'description' => 'The level of the task.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'FailedChildCount' => [ - 'description' => 'The total number of failed subtasks.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '2', - ], - 'SuccessChildCount' => [ - 'description' => 'The total number of successfully executed subtasks.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '98', - ], - 'RunningChildCount' => [ - 'description' => 'The total number of the subtasks that are running.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'TotalChildCount' => [ - 'description' => 'The total number of subtasks of the current batch task.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'InstanceId' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'acp-uto81vfd8t8z****', - ], - 'InstanceName' => [ - 'description' => 'The name of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'defaultInstanceName', - ], - 'InstanceStatus' => [ - 'description' => 'The state of the cloud phone instance.'."\n", - 'type' => 'string', - 'example' => 'RUNNING', - ], - 'Operator' => [ - 'description' => 'The operator.'."\n", - 'type' => 'string', - 'example' => 'test', - ], - 'ParentTaskId' => [ - 'description' => 'The ID of the parent task.'."\n", - 'type' => 'string', - 'example' => 't-41oan3tza16vs****', - ], - ], - ], - ], - 'TotalCount' => [ - 'description' => 'The total number of entries returned.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '10', - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => 'B8ED2BA9-0C6A-5643-818F-B5D60A64****', - ], + 'schema' => ['description' => 'The URL to which a user is redirected after a successful payment.', 'type' => 'string', 'required' => false, 'example' => 'https://aim.wuying.aliyun.com/nodes', 'title' => ''], + ], + [ + 'name' => 'AutoRenew', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to enable auto-renewal. The default value is `false`.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '7B9EFA4F-4305-5968-BAEE-BD8B8DE5****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '223684716098****', 'title' => ''], ], + 'title' => '', + 'description' => 'The response object.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'RenewMobileAgentPackage', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"Data\\": [\\n {\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\",\\n \\"InvokeId\\": \\"B8ED2BA9-0C6A-5643-818F-B5D60A64****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ResourceId\\": \\"acp-25nt4kk9whhok****\\",\\n \\"TaskType\\": \\"StartInstance\\",\\n \\"TaskStatus\\": \\"Processing\\",\\n \\"StartTime\\": \\"2022-10-11T08:53:32Z\\",\\n \\"FinishTime\\": \\"2022-10-11T08:53:32Z\\",\\n \\"Param\\": \\"param\\",\\n \\"Result\\": \\"{\'Success\': True}\\",\\n \\"ErrorCode\\": \\"SendFileFailed\\",\\n \\"ErrorMsg\\": \\"connect error.\\",\\n \\"Level\\": 1,\\n \\"FailedChildCount\\": 2,\\n \\"SuccessChildCount\\": 98,\\n \\"RunningChildCount\\": 0,\\n \\"TotalChildCount\\": 100,\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"InstanceName\\": \\"defaultInstanceName\\",\\n \\"InstanceStatus\\": \\"RUNNING\\",\\n \\"Operator\\": \\"test\\",\\n \\"ParentTaskId\\": \\"t-41oan3tza16vs****\\"\\n }\\n ],\\n \\"TotalCount\\": 10,\\n \\"RequestId\\": \\"B8ED2BA9-0C6A-5643-818F-B5D60A64****\\"\\n}","type":"json"}]', - 'title' => 'DescribeTasks', - 'description' => '* You can call the DescribeTasks operation to query the tasks created for one or more cloud phone instances.'."\n" - .'* The system currently supports various tasks, including starting, stopping, restarting, and resetting cloud phone instances; backing up and restoring data; installing apps; and executing remote commands.'."\n" - .'* You can use the Level field to specify the type of task. If Level is set to 1, it represents a batch task. If Level is set to 2, it represents an instance-level task.'."\n" - ."\n" - .'**Example**'."\n" - ."\n" - .'Assume you restart two cloud phone instances with the instance IDs acp-25nt4kk9whhok\\*\\*\\*\\* and acp-j2taq887orj8l\\*\\*\\*\\*, and the returned request ID is B8ED2BA9-0C6A-5643-818F-B5D60A64\\*\\*\\*\\*. If you want to check the operation outcomes of the two cloud phone instances, you can call the DescribeTasks operation. You need to set the InvokeId request parameter to B8ED2BA9-0C6A-5643-818F-B5D60A64\\*\\*\\*\\*. If you only want to check the cloud phone instance with the ID acp-25nt4kk9whhok\\*\\*\\*\\*, you must set the ParentTaskId request parameter to the ID of the batch task and the AndroidInstanceId request parameter to acp-25nt4kk9whhok\\*\\*\\*\\* when calling the DescribeTasks operation.'."\n", + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B9EFA4F-4305-5968-BAEE-BD8B8DE5****\\",\\n \\"OrderId\\": \\"223684716098****\\"\\n}","type":"json"}]', ], - 'InstallMonitorAgent' => [ - 'summary' => '安装监控插件', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'ResetAndroidInstancesInGroup' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneEDCJTJ'], ], 'parameters' => [ [ 'name' => 'AndroidInstanceIds', - 'in' => 'formData', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'A list of instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-a1qp88ohp3a8g****-040', - ], + 'items' => ['description' => 'An instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-scaucydkl****', 'title' => ''], 'required' => false, - 'maxItems' => 1000, + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ 'name' => 'SaleMode', - 'in' => 'formData', + 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The sale mode. This parameter is deprecated.', + 'enumValueTitles' => ['Instance' => 'The instance pattern for Android instances.', 'Node' => 'The matrix pattern for Android instances.'], 'type' => 'string', + 'enum' => ['Instance', 'Node'], 'required' => false, - 'enumValueTitles' => [ - 'Instance' => '', - 'Node' => '', - ], - 'example' => 'NODE', + 'example' => 'Instance', + 'title' => '', + ], + ], + [ + 'name' => 'SettingResetType', + 'in' => 'query', + 'schema' => [ + 'description' => 'Specifies whether to retain the property settings when you reset the instances. By default, the property settings are not retained. This parameter applies only to cloud phone matrix instances. Run the wya dump config command to view the details of the retained properties.This parameter is not supported on the international site (alibabacloud.com).', + 'enumValueTitles' => ['The property settings are not retained.', 'The property settings are retained.'], + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'title' => '', ], ], + [ + 'name' => 'IgnoreParamValidation', + 'in' => 'query', + 'schema' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****'], + 'Tasks' => [ + 'type' => 'object', + 'properties' => [ + 'ParentTaskId' => ['type' => 'string', 'example' => 't-xxxx', 'description' => '', 'title' => ''], + 'ChildTasks' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['type' => 'string', 'example' => 'acp-xxxx', 'description' => '', 'title' => ''], + 'TaskId' => ['type' => 'string', 'example' => 't-xxxx', 'description' => '', 'title' => ''], + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + 'description' => '', + 'title' => '', + 'example' => '', + ], + ], 'description' => '', - 'type' => 'string', - 'example' => 'DB070C80-45AC-52CA-8101-937C25DA****', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DB070C80-45AC-52CA-8101-937C25DA****\\"\\n}","type":"json"}]', - ], - 'UninstallMonitorAgent' => [ - 'summary' => '卸载监控插件', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ResetAndroidInstancesInGroup', + 'summary' => 'Resets the instance by reinstalling the operating system using its original image. Note: The reset operation will fail if the image that was used to create the Cloud Phone has since been deleted.', + 'description' => 'You can reset an instance (initialize its system) only when the instance is Active, Stopped, Abnormal, Backup Failed, or **Recover Failed**.', + 'changeSet' => [ + ['createdAt' => '2025-05-31T07:55:40.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-04-07T03:35:38.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\",\\n \\"Tasks\\": {\\n \\"ParentTaskId\\": \\"t-xxxx\\",\\n \\"ChildTasks\\": [\\n {\\n \\"InstanceId\\": \\"acp-xxxx\\",\\n \\"TaskId\\": \\"t-xxxx\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + ], + 'ResumeAgentTask' => [ + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneGXZ7W8'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIds', - 'in' => 'formData', + 'name' => 'TaskIds', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-9y1nwysxr9d6l****-016', - ], - 'required' => false, - 'maxItems' => 1000, + 'items' => ['description' => 'The task ID.', 'type' => 'string', 'required' => true, 'example' => 't-bp67acfmxazb4p****', 'title' => ''], + 'required' => true, + 'maxItems' => 100, + 'description' => 'A list of task IDs.', + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'SaleMode', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'Instance' => '', - 'Node' => '', - ], - 'example' => 'Node', - ], + 'name' => 'AdditionalPrompt', + 'in' => 'query', + 'schema' => ['description' => 'An additional prompt to guide the task. This parameter applies only when a task is in the `PAUSED` state, for example, while waiting for user input.', 'type' => 'string', 'required' => false, 'example' => '验证码为***。', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****', + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****'], + 'Code' => ['description' => 'The API status code.', 'type' => 'string', 'example' => '200', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + 'Tasks' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TaskId' => ['description' => 'The globally unique ID of the task.', 'type' => 'string', 'example' => 't-imr0fufqd7cle****', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the mobile instance.', 'type' => 'string', 'example' => 'acp-ek65k51zoxia3x8xz', 'title' => ''], + 'CurrentStatus' => ['description' => 'The current status of the task. Valid values:'."\n" + ."\n" + .'`PENDING`: The task is being created.'."\n" + ."\n" + .'`RUNNING`: The task is running.'."\n" + ."\n" + .'`COMPLETED`: The task has completed.'."\n" + ."\n" + .'`FAILED`: The task has failed.'."\n" + ."\n" + .'`TIMEOUT`: The task has timed out.'."\n" + ."\n" + .'`PAUSING`: The task is pausing.'."\n" + ."\n" + .'`PAUSED`: The task is paused.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], + 'ResumingAt' => ['description' => 'The time when the task was resumed, in ISO 8601 format.', 'type' => 'string', 'example' => '2026-04-13T17:42:19Z', 'title' => ''], + 'FailedReason' => ['description' => 'The reason why the task failed to resume.', 'type' => 'string', 'example' => 'Task status [COMPLETED] does not support resume, only PAUSED tasks can be resumed.', 'title' => ''], + ], + 'description' => 'A task object.', + 'title' => '', + 'example' => '', + ], + 'description' => 'A list of tasks.', + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'description' => 'The response object.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'ResumeAgentTask', + 'summary' => 'Resumes paused agent automation tasks on a mobile instance.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\",\\n \\"Tasks\\": [\\n {\\n \\"TaskId\\": \\"t-imr0fufqd7cle****\\",\\n \\"InstanceId\\": \\"acp-ek65k51zoxia3x8xz\\",\\n \\"CurrentStatus\\": \\"RUNNING\\",\\n \\"ResumingAt\\": \\"2026-04-13T17:42:19Z\\",\\n \\"FailedReason\\": \\"Task status [COMPLETED] does not support resume, only PAUSED tasks can be resumed.\\"\\n }\\n ]\\n}","type":"json"}]', ], - 'DescribeMetricLast' => [ - 'summary' => '查询指定监控项的最新监控数据', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'RunAgentTask' => [ + 'summary' => 'Triggers an Agent to execute an AI automation task on Mobile nodes.', + 'path' => '', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneWY4NGN'], ], 'parameters' => [ [ - 'name' => 'MetricNames', - 'in' => 'formData', + 'name' => 'InstanceIds', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The list of Mobile node IDs. A maximum of 100 nodes are supported per request.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'disk_read_bps' => '', - 'disk_read_iops' => '', - 'cpu_utilization' => '', - 'disk_write_iops' => '', - 'disk_write_bps' => '', - 'diskusage_utilization' => '', - 'memory_used_utilization' => '', - 'intranet_out_rate' => '', - 'process_memory' => '', - 'intranet_in_rate' => '', - 'process_cpu' => '', - ], - 'example' => 'cpu_utilization', - ], - 'required' => true, + 'items' => ['description' => 'The Mobile node ID, such as acp-xxx.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh4a31emkt6u****', 'title' => ''], + 'required' => false, 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'AndroidInstanceIds', - 'in' => 'formData', + 'name' => 'UserPrompt', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The user instruction in natural language. The Agent performs operations based on this instruction.', 'type' => 'string', 'required' => false, 'example' => '去应用宝下载钉钉'], + ], + [ + 'name' => 'MaxSteps', + 'in' => 'query', + 'schema' => ['description' => 'The maximum number of execution steps for the task. This prevents infinite loops. Valid values: 30 to 1000. Default value: 1000.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''], + ], + [ + 'name' => 'TimeoutSeconds', + 'in' => 'query', + 'schema' => ['description' => 'The timeout period of the task, in seconds. Valid values: 300 to 3600. Default value: 3600.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3600', 'title' => ''], + ], + [ + 'name' => 'BizRegionId', + 'in' => 'query', + 'schema' => ['description' => 'The region ID of the Mobile node.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], + ], + [ + 'name' => 'TaskConfigId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The task configuration ID used to trigger a task with the specified configuration.', 'type' => 'string', 'required' => false, 'example' => 'tsk-260625-49be****'], + ], + [ + 'name' => 'ScheduleId', + 'in' => 'query', + 'schema' => ['title' => '', 'description' => 'The scheduling plan ID. When specified, execution records are associated with the corresponding scheduled node, which facilitates aggregation query by scheduling dimension.', 'type' => 'string', 'required' => false, 'example' => 'sch-260625-pbj2****'], + ], + [ + 'name' => 'Targets', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The array of target objects. Each element contains an InstanceId and a SessionId.', 'type' => 'array', 'items' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'The target object.', + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['description' => 'The Mobile node ID, such as acp-xxx.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh4a31emkt6u****'."\n", 'title' => ''], + 'SessionId' => ['description' => 'The session ID. Tasks with the same session ID share context, such as ses-260702-21b****.', 'type' => 'string', 'required' => false, 'example' => 'ses-260702-21bh****。', 'title' => ''], + ], 'required' => false, - 'example' => 'acp-6nongia0tuev7****', + 'title' => '', + 'example' => '', ], 'required' => false, 'maxItems' => 50, + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'Period', - 'in' => 'formData', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'enumValueTitles' => [ - 15 => '15', - 60 => '60', - 900 => '900', - 3600 => '3600', + 'title' => '', + 'description' => 'Schema of Response', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****'], + 'Code' => ['description' => 'The status code of the operation.', 'type' => 'string', 'example' => '例如 "200" 表示成功。', 'title' => ''], + 'Message' => ['description' => 'The response message.', 'type' => 'string', 'example' => 'Success.', 'title' => ''], + 'Count' => ['description' => 'The number of tasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], + 'Tasks' => [ + 'description' => 'The list of tasks.', + 'type' => 'array', + 'items' => [ + 'description' => 'The task.', + 'type' => 'object', + 'properties' => [ + 'TaskId' => ['description' => 'The task ID, which is globally unique.', 'type' => 'string', 'example' => 't-imr0fufqd7cle****', 'title' => ''], + 'InstanceId' => ['description' => 'The Mobile node ID.', 'type' => 'string', 'example' => 'acp-ek65k51zoxia3x8xz', 'title' => ''], + 'UserPrompt' => ['description' => 'The user instruction in natural language. The Agent performs operations based on this instruction.', 'type' => 'string', 'example' => '去应用宝下载钉钉', 'title' => ''], + 'CurrentStatus' => ['description' => 'The current status of the task. Valid values:'."\n" + ."\n" + .'PENDING: The task is being created.'."\n" + ."\n" + .'RUNNING: The task is running.'."\n" + ."\n" + .'COMPLETED: The task is completed.'."\n" + ."\n" + .'FAILED: The task failed.'."\n" + ."\n" + .'TIMEOUT: The task timed out.'."\n" + ."\n" + .'CALL_FOR_USER: The task is waiting for user action.'."\n" + ."\n" + .'PAUSING: The task is being paused.'."\n" + ."\n" + .'PAUSED: The task is paused.'."\n" + ."\n" + .'CANCELLING: The task is being canceled.'."\n" + ."\n" + .'CANCELED: The task is canceled.'."\n" + ."\n" + .'STOPPED: The task is stopped.'."\n" + ."\n" + .'TIMEOUT: The task timed out.', 'type' => 'string', 'example' => 'COMPLETED', 'title' => ''], + 'RunningAt' => ['description' => 'The time when the task was created, in ISO 8601 format.', 'type' => 'string', 'example' => '2026-04-13T17:42:19Z', 'title' => ''], + 'SessionId' => ['description' => 'The session ID. Tasks with the same session ID share context.', 'type' => 'string', 'example' => 'ses-260702-21bh****。', 'title' => ''], + ], + 'title' => '', + 'example' => '', + ], + 'title' => '', + 'example' => '', + ], ], - 'example' => '60', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Execute an agent task', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\",\\n \\"Code\\": \\"例如 \\\\\\"200\\\\\\" 表示成功。\\",\\n \\"Message\\": \\"Success.\\",\\n \\"Count\\": 1,\\n \\"Tasks\\": [\\n {\\n \\"TaskId\\": \\"t-imr0fufqd7cle****\\",\\n \\"InstanceId\\": \\"acp-ek65k51zoxia3x8xz\\",\\n \\"UserPrompt\\": \\"去应用宝下载钉钉\\",\\n \\"CurrentStatus\\": \\"COMPLETED\\",\\n \\"RunningAt\\": \\"2026-04-13T17:42:19Z\\",\\n \\"SessionId\\": \\"ses-260702-21bh****。\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'RunCommand' => [ + 'summary' => 'Runs a command on one or more cloud phone instances.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'StartTime', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '2019-01-31 10:00:00', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneYYGTDB'], + ], + 'parameters' => [ [ - 'name' => 'EndTime', - 'in' => 'formData', + 'name' => 'InstanceIds', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'A list of instance IDs. You can specify up to 50 instances per request.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-7b15ex96****', 'title' => ''], 'required' => false, - 'example' => '2019-01-31 11:00:00', + 'maxItems' => 1000, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'NextToken', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', - ], + 'name' => 'CommandContent', + 'in' => 'query', + 'schema' => ['description' => 'The content of the command.', 'type' => 'string', 'required' => false, 'example' => 'ls', 'title' => ''], ], [ - 'name' => 'Length', - 'in' => 'formData', + 'name' => 'Timeout', + 'in' => 'query', + 'schema' => ['description' => 'The execution timeout in seconds. The command times out if it does not complete within this period. Defaults to 60 seconds.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '60', 'title' => ''], + ], + [ + 'name' => 'AgentType', + 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The channel type for running the command.', + 'enumValueTitles' => ['EdsAgent' => 'The EdsAgent channel.', 'CloudAssistant' => 'Cloud Assistant.'], 'type' => 'string', 'required' => false, - 'example' => '1000', + 'example' => 'EdsAgent', + 'title' => '', ], ], [ - 'name' => 'InstanceIds', + 'name' => 'ContentEncoding', 'in' => 'query', - 'style' => 'repeatList', 'schema' => [ - 'title' => '指定监控资源的维度'."\n", - 'type' => 'array', - 'items' => [ - 'title' => '实例id', - 'type' => 'string', - ], - 'maxItems' => 50, + 'description' => 'The encoding method for the command content (`CommandContent`). This value is not case-sensitive.'."\n" + ."\n" + .'> An invalid value defaults to `PlainText`.', + 'enumValueTitles' => ['Base64' => 'The content is Base64-encoded.', 'PlainText' => 'The content is unencoded plaintext. This is the default.'], + 'type' => 'string', + 'required' => false, + 'example' => 'PlainText', + 'title' => '', ], ], ], @@ -13363,451 +11637,302 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '2B9E6946-0E2A-5D2B-B275-361DF81F****', - ], - 'Count' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'NextToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], - 'MetricTotalModel' => [ - 'description' => '', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '440D7342-5E7C-B2DB-D0B4EAC2BDF1****'], + 'InvokeId' => ['description' => 'The command execution ID. Use this ID to query the execution result.', 'type' => 'string', 'example' => 't-gov2ujrk32v4****', 'title' => ''], + 'TaskId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'RunCommandInfos' => [ 'type' => 'array', 'items' => [ - 'description' => '', 'type' => 'object', 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-fkuit0cmyru4p****', - ], - 'MetricModelList' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'MetricName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cpu_utilization', - ], - 'DataPoints' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Timestamp' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1548777660000', - ], - 'Minimum' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '93.1', - ], - 'Average' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '99.52', - ], - 'Maximum' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '100', - ], - 'GpuId' => [ - 'type' => 'string', - ], - ], - ], - ], - 'ProcessLastInfos' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Timestamp' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1548777660000', - ], - 'Name' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'com.offerup', - ], - 'ProcessIds' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100056', - ], - ], - 'MemoryUsage' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '50', - ], - 'CpuUsage' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '50', - ], - ], - ], - ], - ], - ], - ], + 'InvokeId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'InstanceId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + 'ChildTaskId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'description' => '', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2B9E6946-0E2A-5D2B-B275-361DF81F****\\",\\n \\"Count\\": 100,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MetricTotalModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-fkuit0cmyru4p****\\",\\n \\"MetricModelList\\": [\\n {\\n \\"MetricName\\": \\"cpu_utilization\\",\\n \\"DataPoints\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Minimum\\": 93.1,\\n \\"Average\\": 99.52,\\n \\"Maximum\\": 100,\\n \\"GpuId\\": \\"cpn-1t1bxvp9az2pk****-gpu-0\\"\\n }\\n ],\\n \\"ProcessLastInfos\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Name\\": \\"com.offerup\\",\\n \\"ProcessIds\\": [\\n 100056\\n ],\\n \\"MemoryUsage\\": 50,\\n \\"CpuUsage\\": 50\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', - ], - 'DescribeMetricList' => [ - 'summary' => '查询指定监控项的监控数据', - 'methods' => [ - 'post', - 'get', + 'title' => 'RunCommand', + 'changeSet' => [ + ['createdAt' => '2025-09-22T13:03:49.000Z', 'description' => 'Request parameters changed, Response parameters changed'], + ['createdAt' => '2025-08-27T11:57:03.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-11-04T01:39:16.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-09-14T02:07:10.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"440D7342-5E7C-B2DB-D0B4EAC2BDF1****\\",\\n \\"InvokeId\\": \\"t-gov2ujrk32v4****\\",\\n \\"TaskId\\": \\"\\",\\n \\"RunCommandInfos\\": [\\n {\\n \\"InvokeId\\": \\"\\",\\n \\"InstanceId\\": \\"\\",\\n \\"ChildTaskId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'RunSyncCommand' => [ + 'summary' => 'Runs a synchronous command on one or more Cloud Phone instances and returns the execution result.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneYYGTDB'], ], 'parameters' => [ [ - 'name' => 'MetricNames', - 'in' => 'formData', + 'name' => 'InstanceIds', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'An array of Cloud Phone instance IDs. You can specify up to 50 instances in a single request.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'cpu_utilization' => '', - 'bandwidth_package_usage_out' => '', - 'diskusage_utilization' => '', - 'memory_used_utilization' => '', - 'intranet_out_rate' => '', - 'gpu_memory_used_utilization' => '', - 'bandwidth_package_usage_in' => '', - 'process_memory' => '', - 'intranet_in_rate' => '', - 'process_cpu' => '', - 'gpu_used_utilization' => '', - ], - 'example' => 'bandwidth_package_usage_in', - ], - 'required' => true, - 'maxItems' => 100, + 'items' => ['description' => 'The Cloud Phone instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh431emkt6u*****', 'title' => ''], + 'required' => false, + 'maxItems' => 500, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'AndroidInstanceIds', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-25nt4kk9whhok****', - ], - 'required' => false, - 'maxItems' => 50, - ], + 'name' => 'CommandContent', + 'in' => 'query', + 'schema' => ['description' => 'The content of the command to execute.', 'type' => 'string', 'required' => false, 'example' => 'ls', 'title' => ''], ], [ - 'name' => 'InstanceIds', - 'in' => 'formData', - 'style' => 'repeatList', + 'name' => 'WaitTime', + 'in' => 'query', + 'schema' => ['description' => 'The timeout for command execution, in milliseconds. Valid range: 500 to 3000. Default: 1000.', 'type' => 'integer', 'format' => 'int64', 'maximum' => '3000', 'minimum' => '500', 'default' => '1000', 'required' => false, 'example' => '1000', 'title' => ''], + ], + [ + 'name' => 'ContentEncoding', + 'in' => 'query', 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'np-5hh4a31emkt6u****', - ], + 'description' => 'The encoding of the command content. If you provide a value that is not a valid option, the system uses the default value, `PlainText`.', + 'enumValueTitles' => ['Base64' => 'The content is Base64-encoded.', 'PlainText' => 'The content is not encoded and is transmitted as plaintext. \\[Default]'], + 'type' => 'string', 'required' => false, - 'maxItems' => 50, + 'example' => 'PlainText', + 'title' => '', ], ], - [ - 'name' => 'ProcessInfos', - 'in' => 'formData', - 'style' => 'repeatList', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'ProcessName' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'php-fpm', - ], - 'ProcessIds' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => 'approval-process-c47080c1f238e889', + 'title' => 'Schema of Response', + 'description' => 'The response object.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '5C5CEF0A-D6E1-58D3-8750-67DB4F82****'], + 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'string', 'example' => '31', 'title' => ''], + 'Data' => [ + 'description' => 'An array of objects, where each object contains the execution result for a single instance.', + 'type' => 'array', + 'items' => [ + 'description' => 'The execution result for a single instance.', + 'type' => 'object', + 'properties' => [ + 'InvocationId' => ['description' => 'The invocation ID.', 'type' => 'string', 'example' => 't-15775dc8****', 'title' => ''], + 'StartTime' => ['description' => 'The time when command execution began.', 'type' => 'string', 'example' => '2022-10-11T08:53:32Z', 'title' => ''], + 'FinishTime' => ['description' => 'The time when command execution finished.', 'type' => 'string', 'example' => '2022-08-11 17:45:03', 'title' => ''], + 'Output' => ['description' => 'The command output.', 'type' => 'string', 'example' => 'success', 'title' => ''], + 'InstanceId' => ['description' => 'The ID of the instance on which the command was executed.', 'type' => 'string', 'example' => 'acp-uto81vfd8t8z****', 'title' => ''], + 'InvocationStatus' => ['description' => 'The command execution status.', 'type' => 'string', 'example' => 'RUNNING', 'title' => ''], ], - 'required' => false, - 'maxItems' => 100, + 'title' => '', + 'example' => '', ], + 'title' => '', + 'example' => '', ], - 'required' => false, ], - 'required' => false, - 'maxItems' => 100, + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5C5CEF0A-D6E1-58D3-8750-67DB4F82****\\",\\n \\"TotalCount\\": \\"31\\",\\n \\"Data\\": [\\n {\\n \\"InvocationId\\": \\"t-15775dc8****\\",\\n \\"StartTime\\": \\"2022-10-11T08:53:32Z\\",\\n \\"FinishTime\\": \\"2022-08-11 17:45:03\\",\\n \\"Output\\": \\"success\\",\\n \\"InstanceId\\": \\"acp-uto81vfd8t8z****\\",\\n \\"InvocationStatus\\": \\"RUNNING\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => 'RunSyncCommand', + 'description' => 'The `RunSyncCommand` operation is designed for commands that return a result quickly, typically within milliseconds. For longer-running commands that may take several seconds, we recommend using the asynchronous [](t2729835.xdita#)operation.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'SendFile' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphone0959GM'], + ], + 'parameters' => [ [ - 'name' => 'Period', - 'in' => 'formData', + 'name' => 'AndroidInstanceIdList', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '60', + 'description' => 'The IDs of one or more cloud phone instances.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID of a cloud phone.', 'type' => 'string', 'required' => false, 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'deprecated' => false, + 'required' => true, + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'StartTime', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '2019-01-31 10:00:00', - ], + 'name' => 'SourceFilePath', + 'in' => 'query', + 'schema' => ['description' => 'The destination path on the cloud phone.'."\n" + ."\n" + .'> If `UploadType` is `OSS` or `OSS_BRIDGED`, `SourceFilePath` must specify a directory, for example, `/sdcard/Download/`. If `UploadType` is `DOWNLOAD_URL`, `SourceFilePath` must specify a full file path, for example, `/sdcard/Download/MyFile.txt`.', 'type' => 'string', 'required' => true, 'example' => '/sdcard/Download', 'title' => ''], ], [ - 'name' => 'EndTime', - 'in' => 'formData', + 'name' => 'UploadType', + 'in' => 'query', 'schema' => [ - 'description' => '', + 'description' => 'The storage type of the source file. Valid values:'."\n" + ."\n" + .'- **OSS**: The file is stored in Object Storage Service (OSS).'."\n" + ."\n" + .'- **DOWNLOAD\\_URL**: The file is accessible via a public download link.'."\n" + ."\n" + .'- **OSS\\_BRIDGED**: The service first downloads the file from a public download link to an internal OSS bucket, and then distributes it to the cloud phone instances over the internal network.', + 'enumValueTitles' => ['DOWNLOAD_URL' => '', 'OSS' => ''], 'type' => 'string', - 'required' => false, - 'example' => '2019-01-31 11:00:00', + 'required' => true, + 'example' => 'OSS', + 'title' => '', ], ], [ - 'name' => 'NextToken', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kw9dGL5jves2FS9RLq****', - ], + 'name' => 'UploadEndpoint', + 'in' => 'query', + 'schema' => ['description' => 'The service endpoint of Object Storage Service (OSS). This parameter is required if `UploadType` is `OSS` or `OSS_BRIDGED`.'."\n" + ."\n" + .'> If the cloud phone instance and the OSS bucket are in the same region, you can specify an internal endpoint to accelerate data transfer and avoid public data transfer costs. For example, the internal endpoint for the China (Hangzhou) region is `oss-cn-hangzhou-internal.aliyuncs.com`. For a complete list of endpoints, see [OSS regions and endpoints](~~31837~~).', 'type' => 'string', 'required' => false, 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com', 'title' => ''], + ], + [ + 'name' => 'UploadUrl', + 'in' => 'query', + 'schema' => ['description' => '- If `UploadType` is `OSS`, this parameter specifies the URI of the source object in Object Storage Service (OSS).'."\n" + ."\n" + .'> The URI must be in the `oss:///` format. The specified OSS bucket name must have the `cloudphone-saved-bucket-` prefix, for example, `cloudphone-saved-bucket-example`.'."\n" + ."\n" + .'- If `UploadType` is `DOWNLOAD_URL` or `OSS_BRIDGED`, this parameter specifies the public download link of the source file.', 'type' => 'string', 'required' => true, 'example' => 'oss://cloudphone-saved-bucket-example/send/a.txt', 'title' => ''], + ], + [ + 'name' => 'TargetFileName', + 'in' => 'query', + 'schema' => ['description' => 'The name for the destination file on the cloud phone.'."\n" + ."\n" + .'> This parameter is optional and takes effect only when `UploadType` is set to `OSS` or `OSS_BRIDGED`. If you specify this parameter, the file is saved with this name in the path specified by `SourceFilePath`. If you leave this parameter empty, the source file name is used. This parameter is ignored when `UploadType` is set to `DOWNLOAD_URL`.', 'type' => 'string', 'required' => false, 'example' => 'test.txt', 'title' => ''], + ], + [ + 'name' => 'AutoInstall', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to automatically install the application after the file is uploaded.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], + ], + [ + 'name' => 'ClientToken', + 'in' => 'query', + 'schema' => ['description' => 'A client-generated token that ensures request idempotence and prevents duplicate submissions. The token can contain up to 100 characters.', 'type' => 'string', 'required' => false, 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], ], [ - 'name' => 'Length', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '1000', - ], + 'name' => 'FileMd5', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '', + 'title' => '', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'Count' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'NextToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], - 'MetricTotalModel' => [ - 'description' => '', + 'Data' => [ + 'description' => 'The details of the created tasks.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'The details of a single task.', 'type' => 'object', 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-fkuit0cmyru4p****', - ], - 'MetricModelList' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'MetricName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cpu_utilization', - ], - 'ProcessName' => [ - 'description' => '', - 'type' => 'string', - 'example' => '', - ], - 'DataPoints' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Timestamp' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1548777660000', - ], - 'Minimum' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '93.1', - ], - 'Average' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '99.52', - ], - 'Maximum' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '100', - ], - 'Value' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => 'tf-testacc-oos-parameter', - ], - 'GpuId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cpn-1t1bxvp9az2pk****-gpu-0'."\n", - ], - ], - ], - ], - ], - ], - ], - 'InstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'np-5hh4a31emkt6u****'."\n", - ], + 'AndroidInstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-34pqe4r0kd9kn****', 'title' => ''], + 'TaskId' => ['description' => 'The ID of the individual task for a specific cloud phone.', 'type' => 'string', 'example' => 't-4ks224ujixw****', 'title' => ''], ], + 'title' => '', + 'example' => '', ], + 'example' => '425F351C-3F8E-5218-A520-B6311D0D****'."\n", + 'title' => '', ], + 'RequestId' => ['description' => 'A unique identifier for the request. If you encounter an issue, provide this request ID to technical support for troubleshooting.', 'type' => 'string', 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', 'title' => ''], + 'TaskId' => ['description' => 'The batch task ID.', 'type' => 'string', 'example' => 't-ehs0yoedj0xe9****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'SendFile', + 'summary' => 'Pushes files from Object Storage Service (OSS) or a public download link to one or more cloud phones.', + 'description' => 'Use this operation to send files or folders from Object Storage Service (OSS) to cloud phones.', + 'changeSet' => [ + ['createdAt' => '2025-08-01T03:15:43.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-03-14T09:49:56.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2025-02-21T09:43:23.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-17T05:04:23.000Z', 'description' => 'Response parameters changed'], + ['createdAt' => '2024-09-13T09:20:16.000Z', 'description' => 'Response parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Count\\": 1,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MetricTotalModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-fkuit0cmyru4p****\\",\\n \\"MetricModelList\\": [\\n {\\n \\"MetricName\\": \\"cpu_utilization\\",\\n \\"ProcessName\\": \\"需要\\",\\n \\"DataPoints\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Minimum\\": 93.1,\\n \\"Average\\": 99.52,\\n \\"Maximum\\": 100,\\n \\"Value\\": 0,\\n \\"GpuId\\": \\"cpn-1t1bxvp9az2pk****-gpu-0\\\\n\\"\\n }\\n ]\\n }\\n ],\\n \\"InstanceId\\": \\"np-5hh4a31emkt6u****\\\\n\\"\\n }\\n ]\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-34pqe4r0kd9kn****\\",\\n \\"TaskId\\": \\"t-4ks224ujixw****\\"\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"TaskId\\": \\"t-ehs0yoedj0xe9****\\"\\n}","type":"json"}]', ], - 'DescribeMetricTop' => [ - 'summary' => '查询指定监控项的最新监控数据', + 'SendSystemPropertyTemplate' => [ + 'summary' => 'Sends a property template to cloud phone instances and, based on the template, sets properties in the Android system using the setprop command. An APK or a related program can read these property values. If you specify multiple template IDs, the property templates are randomly sent to the cloud phone instances.', 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -13819,319 +11944,285 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVQDPK9', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ - 'name' => 'MetricNames', - 'in' => 'formData', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'instance_out_traffic' => '', - 'instance_in_traffic' => '', - ], - 'example' => 'instance_in_traffic', - ], - 'required' => true, - 'maxItems' => 100, - ], + 'name' => 'TemplateId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the property template.', 'type' => 'string', 'required' => false, 'example' => 'ap-angyvganxlf****', 'title' => ''], ], [ 'name' => 'AndroidInstanceIds', 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'A list of instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-sgicbcdadjs****', - ], - 'required' => false, - 'maxItems' => 50, - ], - ], - [ - 'name' => 'Period', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '60', - ], - ], - [ - 'name' => 'StartTime', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', + 'items' => ['description' => 'An instance ID.', 'type' => 'string', 'required' => false, 'example' => 'cpn-25nt4kk9whhok****', 'title' => ''], 'required' => false, - 'example' => '2019-01-31 10:00:00', + 'maxItems' => 200, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'EndTime', - 'in' => 'formData', + 'name' => 'TemplateIds', + 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'A list of property template IDs. If you provide multiple template IDs, the system randomly matches the specified instances with the provided templates.', + 'type' => 'array', + 'items' => ['description' => 'A property template ID.', 'type' => 'string', 'required' => false, 'example' => 'ap-0caoenwutkkxb0****', 'title' => ''], 'required' => false, - 'example' => '2019-01-31 11:00:00', + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], - [ - 'name' => 'NextToken', - 'in' => 'formData', + ], + 'responses' => [ + 200 => [ 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', + 'title' => 'Schema of Response', + 'description' => 'The response elements.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******'], + ], + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\"\\n}","type":"json"}]', + 'title' => 'SendSystemPropertyTemplate', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + ], + 'SetAdbSecure' => [ + 'summary' => 'Sets the authentication status for cloud phone instances. If you enable Android Debug Bridge (ADB) authentication for cloud phone instances, the system will verify the validity of the ADB key pairs provided by end users when they connect to the instances over ADB. To ensure successful authentication and a proper connection, we recommend that you attach ADB key pairs to cloud phone instances. If you disable ADB authentication for cloud phone instances, the system will no longer verify the validity of any ADB key pairs. As a result, end users can connect to the cloud phone instances over ADB without authentication, provided the network connection is functioning properly.', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ [ - 'name' => 'Length', - 'in' => 'formData', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '100', - ], + 'AK' => [], ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], + ], + 'parameters' => [ [ 'name' => 'InstanceIds', - 'in' => 'formData', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The IDs of the cloud phone instances. You can specify a maximum of 50 cloud phone instances.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'np-5hh4a31emkt6u****', - ], + 'items' => ['description' => 'The ID of the cloud phone instance.', 'type' => 'string', 'required' => false, 'example' => 'acp-5hh431emkt6ua****', 'title' => ''], 'required' => false, 'maxItems' => 50, + 'title' => '', + 'example' => '', ], ], - ], - 'responses' => [ - 200 => [ + [ + 'name' => 'Status', + 'in' => 'query', 'schema' => [ - 'title' => 'Schema of Response', - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '4610632D-D661-5982-B3D7-5D3FD183F****', - ], - 'Count' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1', - ], - 'NextToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], - 'MetricTotalModel' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-fkuit0cmyru4p****', - ], - 'InstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'np-5hh4a31emkt6u****', - ], - 'MetricModelList' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'MetricName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'instance_in_traffic', - ], - 'DataPoints' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Timestamp' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '1548777660000', - ], - 'Minimum' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '93.1', - ], - 'Average' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '99.52', - ], - 'Maximum' => [ - 'description' => '', - 'type' => 'number', - 'format' => 'double', - 'example' => '100', - ], - 'Name' => [ - 'description' => '', - 'type' => 'string', - ], - 'Id' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-fkuit0cmyru4p****'."\n", - ], - 'Properties' => [ - 'description' => '', - 'type' => 'string', - ], - ], - ], - ], - ], - ], + 'description' => 'The status of the ADB authentication feature.', + 'enumValueTitles' => ['The ADB authentication feature is disabled.', 'The ADB authentication feature is enabled.'], + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'title' => '', + 'example' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResult', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => 'The returned object.', + 'type' => 'object', + 'properties' => [ + 'TotalCount' => ['description' => 'The total number of the cloud phone instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], + 'FailCount' => ['description' => 'The number of the cloud phone instances for which the ADB authentication feature failed to be enabled.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], + 'InstanceIds' => [ + 'description' => 'The IDs of the cloud phone instances for which the ADB authentication feature is enabled.', + 'type' => 'array', + 'items' => [ + 'description' => 'The ID of the cloud phone instance.', + 'enumValueTitles' => [], + 'type' => 'string', + 'example' => 'acp-5hh431emkt6ua****', + 'title' => '', ], + 'title' => '', + 'example' => '', ], ], + 'title' => '', + 'example' => '', ], + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"TotalCount\\": 100,\\n \\"FailCount\\": 0,\\n \\"InstanceIds\\": [\\n \\"acp-5hh431emkt6ua****\\"\\n ]\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', + 'title' => 'SetAdbSecure', + 'description' => 'Before you call this operation, make sure that the desired cloud phone instance is in the Running state.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4610632D-D661-5982-B3D7-5D3FD183F****\\",\\n \\"Count\\": 1,\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****\\",\\n \\"MetricTotalModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"acp-fkuit0cmyru4p****\\",\\n \\"InstanceId\\": \\"np-5hh4a31emkt6u****\\",\\n \\"MetricModelList\\": [\\n {\\n \\"MetricName\\": \\"instance_in_traffic\\",\\n \\"DataPoints\\": [\\n {\\n \\"Timestamp\\": 1548777660000,\\n \\"Minimum\\": 93.1,\\n \\"Average\\": 99.52,\\n \\"Maximum\\": 100,\\n \\"Name\\": \\"cloudPhone-****\\",\\n \\"Id\\": \\"acp-fkuit0cmyru4p****\\\\n\\",\\n \\"Properties\\": \\"{\\\\\\"IP\\\\\\":\\\\\\"192.168.*.***\\\\\\"}\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', ], - 'TagResources' => [ - 'summary' => '给资源打标签', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'SetNetworkBlacklist' => [ + 'summary' => 'Adds or purges IP addresses and domain names from the network access blacklist.', + 'path' => '/instances/{instanceId}', + 'methods' => ['get', 'post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneLYX9LP'], + 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ - 'name' => 'ResourceType', + 'name' => 'IpBlacklist', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'ALIYUN::ACP::INSTANCE', + 'type' => 'array', + 'items' => ['description' => 'An individual IP address or IP address segment.'."\n" + ."\n" + .'> If you pass an empty string (""), all configured IP blacklist entries are purged.', 'type' => 'string', 'maxLength' => 20, 'minLength' => 1, 'required' => false, 'example' => '12.34.56.78', 'title' => ''], + 'maxItems' => 200, + 'description' => 'IP address blacklist.'."\n" + ."\n" + .'> Supports a maximum of 200 IP addresses or IP address segments.', + 'required' => false, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ResourceId', + 'name' => 'DomainBlacklist', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-123456ab****', + 'items' => ['description' => 'Domain name.'."\n" + ."\n" + .'> A single domain name can contain up to 100 characters.'."\n" + .'>'."\n" + .'> - If you pass an empty string (""), all configured domain name blacklist entries are purged.', 'type' => 'string', 'maxLength' => 100, 'minLength' => 1, 'required' => false, 'example' => 'malicious.com', 'title' => ''], + 'maxItems' => 200, + 'description' => 'Domain name blacklist.'."\n" + ."\n" + .'> Supports a maximum of 200 domain names.', + 'required' => false, + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'title' => '', 'example' => '2B9E6946-0E2A-5D2B-B275-361DF81F****'], ], - 'required' => true, - 'maxItems' => 50, - 'minItems' => 1, + 'title' => '', + 'description' => 'The data returned by the API.', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'SetNetworkBlacklist', + 'description' => '- This operation requires image version 26.01 or later.'."\n" + ."\n" + .'- This API call synchronously updates the IP address blacklist and the domain name blacklist.'."\n" + ."\n" + .'- The IP address blacklist supports individual IP addresses and IP address segments. The update overwrites the existing configuration. If you pass an empty string (""), all configured IP blacklist entries are purged.'."\n" + ."\n" + .'- The domain name blacklist supports only exact matches and does not support regular expressions. If you pass an empty string (""), all configured domain name blacklist entries are purged.'."\n" + ."\n" + .'- After you change the configuration, restart the cloud phone to apply the new blacklist rules. Note that these rules may not take effect if you use an agent.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2B9E6946-0E2A-5D2B-B275-361DF81F****\\"\\n}","type":"json"}]', + ], + 'StartAndroidInstance' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphone5C0MVL'], + ], + 'parameters' => [ [ - 'name' => 'Tag', + 'name' => 'AndroidInstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'List of instances.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'Key' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'department', - 'maxLength' => 128, - ], - 'Value' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'design ', - 'maxLength' => 256, - ], - ], - 'required' => false, - ], - 'required' => true, - 'maxItems' => 20, - 'minItems' => 1, + 'items' => ['description' => 'Instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-hk34lbnw0qhi7****', 'title' => ''], + 'required' => false, + 'maxItems' => 1000, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'SaleMode', + 'in' => 'query', + 'schema' => [ + 'description' => 'The billing mode. This parameter is deprecated.', + 'enumValueTitles' => ['Instance' => 'Cloud phone instance', 'Node' => 'Cloud phone matrix'], + 'type' => 'string', + 'enum' => ['Instance', 'Node'], + 'required' => false, + 'example' => 'Instance', + 'title' => '', ], ], ], @@ -14139,210 +12230,253 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '17C731AB-AAEE-5844-A352-D8D0352D****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\"\\n}","type":"json"}]', - ], - 'UntagResources' => [ - 'summary' => '删除资源标签', - 'methods' => [ - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'Start Instance', + 'summary' => 'Start cloud phone instances.', + 'description' => 'Only supports starting when the instance is in the **Stopped, Backup Failed, or Recovery Failed** state.', + 'changeSet' => [ + ['createdAt' => '2025-04-07T03:35:38.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"17C731AB-AAEE-5844-A352-D8D0352D****\\"\\n}","type":"json"}]', + ], + 'StartInstanceAdb' => [ + 'summary' => 'Enables the Android Debug Bridge (ADB) connection for an instance and creates an Internet mapping rule for its ADB port. This feature is available only for standard networks.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneLYX9LP'], + 'autoTest' => true, ], 'parameters' => [ [ - 'name' => 'ResourceType', + 'name' => 'InstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'type' => 'array', + 'items' => ['type' => 'string', 'description' => 'The ID of a cloud phone instance.', 'required' => false, 'title' => '', 'example' => 'acp-5hh431emkt6u*****'], 'required' => true, - 'docRequired' => true, - 'example' => 'ALIYUN::ACP::INSTANCE', + 'maxItems' => 100, + 'description' => 'A list of 1 to 100 cloud phone instance IDs.', + 'title' => '', + 'example' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['type' => 'string', 'description' => 'The request ID.', 'title' => '', 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****'], + ], + 'title' => '', + 'description' => 'The data returned.', + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'StartInstanceAdb', + 'description' => 'This feature can be enabled when the instance is not in the **UNAVAILABLE** state and has a **private IP address** assigned.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', + ], + 'StopAndroidInstance' => [ + 'summary' => 'Stops (shuts down) an Android instance.', + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], + 'security' => [ [ - 'name' => 'All', + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneRXVHCU'], + ], + 'parameters' => [ + [ + 'name' => 'AndroidInstanceIds', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'boolean', + 'description' => 'A list of instance IDs.', + 'type' => 'array', + 'items' => ['description' => 'An instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-3kzpiqqsjwtw7****', 'title' => ''], 'required' => false, - 'docRequired' => true, - 'example' => 'true', + 'maxItems' => 1000, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ResourceId', + 'name' => 'ForceStop', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to forcibly shut down the instance. If an instance cannot shut down because of a system or network exception, you can force it to shut down. This may cause data loss.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'SaleMode', 'in' => 'query', - 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-123456ab****', + 'description' => 'The sale pattern. This parameter is deprecated.', + 'enumValueTitles' => ['Instance' => 'Android instance pattern', 'Node' => 'Android instance matrix pattern'], + 'type' => 'string', + 'enum' => ['Instance', 'Node'], + 'required' => false, + 'example' => 'Instance', + 'title' => '', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => 'The returned parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'E38B41A8-8E00-5AE4-A957-6636ACB8****'], ], - 'required' => true, - 'maxItems' => 50, + 'example' => '', ], ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'StopAndroidInstance', + 'description' => 'An instance can be stopped only if it is in the Active, Backup Failed, or **Recover Failed** status.', + 'changeSet' => [ + ['createdAt' => '2025-04-07T03:35:38.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-07-02T02:05:34.000Z', 'description' => 'Request parameters changed'], + ], + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E38B41A8-8E00-5AE4-A957-6636ACB8****\\"\\n}","type":"json"}]', + ], + 'StopInstanceAdb' => [ + 'summary' => 'Disables the ADB connection for an Android instance and deletes its ADB port forwarding rules. This operation applies only to standard networks.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneLYX9LP'], + 'autoTest' => true, + ], + 'parameters' => [ [ - 'name' => 'TagKey', + 'name' => 'InstanceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'department', - ], - 'required' => false, - 'maxItems' => 20, + 'items' => ['type' => 'string', 'description' => 'The ID of the Android instance.', 'required' => false, 'title' => '', 'example' => 'acp-5hh4a31emkt6u****'], + 'required' => true, + 'maxItems' => 100, + 'description' => 'The list of Android instance IDs. You can specify 1 to 100 IDs.', + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****', - ], + 'RequestId' => ['type' => 'string', 'description' => 'The request ID.', 'title' => '', 'example' => '1CBAFFAB-B697-4049-A9B1-67E1FC******'], ], + 'title' => '', + 'description' => 'The response data.', + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'StopInstanceAdb', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1CBAFFAB-B697-4049-A9B1-67E1FC******\\"\\n}","type":"json"}]', ], - 'ListTagResources' => [ - 'summary' => '查询资源标签', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'TagResources' => [ + 'summary' => 'Adds tags to one or more cloud phones.', + 'path' => '', + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], ], 'parameters' => [ - [ - 'name' => 'RegionId', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'cn-shanghai', - ], - ], [ 'name' => 'ResourceType', 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => true, - 'docRequired' => true, - 'example' => 'ALIYUN::ACP::INSTANCE', - ], - ], - [ - 'name' => 'MaxResults', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'docRequired' => false, - 'example' => '10', - ], - ], - [ - 'name' => 'NextToken', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'docRequired' => false, - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6kU+SQXzm0H9mu/FiSc****', - ], + 'schema' => ['description' => 'The resource type. The value must be \\`ALIYUN::ACP::INSTANCE\\`.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ALIYUN::ACP::INSTANCE', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The list of cloud phone IDs. The list can contain 1 to 50 IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'acp-123456abc****', - ], - 'required' => false, + 'items' => ['description' => 'The ID of the cloud phone.', 'type' => 'string', 'required' => false, 'example' => 'acp-123456ab****', 'title' => ''], + 'required' => true, 'maxItems' => 50, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ @@ -14350,29 +12484,24 @@ 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The list of tags. The list can contain 1 to 20 tags.', 'type' => 'array', 'items' => [ - 'description' => '', + 'description' => 'A list of resource tags.', 'type' => 'object', 'properties' => [ - 'Key' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'department', - ], - 'Value' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'design', - ], + 'Key' => ['description' => 'The tag key. The key can be up to 128 characters in length. It cannot be an empty string. The key cannot start with \\`aliyun\\` or \\`acs:\\` and cannot contain \\`http\\://\\` or \\`https\\://\\`.', 'type' => 'string', 'maxLength' => 128, 'required' => false, 'example' => 'department', 'title' => ''], + 'Value' => ['description' => 'The tag value. The value can be up to 128 characters in length and can be an empty string. The value cannot start with \\`acs:\\` and cannot contain \\`http\\://\\` or \\`https\\://\\`.', 'type' => 'string', 'maxLength' => 256, 'required' => false, 'example' => 'design ', 'title' => ''], ], 'required' => false, + 'title' => '', + 'example' => '', ], - 'required' => false, + 'required' => true, 'maxItems' => 20, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], ], @@ -14380,372 +12509,133 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => 'Schema of Response', - 'type' => 'object', - 'properties' => [ - 'NextToken' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****', - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '20393E53-8FF1-524C-B494-B478A5369733', - ], - 'TagResources' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'TagValue' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'TF', - ], - 'ResourceType' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ALIYUN::ACP::INSTANC', - ], - 'ResourceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'acp-123456abc****', - ], - 'TagKey' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'For', - ], - ], - ], - ], - ], - ], - ], - ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAV3MpHK1AP0pfERHZN5pu6l5V9uONHqPtDLM2U8s****\\",\\n \\"RequestId\\": \\"20393E53-8FF1-524C-B494-B478A5369733\\",\\n \\"TagResources\\": [\\n {\\n \\"TagValue\\": \\"TF\\",\\n \\"ResourceType\\": \\"ALIYUN::ACP::INSTANCE\\",\\n \\"ResourceId\\": \\"acp-8jwttemxb4t6y****\\",\\n \\"TagKey\\": \\"department\\"\\n }\\n ]\\n}","type":"json"}]', - ], - 'DescribeBuckets' => [ - 'summary' => '查询bucket信息', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], - 'security' => [ - [ - 'AK' => [], - ], - ], - 'operationType' => 'readAndWrite', - 'deprecated' => false, - 'systemTags' => [ - 'operationType' => 'list', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneMPR6T6', - ], - ], - 'parameters' => [ - [ - 'name' => 'FileType', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [], - 'example' => 'docx', - 'enum' => [ - 'FILE', - 'DIR', - ], - ], - ], - ], - 'responses' => [ - 200 => [ - 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'PlainResult', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'GmtCreated' => [ - 'description' => '', - 'type' => 'string', - 'example' => '2024-05-15 17:33:59', - ], - 'RegionId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cn-hangzhou', - ], - 'BucketName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'zydctest', - ], - 'ExtranetEndpoint' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'oss-cn-hangzhou.aliyuncs.com', - ], - 'IntranetEndpoint' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'oss-cn-hangzhou-internal.aliyuncs.com'."\n" - ."\n", - ], - 'Location' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'center', - ], - 'OssObjectList' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'BucketName' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'tf-testacceu-central-1ensbucketlifecycle44222', - ], - 'Key' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'con', - ], - 'ETag' => [ - 'description' => '', - 'type' => 'string', - 'example' => '5B3C1A2E053D763E1B002CC607C5A0FE1****'."\n" - ."\n", - ], - 'Size' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int64', - 'example' => '9', - ], - 'LastModified' => [ - 'description' => '', - 'type' => 'string', - 'example' => '2012-02-24T08:42:32.000Z', - ], - 'StorageClass' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ARCHIVE', - ], - 'Owner' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'DisplayName' => [ - 'description' => '', - 'type' => 'string', - 'example' => '', - ], - 'Id' => [ - 'description' => '', - 'type' => 'string', - 'example' => '395', - ], - ], - ], - 'Type' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'InstanceGroup', - ], - 'RestoreInfo' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'ongoing-request="true"', - ], - ], - ], - ], - ], - ], - ], - 'RequestId' => [ - 'description' => '', - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'Success' => [ - 'description' => '', - 'type' => 'boolean', - 'example' => 'True', - ], - 'Code' => [ - 'description' => '', - 'type' => 'string', - 'example' => '200', - ], - 'Message' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'Success.', - ], - 'HttpStatusCode' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '200', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F07A1DA1-E1EB-5CCA-8EED-12F85D32****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F07A1DA1-E1EB-5CCA-8EED-12F85D32****\\"\\n}","type":"json"}]', + 'title' => 'TagResources', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"GmtCreated\\": \\"2024-05-15 17:33:59\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"BucketName\\": \\"zydctest\\",\\n \\"ExtranetEndpoint\\": \\"oss-cn-hangzhou.aliyuncs.com\\",\\n \\"IntranetEndpoint\\": \\"oss-cn-hangzhou-internal.aliyuncs.com\\\\n\\\\n\\",\\n \\"Location\\": \\"center\\",\\n \\"OssObjectList\\": [\\n {\\n \\"BucketName\\": \\"tf-testacceu-central-1ensbucketlifecycle44222\\",\\n \\"Key\\": \\"con\\",\\n \\"ETag\\": \\"5B3C1A2E053D763E1B002CC607C5A0FE1****\\\\n\\\\n\\",\\n \\"Size\\": 9,\\n \\"LastModified\\": \\"2012-02-24T08:42:32.000Z\\",\\n \\"StorageClass\\": \\"ARCHIVE\\",\\n \\"Owner\\": {\\n \\"DisplayName\\": \\"佳钰\\",\\n \\"Id\\": \\"395\\"\\n },\\n \\"Type\\": \\"InstanceGroup\\",\\n \\"RestoreInfo\\": \\"ongoing-request=\\\\\\"true\\\\\\"\\"\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"Success\\": true,\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success.\\",\\n \\"HttpStatusCode\\": 200\\n}","type":"json"}]', ], - 'SetAdbSecure' => [ - 'summary' => 'Sets the authentication status for cloud phone instances. If you enable Android Debug Bridge (ADB) authentication for cloud phone instances, the system will verify the validity of the ADB key pairs provided by end users when they connect to the instances over ADB. To ensure successful authentication and a proper connection, we recommend that you attach ADB key pairs to cloud phone instances. If you disable ADB authentication for cloud phone instances, the system will no longer verify the validity of any ADB key pairs. As a result, end users can connect to the cloud phone instances over ADB without authentication, provided the network connection is functioning properly.', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'UninstallApp' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', + 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneDADB6I', - ], + 'abilityTreeNodes' => ['FEATUREcloudphonePZ72CH'], ], 'parameters' => [ [ - 'name' => 'InstanceIds', + 'name' => 'AppIdList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => 'The IDs of the cloud phone instances. You can specify a maximum of 50 cloud phone instances.'."\n", + 'description' => 'A list of application IDs.', 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'required' => false, - 'example' => 'acp-5hh431emkt6ua****', - ], + 'items' => ['description' => 'The application ID.', 'type' => 'string', 'required' => false, 'example' => '12345', 'title' => ''], 'required' => false, - 'maxItems' => 50, + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'Status', + 'name' => 'InstanceGroupIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'title' => '安全模式', - 'description' => 'The status of the ADB authentication feature.'."\n" - ."\n" - .'Valid values:'."\n" - ."\n" - .'* 0: The ADB authentication feature is disabled.'."\n" - .'* 1: The ADB authentication feature is enabled.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'required' => true, - 'enumValueTitles' => [ - '', - '', - ], - 'example' => '1', + 'description' => 'A list of instance group IDs. You must specify either this parameter or `InstanceIdList`. If you specify both, only `InstanceGroupIdList` takes precedence.', + 'type' => 'array', + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-ferag1vraw****', 'title' => ''], + 'required' => false, + 'maxItems' => 100, + 'minItems' => 0, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'InstanceIdList', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'A list of instance IDs. You must specify either this parameter or `InstanceGroupIdList`. If you specify both, only `InstanceGroupIdList` takes precedence.', + 'type' => 'array', + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'acp-3eourrxapshn2****', 'title' => ''], + 'required' => false, + 'maxItems' => 1000, + 'minItems' => 0, + 'title' => '', + 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'PlainResult', - 'description' => 'The response parameters.'."\n", + 'title' => 'Schema of Response', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'Data' => [ - 'description' => 'The returned object.'."\n", - 'type' => 'object', - 'properties' => [ - 'TotalCount' => [ - 'description' => 'The total number of the cloud phone instances.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '100', - ], - 'FailCount' => [ - 'description' => 'The number of the cloud phone instances for which the ADB authentication feature failed to be enabled.'."\n", - 'type' => 'integer', - 'format' => 'int32', - 'example' => '0', - ], - 'InstanceIds' => [ - 'description' => 'The IDs of the cloud phone instances for which the ADB authentication feature is enabled.'."\n", - 'type' => 'array', - 'items' => [ - 'description' => 'The ID of the cloud phone instance.'."\n", - 'type' => 'string', - 'enumValueTitles' => [], - 'example' => 'acp-5hh431emkt6ua****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'E5138F7E-46B5-526A-8C99-82DEAE6B****'], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'title' => '', 'example' => 't-1ljew7on6ay0j****'], + 'ChildTaskInfo' => [ + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'acp-ty3bnd7b9xxxx', 'title' => ''], + 'ChildTaskId' => ['description' => 'The subtask ID.', 'type' => 'string', 'example' => 't-ybde48cevxxxx', 'title' => ''], + 'AppId' => ['description' => 'The application ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], + 'description' => 'A subtask.', + 'title' => '', + 'example' => '', ], - ], - 'RequestId' => [ - 'description' => 'The ID of the request.'."\n", - 'type' => 'string', - 'example' => '69BCBBE4-FCF2-59B8-AD9D-531EB422****', + 'description' => 'A list of subtasks.', + 'title' => '', + 'example' => '', ], ], + 'example' => '', ], ], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"TotalCount\\": 100,\\n \\"FailCount\\": 0,\\n \\"InstanceIds\\": [\\n \\"acp-5hh431emkt6ua****\\"\\n ]\\n },\\n \\"RequestId\\": \\"69BCBBE4-FCF2-59B8-AD9D-531EB422****\\"\\n}","type":"json"}]', - 'title' => 'SetAdbSecure', - 'description' => 'Before you call this operation, make sure that the desired cloud phone instance is in the Running state.'."\n", - ], - 'ModifyDisplayConfig' => [ - 'summary' => '修改显示设置', - 'path' => '', - 'methods' => [ - 'post', - 'get', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'UninstallApp', + 'summary' => 'Uninstalls applications from one or more Cloud Phone instances.', + 'description' => 'This is an asynchronous operation. You can query the task status in the Task Hub by calling [DescribeTasks](~~DescribeTasks~~).', + 'changeSet' => [ + ['createdAt' => '2025-09-22T13:03:48.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-12-17T03:35:22.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E5138F7E-46B5-526A-8C99-82DEAE6B****\\",\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\",\\n \\"ChildTaskInfo\\": [\\n {\\n \\"InstanceId\\": \\"acp-ty3bnd7b9xxxx\\",\\n \\"ChildTaskId\\": \\"t-ybde48cevxxxx\\",\\n \\"AppId\\": \\"\\"\\n }\\n ]\\n}","type":"json"}]', + ], + 'UninstallMonitorAgent' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], @@ -14757,9 +12647,7 @@ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVB2A7J', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneVQDPK9'], ], 'parameters' => [ [ @@ -14767,66 +12655,25 @@ 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'A list of instance IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-9y1nwysxr9d6lk2xq-****', - ], + 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'cpn-9y1nwysxr9d6l****-016'], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 1000, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'DisplayConfig', + 'name' => 'SaleMode', 'in' => 'formData', - 'style' => 'json', 'schema' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'ResolutionHeight' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '1920', - ], - 'ResolutionWidth' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '720', - ], - 'Dpi' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => '240', - ], - 'Fps' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'required' => false, - 'example' => 'null', - ], - 'LockResolution' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - ], + 'description' => 'The monitoring type.', + 'type' => 'string', 'required' => false, + 'enumValueTitles' => ['Instance' => 'Instance mode', 'Node' => 'Node mode'], + 'title' => '', + 'example' => 'Node', ], ], ], @@ -14834,65 +12681,80 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response body.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'A578AD3A-8E7C-54FE-A09F-B060941*****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '6C8439B9-7DBF-57F4-92AE-55A9B9D3****'], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'UninstallMonitorAgent', + 'summary' => 'Uninstalls the monitoring plugin.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A578AD3A-8E7C-54FE-A09F-B060941*****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6C8439B9-7DBF-57F4-92AE-55A9B9D3****\\"\\n}","type":"json"}]', ], - 'DescribeDisplayConfig' => [ - 'summary' => '查询显示设置', - 'path' => '', - 'methods' => [ - 'post', - 'get', - ], - 'schemes' => [ - 'https', - ], + 'UntagResources' => [ + 'summary' => 'Removes tags from cloud phones. If a tag is no longer associated with any cloud phone after it is removed, the tag is automatically deleted.', + 'methods' => ['post'], + 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'none', + 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneVB2A7J', - ], + 'abilityTreeNodes' => ['FEATUREcloudphoneDADB6I'], ], 'parameters' => [ [ - 'name' => 'AndroidInstanceIds', - 'in' => 'formData', + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => ['description' => 'The type of the resource.'."\n" + ."\n" + .'Valid value: ALIYUN::ACP::INSTANCE, which represents a cloud phone.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'ALIYUN::ACP::INSTANCE', 'title' => ''], + ], + [ + 'name' => 'All', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to remove all tags from the resources. This parameter applies only when TagKey.N is not specified. The default value is false.', 'type' => 'boolean', 'required' => false, 'docRequired' => true, 'example' => 'true', 'title' => ''], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', 'style' => 'repeatList', 'schema' => [ - 'description' => '', + 'description' => 'The IDs of the resources. You can specify 1 to 50 resource IDs.', 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'cpn-jewjt8xryuituz4qn-****', - ], + 'items' => ['description' => 'The ID of a cloud phone.', 'type' => 'string', 'required' => false, 'example' => 'acp-123456ab****', 'title' => ''], + 'required' => true, + 'maxItems' => 50, + 'title' => '', + 'example' => '', + ], + ], + [ + 'name' => 'TagKey', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => 'The keys of the tags to remove. You can specify 1 to 20 tag keys.', + 'type' => 'array', + 'items' => ['description' => 'A tag key.', 'type' => 'string', 'required' => false, 'example' => 'department', 'title' => ''], 'required' => false, - 'maxItems' => 100, + 'maxItems' => 20, + 'title' => '', + 'example' => '', ], ], ], @@ -14900,343 +12762,532 @@ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'FFEF7EFE-1E36-56D1-B5BF-5BACE43B****', - ], - 'DisplayConfigModel' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'object', - 'properties' => [ - 'AndroidInstanceId' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'cpn-jewjt8xryuituz4qn-****', - ], - 'ResolutionHeight' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '1280', - ], - 'ResolutionWidth' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '720', - ], - 'Dpi' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => '240', - ], - 'Fps' => [ - 'description' => '', - 'type' => 'integer', - 'format' => 'int32', - 'example' => 'null', - ], - 'LockResolution' => [ - 'description' => '', - 'type' => 'string', - 'enumValueTitles' => [ - 'off' => '', - 'on' => '', - ], - 'example' => 'off', - ], - ], - ], - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\"\\n}","type":"json"}]', + 'title' => 'UntagResources', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FFEF7EFE-1E36-56D1-B5BF-5BACE43B****\\",\\n \\"DisplayConfigModel\\": [\\n {\\n \\"AndroidInstanceId\\": \\"cpn-jewjt8xryuituz4qn-****\\",\\n \\"ResolutionHeight\\": 1280,\\n \\"ResolutionWidth\\": 720,\\n \\"Dpi\\": 240,\\n \\"Fps\\": 0,\\n \\"LockResolution\\": \\"off\\"\\n }\\n ]\\n}","type":"json"}]', ], - 'ImportImage' => [ - 'summary' => '导入自定义镜像', - 'path' => '', - 'methods' => [ - 'post', - 'get', + 'UpdateCustomImageName' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['https'], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => ['FEATUREcloudphoneCPBVX1'], + ], + 'parameters' => [ + [ + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => ['description' => 'The ID of the image.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'imgc-075cllfeuazh0****'], + ], + [ + 'name' => 'ImageName', + 'in' => 'formData', + 'schema' => ['description' => 'The name of the image.', 'type' => 'string', 'required' => false, 'maxLength' => 30, 'title' => '', 'example' => 'imagename'], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'PlainResult', + 'description' => 'The response parameters.', + 'type' => 'object', + 'properties' => [ + 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => '552B7EED-D434-511F-B838-29EA4E906034'], + ], + 'example' => '', + ], + ], + ], + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'UpdateCustomImageName', + 'summary' => 'Updates the name of a custom image.', + 'changeSet' => [ + ['createdAt' => '2025-07-28T04:34:39.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"552B7EED-D434-511F-B838-29EA4E906034\\"\\n}","type":"json"}]', + ], + 'UpdateInstanceGroupImage' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'readAndWrite', + 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'create', - 'riskType' => 'none', + 'operationType' => 'update', + 'riskType' => 'high', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneLJI39N', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphoneE7UBTJ'], ], 'parameters' => [ [ - 'name' => 'ImageFileURL', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'https://xxx.oss-xxx/xxxx.tgz', - ], - ], - [ - 'name' => 'ImageName', - 'in' => 'query', + 'name' => 'InstanceGroupIds', + 'in' => 'formData', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'import custom image', + 'description' => 'A list of instance group IDs.', + 'type' => 'array', + 'items' => ['description' => 'The instance group ID.', 'type' => 'string', 'required' => false, 'example' => 'ag-3kzpiqqsjwpy9****', 'title' => ''], + 'required' => true, + 'maxItems' => 100, + 'minItems' => 1, + 'title' => '', + 'example' => '', ], ], [ - 'name' => 'ImageDescription', - 'in' => 'query', - 'schema' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'android 12 custom image', - ], + 'name' => 'ImageId', + 'in' => 'formData', + 'schema' => ['description' => 'The image ID.', 'type' => 'string', 'required' => true, 'example' => 'imgc-075cllfeuazh****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ - 'title' => 'Schema of Response', - 'description' => 'Schema of Response', + 'title' => 'PlainResult', + 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => 'Id of the request', - 'type' => 'string', - 'example' => '425F351C-3F8E-5218-A520-B6311D0D****', - ], - 'ImageId' => [ - 'title' => 'ImageId', - 'description' => 'ImageId', - 'type' => 'string', - 'example' => 'imgc-06zyt9m93zwax****', - ], + 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '55726272-E40B-530D-914F-5126B19C79B3', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'UpdateInstanceGroupImage', + 'summary' => 'Updates the image of an instance group. This update affects all instances in the group.', + 'description' => 'The image and the instance group must be in the active state. The image must be available in the same region as the instance group.', + 'changeSet' => [], + 'flowControl' => [ + 'flowControlList' => [], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"425F351C-3F8E-5218-A520-B6311D0D****\\",\\n \\"ImageId\\": \\"imgc-06zyt9m93zwax****\\"\\n}","type":"json"}]', + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"55726272-E40B-530D-914F-5126B19C79B3\\"\\n}","type":"json"}]', ], - 'GetNetworkBlacklist' => [ - 'summary' => '网络黑名单列表查询', + 'UpdateInstanceImage' => [ 'path' => '', - 'methods' => [ - 'get', - 'post', - ], - 'schemes' => [ - 'https', - ], + 'methods' => ['post'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'read', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'get', - 'riskType' => 'none', + 'operationType' => 'update', + 'riskType' => 'high', 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphone89PVC7', - ], - 'tenantRelevance' => 'publicInformation', + 'abilityTreeNodes' => ['FEATUREcloudphone3OZQF8'], ], 'parameters' => [ [ - 'name' => 'Type', + 'name' => 'InstanceIdList', 'in' => 'query', + 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'string', + 'description' => 'The list of instances.', + 'type' => 'array', + 'items' => ['description' => 'The list of instance IDs.', 'type' => 'string', 'required' => false, 'example' => 'acp-dvbhknfasf123****', 'title' => ''], 'required' => false, - 'example' => 'IP', - 'enum' => [ - 'Domain', - 'IP', - ], + 'maxItems' => 100, + 'title' => '', + 'example' => '', ], ], + [ + 'name' => 'ImageId', + 'in' => 'query', + 'schema' => ['description' => 'The ID of the image. Call [](t2730769.xdita#)to query the list of images for cloud phones.', 'type' => 'string', 'required' => false, 'example' => 'imgc-075cllfeuazh0****', 'title' => ''], + ], + [ + 'name' => 'Reset', + 'in' => 'query', + 'schema' => ['description' => 'Specifies whether to reset the instance. If you reset the instance, all user data on the instance is cleared.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], + ], + [ + 'name' => 'IgnoreParamValidation', + 'in' => 'query', + 'schema' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response elements.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => 'A578AD3A-8E7C-54FE-A09F-B060941*****', - ], - 'NetworkBlacklistModel' => [ - 'description' => '', + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '1A923337-44D9-5CAD-9A53-95084BD4****'], + 'Tasks' => [ 'type' => 'object', 'properties' => [ - 'IpBlacklist' => [ - 'description' => '', + 'ParentTaskId' => ['type' => 'string', 'example' => 't-xxxx', 'description' => '', 'title' => ''], + 'ChildTasks' => [ 'type' => 'array', 'items' => [ + 'type' => 'object', + 'properties' => [ + 'InstanceId' => ['type' => 'string', 'example' => 'acp-xxxx', 'description' => '', 'title' => ''], + 'TaskId' => ['type' => 'string', 'example' => 't-xxxx', 'description' => '', 'title' => ''], + ], 'description' => '', - 'type' => 'string', - 'example' => '12.34.56.78', + 'title' => '', + 'example' => '', ], - ], - 'DomainBlacklist' => [ 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'example' => 'malicious.com', - ], + 'title' => '', + 'example' => '', ], ], + 'description' => '', + 'title' => '', + 'example' => '', ], + 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-1ljew7on6ay0j****', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', - ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A578AD3A-8E7C-54FE-A09F-B060941*****\\",\\n \\"NetworkBlacklistModel\\": {\\n \\"IpBlacklist\\": [\\n \\"12.34.56.78\\"\\n ],\\n \\"DomainBlacklist\\": [\\n \\"malicious.com\\"\\n ]\\n }\\n}","type":"json"}]', - ], - 'SetNetworkBlacklist' => [ - 'summary' => '设置网络黑名单', - 'path' => '/instances/{instanceId}', - 'methods' => [ - 'get', - 'post', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'UpdateInstanceImage', + 'summary' => 'Changes the image of an instance in a cloud phone matrix. You can change the image for an instance only when the instance is in the Running, Stopped, or Failed to change the image state. The GPU vendor of the target image must match the GPU vendor of the server where the instance runs. If you change the image across major versions, such as from Android 10 to Android 12, the system clears all data. This operation is equivalent to changing the image and then resetting the instance.', + 'description' => 'You can change images only for cloud phone matrix instances. Other instance types are not supported.This feature is not available on the Alibaba Cloud international site (www\\.alibabacloud.com).', + 'changeSet' => [ + ['createdAt' => '2025-08-22T08:01:59.000Z', 'description' => 'Request parameters changed'], ], - 'schemes' => [ - 'https', + 'flowControl' => [ + 'flowControlList' => [], ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A923337-44D9-5CAD-9A53-95084BD4****\\",\\n \\"Tasks\\": {\\n \\"ParentTaskId\\": \\"t-xxxx\\",\\n \\"ChildTasks\\": [\\n {\\n \\"InstanceId\\": \\"acp-xxxx\\",\\n \\"TaskId\\": \\"t-xxxx\\"\\n }\\n ]\\n },\\n \\"TaskId\\": \\"t-1ljew7on6ay0j****\\"\\n}","type":"json"}]', + ], + 'UpgradeAndroidInstanceGroup' => [ + 'methods' => ['post', 'get'], + 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], - 'operationType' => 'write', + 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ - 'operationType' => 'update', - 'riskType' => 'none', - 'chargeType' => 'free', - 'abilityTreeNodes' => [ - 'FEATUREcloudphoneLYX9LP', - ], - 'tenantRelevance' => 'publicInformation', + 'operationType' => 'none', + 'riskType' => 'high', + 'chargeType' => 'paid', + 'abilityTreeNodes' => ['FEATUREcloudphoneMGJBSL'], ], 'parameters' => [ [ - 'name' => 'IpBlacklist', + 'name' => 'InstanceGroupId', 'in' => 'query', - 'style' => 'repeatList', - 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => '"12.34.56.78"、"172.16.0.0/16"、""', - 'maxLength' => 20, - 'minLength' => 1, - ], - 'required' => false, - 'maxItems' => 200, - ], + 'schema' => ['description' => 'The ID of the instance group.', 'type' => 'string', 'required' => false, 'example' => 'ag-asguicdjh****', 'title' => ''], ], [ - 'name' => 'DomainBlacklist', + 'name' => 'IncreaseNumberOfInstance', + 'in' => 'query', + 'schema' => ['description' => 'The number of instances to add to the instance group.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], + ], + [ + 'name' => 'AutoPay', 'in' => 'query', - 'style' => 'repeatList', 'schema' => [ - 'description' => '', - 'type' => 'array', - 'items' => [ - 'description' => '', - 'type' => 'string', - 'required' => false, - 'example' => 'www.malicious.net、malicious.com、""', - 'maxLength' => 100, - 'minLength' => 1, - ], + 'description' => 'Specifies whether to enable automatic payment.', + 'enumValueTitles' => ['true' => 'Enables automatic payment. Make sure that your account has a sufficient balance.', 'false' => 'Disables automatic payment. You must then pay for the order manually.'], + 'type' => 'boolean', 'required' => false, - 'maxItems' => 200, + 'example' => 'true', + 'title' => '', ], ], + [ + 'name' => 'PromotionId', + 'in' => 'query', + 'schema' => ['description' => 'The promotion ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], + ], + [ + 'name' => 'PaidCallBackUrl', + 'in' => 'query', + 'schema' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], + ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', - 'description' => '', + 'description' => 'The response object.', 'type' => 'object', 'properties' => [ - 'RequestId' => [ - 'title' => 'Id of the request', - 'description' => '', - 'type' => 'string', - 'example' => '2B9E6946-0E2A-5D2B-B275-361DF81F****', - ], + 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => '310A783E-CC46-5452-A8A3-71AE5DB59****'], + 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '223684716098****', 'title' => ''], + 'InstanceIds' => ['description' => 'The IDs of instances created during the scale-out.', 'type' => 'string', 'example' => '[\'acp-2iowaqjyw9nrd****\', \'acp-2iowaqjyw9nrd****\']', 'title' => ''], ], + 'example' => '', ], ], ], - 'staticInfo' => [ - 'returnType' => 'synchronous', + 'staticInfo' => ['returnType' => 'synchronous'], + 'title' => 'UpgradeAndroidInstanceGroup', + 'summary' => 'Upgrades an instance group. This operation only supports scaling out an instance group, which increases the number of instances.', + 'changeSet' => [ + ['createdAt' => '2025-09-05T06:13:13.000Z', 'description' => 'Request parameters changed'], + ['createdAt' => '2024-07-24T09:34:56.000Z', 'description' => 'Response parameters changed'], ], - 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2B9E6946-0E2A-5D2B-B275-361DF81F****\\"\\n}","type":"json"}]', + 'flowControl' => [ + 'flowControlList' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"310A783E-CC46-5452-A8A3-71AE5DB59****\\",\\n \\"OrderId\\": \\"223684716098****\\",\\n \\"InstanceIds\\": \\"[\'acp-2iowaqjyw9nrd****\', \'acp-2iowaqjyw9nrd****\']\\"\\n}","type":"json"}]', ], ], 'endpoints' => [ + ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'eds-aic.ap-southeast-1.aliyuncs.com', 'endpoint' => 'eds-aic.ap-southeast-1.aliyuncs.com', 'vpc' => 'eds-aic-vpc.ap-southeast-1.aliyuncs.com'], + ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'eds-aic.cn-shanghai.aliyuncs.com', 'endpoint' => 'eds-aic.cn-shanghai.aliyuncs.com', 'vpc' => 'eds-aic-vpc.cn-shanghai.aliyuncs.com'], + ], + 'errorCodes' => [], + 'changeSet' => [ + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CheckResourceStock'], + ], + 'createdAt' => '2024-11-18T16:14:39.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateApp'], + ], + 'createdAt' => '2024-11-15T02:07:30.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreatePolicyGroup'], + ['description' => 'Response parameters changed', 'api' => 'ListPolicyGroups'], + ['description' => 'Request parameters changed', 'api' => 'ModifyPolicyGroup'], + ], + 'createdAt' => '2024-11-15T01:35:18.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'BackupFile'], + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'DescribeBackupFiles'], + ['description' => 'Response parameters changed', 'api' => 'DescribeTasks'], + ], + 'createdAt' => '2024-11-14T11:00:04.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'DescribeRegions'], + ], + 'createdAt' => '2024-11-07T12:32:15.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'RunCommand'], + ], + 'createdAt' => '2024-11-04T01:39:31.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateAndroidInstanceGroup'], + ], + 'createdAt' => '2024-10-24T13:02:25.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'BackupFile'], + ['description' => 'Response parameters changed', 'api' => 'RecoveryFile'], + ], + 'createdAt' => '2024-10-16T09:06:15.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeApps'], + ], + 'createdAt' => '2024-10-16T06:49:37.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'DescribeSpec'], + ], + 'createdAt' => '2024-09-26T12:10:33.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'DescribeAndroidInstances'], + ], + 'createdAt' => '2024-09-26T12:10:16.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreatePolicyGroup'], + ['description' => 'Response parameters changed', 'api' => 'ListPolicyGroups'], + ['description' => 'Request parameters changed', 'api' => 'ModifyPolicyGroup'], + ], + 'createdAt' => '2024-09-26T11:33:14.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'RunCommand'], + ], + 'createdAt' => '2024-09-14T02:07:33.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'FetchFile'], + ['description' => 'Response parameters changed', 'api' => 'SendFile'], + ], + 'createdAt' => '2024-09-13T09:20:30.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CheckResourceStock'], + ], + 'createdAt' => '2024-09-05T14:17:20.000Z', + 'description' => '', + ], [ - 'regionId' => 'ap-southeast-1', - 'endpoint' => 'eds-aic.ap-southeast-1.aliyuncs.com', + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeTasks'], + ], + 'createdAt' => '2024-08-21T08:15:16.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreatePolicyGroup'], + ['description' => 'Response parameters changed', 'api' => 'ListPolicyGroups'], + ['description' => 'Request parameters changed', 'api' => 'ModifyPolicyGroup'], + ], + 'createdAt' => '2024-08-20T03:54:27.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'CreateAndroidInstanceGroup'], + ['description' => 'Request parameters changed', 'api' => 'DescribeAndroidInstances'], + ], + 'createdAt' => '2024-08-19T09:50:14.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreatePolicyGroup'], + ['description' => 'Response parameters changed', 'api' => 'ListPolicyGroups'], + ['description' => 'Request parameters changed', 'api' => 'ModifyPolicyGroup'], + ], + 'createdAt' => '2024-08-19T09:42:54.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'CreateCustomImage'], + ], + 'createdAt' => '2024-08-19T09:36:31.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'InstallApp'], + ], + 'createdAt' => '2024-08-19T09:35:55.000Z', + 'description' => '', ], [ - 'regionId' => 'cn-shanghai', - 'endpoint' => 'eds-aic.cn-shanghai.aliyuncs.com', + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'RecoveryFile'], + ], + 'createdAt' => '2024-08-12T07:40:03.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CheckResourceStock'], + ], + 'createdAt' => '2024-07-29T15:02:53.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Response parameters changed', 'api' => 'DescribeImageList'], + ], + 'createdAt' => '2024-07-24T09:35:56.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateAndroidInstanceGroup'], + ['description' => 'Response parameters changed', 'api' => 'DescribeAndroidInstanceGroups'], + ['description' => 'Response parameters changed', 'api' => 'DescribeAndroidInstances'], + ['description' => 'Response parameters changed', 'api' => 'UpgradeAndroidInstanceGroup'], + ], + 'createdAt' => '2024-07-24T09:35:10.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateAndroidInstanceGroup'], + ['description' => 'Response parameters changed', 'api' => 'DescribeAndroidInstanceGroups'], + ['description' => 'Request parameters changed', 'api' => 'RebootAndroidInstancesInGroup'], + ['description' => 'Request parameters changed', 'api' => 'StopAndroidInstance'], + ], + 'createdAt' => '2024-07-02T02:05:46.000Z', + 'description' => '', + ], + [ + 'apis' => [ + ['description' => 'Request parameters changed', 'api' => 'CreateApp'], + ['description' => 'Request parameters changed, Response parameters changed', 'api' => 'DescribeApps'], + ], + 'createdAt' => '2024-06-26T12:41:16.000Z', + 'description' => '', + ], + ], + 'flowControl' => [ + 'flowControlList' => [ + ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'], ], ], ]; -- cgit v1.2.3