'1.0', 'info' => ['style' => 'RPC', 'product' => 'Ecs', 'version' => '2014-05-26'], 'directories' => [ [ 'children' => ['DescribeRegions', 'DescribeZones', 'DescribeAvailableResource', 'DescribeAccountAttributes', 'DescribeResourcesModification', 'DescribeRecommendInstanceType'], 'type' => 'directory', 'title' => 'Region', ], [ 'children' => ['DescribePrice', 'DescribeRenewalPrice', 'DescribeInstanceModificationPrice'], 'type' => 'directory', 'title' => 'Pricing Inquiry', ], [ 'children' => [ 'RunInstances', 'CreateInstance', 'StartInstance', 'StartInstances', 'StopInstance', 'StopInstances', 'RebootInstance', 'RebootInstances', 'DeleteInstance', 'DeleteInstances', 'DescribeInstanceStatus', 'DescribeInstances', 'DescribeInstanceTypeFamilies', 'DescribeInstanceTypes', 'DescribeInstanceAttribute', 'ModifyInstanceAttribute', 'ModifyInstanceClockOptions', 'ModifyInstanceNetworkOptions', 'ModifyInstanceChargeType', 'ModifyInstanceSpec', 'ModifyPrepayInstanceSpec', 'ModifyInstanceAutoReleaseTime', 'AttachInstanceRamRole', 'DescribeInstanceRamRole', 'DetachInstanceRamRole', 'DescribeInstanceVncUrl', 'ModifyInstanceVncPasswd', 'ModifyInstanceMetadataOptions', 'DescribeUserData', 'RenewInstance', 'DescribeInstanceAutoRenewAttribute', 'ModifyInstanceAutoRenewAttribute', 'ReActivateInstances', 'DescribeSpotPriceHistory', 'DescribeSpotAdvice', ], 'type' => 'directory', 'title' => 'Instance', ], [ 'children' => [ 'CreateImage', 'DescribeImages', 'ModifyImageAttribute', 'DeleteImage', 'DescribeImageFromFamily', 'DescribeImageSupportInstanceTypes', 'DescribeImageSharePermission', 'ModifyImageSharePermission', 'ModifyImageShareGroupPermission', 'ImportImage', 'ExportImage', 'CopyImage', 'CancelCopyImage', 'CreateImageComponent', 'DescribeImageComponents', 'DeleteImageComponent', 'CreateImagePipeline', 'DescribeImagePipelines', 'DeleteImagePipeline', 'StartImagePipelineExecution', 'DescribeImagePipelineExecutions', 'CancelImagePipelineExecution', ], 'type' => 'directory', 'title' => 'Image', ], [ 'children' => [ 'CreateDisk', 'DescribeDisks', 'AttachDisk', 'DetachDisk', 'ResizeDisk', 'ModifyDiskAttribute', 'ModifyDiskChargeType', 'ModifyDiskSpec', 'ReplaceSystemDisk', 'ResetDisk', 'ResetDisks', 'ReInitDisk', 'ModifyDiskDeployment', 'DeleteDisk', 'CloneDisks', 'EnableDiskEncryptionByDefault', 'DescribeDiskEncryptionByDefaultStatus', 'DescribeDiskDefaultKMSKeyId', 'ModifyDiskDefaultKMSKeyId', 'ResetDiskDefaultKMSKeyId', 'DisableDiskEncryptionByDefault', ], 'type' => 'directory', 'title' => 'Block Storage', ], [ 'children' => [ 'OpenSnapshotService', 'CreateSnapshot', 'DescribeSnapshots', 'DescribeSnapshotsUsage', 'ModifySnapshotAttribute', 'ModifySnapshotCategory', 'CopySnapshot', 'DeleteSnapshot', 'DescribeSnapshotLinks', 'CreateSnapshotGroup', 'DescribeSnapshotGroups', 'ModifySnapshotGroup', 'DeleteSnapshotGroup', 'CreateAutoSnapshotPolicy', 'DescribeAutoSnapshotPolicyEx', 'DescribeAutoSnapshotPolicyAssociations', 'ModifyAutoSnapshotPolicyEx', 'ApplyAutoSnapshotPolicy', 'CancelAutoSnapshotPolicy', 'DeleteAutoSnapshotPolicy', 'DescribeSnapshotPackage', 'LockSnapshot', 'DescribeLockedSnapshots', 'UnlockSnapshot', ], 'type' => 'directory', 'title' => 'Snapshot', ], [ 'children' => ['DescribeBandwidthLimitation', 'ModifyInstanceNetworkSpec', 'AllocatePublicIpAddress', 'ConvertNatPublicIpToEip', 'ModifyInstanceVpcAttribute', 'DescribeClassicLinkInstances', 'AttachClassicLinkVpc', 'DetachClassicLinkVpc'], 'type' => 'directory', 'title' => 'Network', ], [ 'children' => ['CreateNetworkInterface', 'DescribeNetworkInterfaces', 'DescribeNetworkInterfaceAttribute', 'ModifyNetworkInterfaceAttribute', 'DeleteNetworkInterface', 'AttachNetworkInterface', 'DetachNetworkInterface', 'AssignPrivateIpAddresses', 'UnassignPrivateIpAddresses', 'AssignIpv6Addresses', 'UnassignIpv6Addresses', 'CreateNetworkInterfacePermission', 'DescribeNetworkInterfacePermissions'], 'type' => 'directory', 'title' => 'Elastic Network Interface (ENI)', ], [ 'children' => ['CreatePrefixList', 'DescribePrefixLists', 'DescribePrefixListAttributes', 'DescribePrefixListAssociations', 'ModifyPrefixList', 'DeletePrefixList'], 'type' => 'directory', 'title' => 'Prefix List', ], [ 'children' => ['CreatePortRangeList', 'DescribePortRangeLists', 'DescribePortRangeListEntries', 'DescribePortRangeListAssociations', 'ModifyPortRangeList', 'DeletePortRangeList'], 'type' => 'directory', 'title' => 'Port List', ], [ 'children' => ['CreateSecurityGroup', 'DescribeSecurityGroups', 'DescribeSecurityGroupAttribute', 'ModifySecurityGroupPolicy', 'ModifySecurityGroupAttribute', 'DeleteSecurityGroup', 'AuthorizeSecurityGroup', 'ModifySecurityGroupRule', 'RevokeSecurityGroup', 'AuthorizeSecurityGroupEgress', 'ModifySecurityGroupEgressRule', 'RevokeSecurityGroupEgress', 'DescribeSecurityGroupReferences', 'JoinSecurityGroup', 'LeaveSecurityGroup'], 'type' => 'directory', 'title' => 'Security Group', ], [ 'children' => ['CreateKeyPair', 'ImportKeyPair', 'DescribeKeyPairs', 'AttachKeyPair', 'DetachKeyPair', 'DeleteKeyPairs'], 'type' => 'directory', 'title' => 'Key Pair', ], [ 'children' => ['CreateLaunchTemplate', 'DescribeLaunchTemplates', 'DeleteLaunchTemplate', 'CreateLaunchTemplateVersion', 'DescribeLaunchTemplateVersions', 'ModifyLaunchTemplateDefaultVersion', 'DeleteLaunchTemplateVersion'], 'type' => 'directory', 'title' => 'Launch Template', ], [ 'children' => ['CreateAutoProvisioningGroup', 'DescribeAutoProvisioningGroups', 'DescribeAutoProvisioningGroupInstances', 'ModifyAutoProvisioningGroup', 'DescribeAutoProvisioningGroupHistory', 'DeleteAutoProvisioningGroup'], 'type' => 'directory', 'title' => 'Auto Provisioning Group', ], [ 'children' => ['CreateDeploymentSet', 'DescribeDeploymentSetSupportedInstanceTypeFamily', 'DescribeDeploymentSets', 'ModifyInstanceDeployment', 'ModifyDeploymentSetAttribute', 'DeleteDeploymentSet'], 'type' => 'directory', 'title' => 'Deployment Set', ], [ 'children' => ['CreateElasticityAssurance', 'DescribeElasticityAssurances', 'DescribeElasticityAssuranceInstances', 'ModifyElasticityAssurance', 'RenewElasticityAssurances', 'ModifyElasticityAssuranceAutoRenewAttribute', 'DescribeElasticityAssuranceAutoRenewAttribute', 'PurchaseElasticityAssurance', 'CreateCapacityReservation', 'DescribeCapacityReservations', 'DescribeCapacityReservationInstances', 'ModifyCapacityReservation', 'DescribeInstanceAttachmentAttributes', 'ModifyInstanceAttachmentAttributes', 'ReleaseCapacityReservation'], 'type' => 'directory', 'title' => 'Resource Assurance', ], [ 'children' => ['PurchaseReservedInstancesOffering', 'DescribeReservedInstances', 'ModifyReservedInstances', 'ModifyReservedInstanceAttribute', 'RenewReservedInstances', 'DescribeReservedInstanceAutoRenewAttribute', 'ModifyReservedInstanceAutoRenewAttribute'], 'type' => 'directory', 'title' => 'Reserved Instance', ], [ 'children' => ['PurchaseStorageCapacityUnit', 'DescribeStorageCapacityUnits', 'ModifyStorageCapacityUnitAttribute'], 'type' => 'directory', 'title' => 'Storage Capacity Unit (SCU)', ], [ 'children' => [ 'RunCommand', 'CreateCommand', 'InvokeCommand', 'DescribeInvocations', 'DescribeInvocationResults', 'ModifyInvocationAttribute', 'StopInvocation', 'DescribeCommands', 'ModifyCommand', 'DeleteCommand', 'SendFile', 'DescribeSendFileResults', 'DescribeCloudAssistantStatus', 'InstallCloudAssistant', 'StartTerminalSession', 'EndTerminalSession', 'DescribeTerminalSessions', 'ModifyCloudAssistantSettings', 'DescribeCloudAssistantSettings', 'CreateActivation', 'DescribeActivations', 'DisableActivation', 'DeleteActivation', 'DescribeManagedInstances', 'ModifyManagedInstance', 'DeregisterManagedInstance', 'ListPluginStatus', ], 'type' => 'directory', 'title' => 'Cloud Assistant', ], [ 'children' => ['DescribeInstancesFullStatus', 'DescribeDisksFullStatus', 'DescribeInstanceHistoryEvents', 'CreateSimulatedSystemEvents', 'CancelSimulatedSystemEvents', 'AcceptInquiredSystemEvent'], 'type' => 'directory', 'title' => 'System Event', ], [ 'children' => ['DescribeDiagnosticMetrics', 'CreateDiagnosticMetricSet', 'DescribeDiagnosticMetricSets', 'ModifyDiagnosticMetricSet', 'DeleteDiagnosticMetricSets', 'CreateDiagnosticReport', 'DescribeDiagnosticReports', 'DescribeDiagnosticReportAttributes', 'DeleteDiagnosticReports'], 'type' => 'directory', 'title' => 'Resource Diagnosis', ], [ 'children' => ['GetInstanceScreenshot', 'GetInstanceConsoleOutput', 'DescribeDiskMonitorData', 'DescribeInstanceMonitorData', 'DescribeEniMonitorData', 'DescribeSnapshotMonitorData', 'DescribeInstanceMaintenanceAttributes', 'ModifyInstanceMaintenanceAttributes', 'RedeployInstance', 'ReportInstancesStatus'], 'type' => 'directory', 'title' => 'O&M and Monitoring', ], [ 'children' => ['TagResources', 'ListTagResources', 'UntagResources', 'JoinResourceGroup'], 'type' => 'directory', 'title' => 'Labels and Resource Groups', ], [ 'children' => ['AllocateDedicatedHosts', 'DescribeDedicatedHosts', 'DescribeDedicatedHostTypes', 'ModifyDedicatedHostAttribute', 'ModifyDedicatedHostsChargeType', 'DescribeDedicatedHostAutoRenew', 'ModifyDedicatedHostAutoRenewAttribute', 'RenewDedicatedHosts', 'ModifyDedicatedHostAutoReleaseTime', 'RedeployDedicatedHost', 'ReleaseDedicatedHost', 'CreateDedicatedHostCluster', 'ModifyDedicatedHostClusterAttribute', 'DescribeDedicatedHostClusters', 'DeleteDedicatedHostCluster'], 'type' => 'directory', 'title' => 'Dedicated Host', ], [ 'children' => ['CreateHpcCluster', 'DescribeHpcClusters', 'ModifyHpcClusterAttribute', 'DeleteHpcCluster'], 'type' => 'directory', 'title' => 'High-Performance Cluster', ], [ 'children' => ['DescribeTasks', 'DescribeTaskAttribute', 'CancelTask'], 'type' => 'directory', 'title' => 'Job', ], [ 'children' => [ 'DescribeUserBusinessBehavior', 'ModifyUserBusinessBehavior', 'DescribeLimitation', 'DescribeClusters', 'DeleteNetworkInterfacePermission', 'DeleteBandwidthPackage', 'ModifyBandwidthPackageSpec', 'DescribeBandwidthPackages', 'CreateVSwitch', 'DeleteVSwitch', 'ModifyVSwitchAttribute', 'DescribeVSwitches', 'CreatePhysicalConnection', 'DeletePhysicalConnection', 'ModifyPhysicalConnectionAttribute', 'EnablePhysicalConnection', 'DescribePhysicalConnections', 'CancelPhysicalConnection', 'TerminatePhysicalConnection', 'CreateVpc', 'DeleteVpc', 'DescribeVpcs', 'ModifyVpcAttribute', 'RemoveBandwidthPackageIps', 'CreateHaVip', 'DeleteHaVip', 'AssociateHaVip', 'ModifyHaVipAttribute', 'DescribeHaVips', 'UnassociateHaVip', 'CreateVirtualBorderRouter', 'DeleteVirtualBorderRouter', 'ModifyVirtualBorderRouterAttribute', 'RecoverVirtualBorderRouter', 'TerminateVirtualBorderRouter', 'DescribeVirtualBorderRouters', 'DescribeVirtualBorderRoutersForPhysicalConnection', 'CreateRouterInterface', 'DeleteRouterInterface', 'ActivateRouterInterface', 'DeactivateRouterInterface', 'ModifyRouterInterfaceAttribute', 'ModifyRouterInterfaceSpec', 'ModifyVRouterAttribute', 'DescribeRouterInterfaces', 'UnassociateEipAddress', 'AllocateEipAddress', 'ModifyEipAddressAttribute', 'ReleaseEipAddress', 'AssociateEipAddress', 'DescribeEipAddresses', 'DescribeEipMonitorData', 'CreateNatGateway', 'DeleteNatGateway', 'DescribeNatGateways', 'DescribeNewProjectEipMonitorData', 'DeleteRouteEntry', 'DeleteForwardEntry', 'CreateForwardEntry', 'AddBandwidthPackageIps', 'DescribeVRouters', 'CreateRouteEntry', 'DescribeForwardTableEntries', 'ModifyForwardEntry', 'DescribeAccessPoints', 'DescribeRouteTables', 'ConnectRouterInterface', 'ExportSnapshot', 'ReleasePublicIpAddress', 'AddTags', 'DescribeResourceByTags', 'DescribeTags', 'RemoveTags', ], 'type' => 'directory', 'title' => 'Deprecated', ], [ 'children' => ['EnableNetworkInterfaceQoS', 'DisableNetworkInterfaceQoS', 'DescribePlanMaintenanceWindows', 'CreatePlanMaintenanceWindow', 'ModifyPlanMaintenanceWindow', 'DeletePlanMaintenanceWindow'], 'type' => 'directory', 'title' => 'Other', ], [ 'children' => ['CreateVsc', 'DeleteVsc', 'DescribeVscs', 'ModifySystemEventAttribute'], 'title' => 'Others', 'type' => 'directory', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'AcceptInquiredSystemEvent' => [ 'summary' => 'Accepts and authorizes the execution of a system event operation. For system events in the Inquiring state, this operation accepts the default action of the system event and authorizes the system to execute the default action.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29240', 'abilityTreeNodes' => ['FEATUREecsBUZW7T'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the system event. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'EventId', 'in' => 'query', 'schema' => ['description' => 'The system event ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'e-2zeielxl1qzq8slb****', 'title' => ''], ], [ 'name' => 'Choice', 'in' => 'query', 'schema' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4DD56CA6-6D75-4D33-BE34-E4A44EBE1C3D', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'Current instance status does not support this operation.', 'description' => 'The instance is in a state that does not support the current operation.'], ], 403 => [ ['errorCode' => 'OperationConflict', 'errorMessage' => '%s', 'description' => 'This operation conflicts with another operation in progress. Try again later.'], ['errorCode' => 'OperationFail.DiskCategoryNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFail.DiskStatusNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFail.InstanceStatusNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationDenied.AcceptNotSupported', 'errorMessage' => 'Accept is not supported on current event type.', 'description' => 'The current event type does not support this response action.'], ['errorCode' => 'SwitchToOffline.OnlineIsolateFail', 'errorMessage' => 'Failed to online isolate disk while offline isolation succeeded.', 'description' => 'Online isolation failed and has been converted to offline isolation.'], ['errorCode' => 'SwitchToOffline.OnlineReinitFail', 'errorMessage' => 'Failed to online reinitialize disk while offline reinitialization succeeded.', 'description' => 'Online repair failed and has been converted to offline repair.'], ['errorCode' => 'Forbidden.RAM', 'errorMessage' => 'User not authorized to operate on the specified resource, or this API does not support RAM.', 'description' => 'You are not authorized to manage this resource, or this API operation does not support RAM roles.'], ['errorCode' => 'OperationFail.AcceptRecoverFail', 'errorMessage' => 'Failed to accept system event due to resource constraints.', 'description' => 'The response to the event failed due to insufficient underlying resources.'], ], [ ['errorCode' => 'InvalidEventId.NoInquiringEventFound', 'errorMessage' => '%s', 'description' => 'The specified EventId parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4DD56CA6-6D75-4D33-BE34-E4A44EBE1C3D\\"\\n}","type":"json"}]', 'title' => 'Accept and authorize a system event operation', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-03T07:15:27.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-07T09:01:36.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AcceptInquiredSystemEvent'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:AcceptInquiredSystemEvent', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ActivateRouterInterface' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口,标记不支持', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouterInterfaceId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorrectStatus', 'errorMessage' => 'RouterInterface can be operated by this action only when it\'s status is Inactive.', 'description' => ''], ['errorCode' => 'Forbidden.FinancialLocked', 'errorMessage' => 'This RouterInterface is financiel locked because of bills outstanding.', 'description' => ''], ['errorCode' => 'Forbbiden', 'errorMessage' => 'The Router instance owener error', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidRouterInterfaceId.NotFound', 'errorMessage' => 'The specified RouterInterfaceId does not exist in our records.', 'description' => 'The specified router interface does not exist. Check whether the router interface ID is valid.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::ActivateRouterInterface'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ActivateRouterInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:ActivateRouterInterface', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouterInterface', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routerinterface/{#RouterInterfaceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'ActivateRouterInterface', 'summary' => 'Activates a router interface.', ], 'AddBandwidthPackageIps' => [ 'summary' => 'AddBandwidthPackageIps.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'BandwidthPackageId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'IpCount', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidIpCount.ValueNotSupported', 'errorMessage' => 'The specified value of IpCount not supported.', 'description' => 'The specified IpCount parameter is invalid.'], ['errorCode' => 'QuotaExceeded.BandwidthPackageIps', 'errorMessage' => 'The specified ipCount exceeded quota.', 'description' => 'The specified number of IP addresses exceeds the upper limit.'], ['errorCode' => 'AllocateIpFailed', 'errorMessage' => 'Alloc bandwidthPackage ips failed, maybe no available ip.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidBandwidthPackageId.NotFound', 'errorMessage' => 'The specified BandwidthPackageId does not exist in our records.', 'description' => ''], ], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AddBandwidthPackageIps'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:AddBandwidthPackageIps', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'BandwidthPackage', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:bandwidthpackage/{#BandwidthPackageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'AddBandwidthPackageIps', ], 'AddTags' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28780', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- instance: ECS instance'."\n" .'- disk: cloud disk'."\n" .'- snapshot: snapshot'."\n" .'- image: image'."\n" .'- securitygroup: security group'."\n" .'- volume: storage volume'."\n" .'- eni: Elastic Network Interface (ENI)'."\n" .'- ddh: dedicated host'."\n" .'- keypair: SSH key pair'."\n" .'- launchtemplate: launch template'."\n" .'- reservedinstance: reserved instance'."\n" .'- snapshotpolicy: automatic snapshot policy'."\n" ."\n" .'All valid values are in lowercase.', 'type' => 'string', 'required' => true, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource to which you want to add tags. For example, when ResourceType is set to instance, ResourceId is the instance ID.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1gtjxuuvwj17zr****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the resource.'."\n" ."\n" .'> To improve compatibility, use the Tag.N.Key parameter.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], 'Key' => ['description' => 'The tag key of the resource. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with aliyun or acs:. The tag key cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the resource. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with aliyun or acs:. The tag value cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the resource.'."\n" ."\n" .'> To improve compatibility, use the Tag.N.Value parameter.', 'type' => 'string', 'required' => false, 'example' => 'test', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => true, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', 'description' => ''], ['errorCode' => 'InvalidTag.Mismatch', 'errorMessage' => 'The specified Tag.n.Key and Tag.n.Value are not match.', 'description' => 'The specified Tag.N.Key and Tag.N.Value parameters do not correspond to each other.'], ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ], 403 => [ ['errorCode' => 'InvalidResourceId.NotSupported', 'errorMessage' => 'The specified ResourceId does not support tagging.', 'description' => ''], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'TagKey.Duplication', 'errorMessage' => 'The TagKey has duplication with others, case-insensitive.', 'description' => 'Duplicate values exist in the specified Tag.N.Key parameter. The value of this parameter is not case sensitive. Check whether duplicate parameter values are passed in.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceId is not found in our records.', 'description' => 'The specified resource does not exist. Check whether the resource ID is correct.'], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => 'The specified resource type does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Ecs::2014-05-26::TagResources'], ], 'title' => 'Add or overwrite one or more tags on ECS resources', 'summary' => 'Adds or overwrites one or more tags on various Elastic Compute Service (ECS) resources. You can add tags to instances, cloud disks, snapshots, images, security groups, and other resources for easier management.', 'description' => 'When you invoke this operation, take note of the following items:'."\n" ."\n" .'- You can add up to 20 tags to each Elastic Compute Service (ECS) resource.'."\n" .'- The tag key (Tag.N.Key) and tag value (Tag.N.Value) must be specified as a key-value pair.'."\n" .'- If the tag key (Tag.N.Key) already exists on the specified resource, the original tag value is automatically overwritten with the new tag value (Tag.N.Value).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AddTags'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:AddTags', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'AllocateDedicatedHosts' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '28781', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the dedicated host. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the dedicated host.', 'type' => 'array', 'items' => [ 'description' => 'The tag to add to the dedicated host.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N to add to the dedicated host. Valid values of N: 1 to 20.'."\n" ."\n" .'The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot contain `http://` or `https://`. The tag key cannot start with acs: or aliyun.', 'type' => 'string', 'required' => false, 'example' => 'Environment', 'title' => ''], 'Value' => ['description' => 'The value of tag N to add to the dedicated host. Valid values of N: 1 to 20.'."\n" ."\n" .'The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'Production', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which to assign the dedicated host.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4ph***', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the zone in which to create the dedicated host.'."\n" ."\n" .'This parameter is empty by default. If you do not specify a zone, the system selects a zone.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-f', 'title' => ''], ], [ 'name' => 'DedicatedHostName', 'in' => 'query', 'schema' => ['description' => 'The name of the dedicated host. The name must be 2 to 128 characters in length and can contain letters and digits. The name can contain colons (:), underscores (\\_), periods (.), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'myDDH', 'title' => ''], ], [ 'name' => 'DedicatedHostClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the dedicated host cluster in which to create the dedicated host.', 'type' => 'string', 'required' => false, 'example' => 'dc-bp12wlf6am0vz9v2****', 'title' => ''], ], [ 'name' => 'DedicatedHostType', 'in' => 'query', 'schema' => ['description' => 'The dedicated host type. You can call the [DescribeDedicatedHostTypes](~~134240~~) operation to query the most recent list of dedicated host types.', 'type' => 'string', 'required' => true, 'example' => 'ddh.c5', 'title' => ''], ], [ 'name' => 'ActionOnMaintenance', 'in' => 'query', 'schema' => ['description' => 'The policy for migrating the instances deployed on the dedicated host when the dedicated host fails or needs to be repaired online. Valid values:'."\n" ."\n" .'- Migrate: The instances are migrated to another physical machine and then restarted.'."\n" ."\n" .' If cloud disks are attached to the dedicated host, the default value is Migrate.'."\n" ."\n" .'- Stop: The instances are stopped. If the dedicated host cannot be repaired, the instances are migrated to another physical machine and then restarted.'."\n" ."\n" .' If local disks are attached to the dedicated host, the default value is Stop.', 'type' => 'string', 'required' => false, 'example' => 'Migrate', 'default' => 'Migrate', 'title' => ''], ], [ 'name' => 'NetworkAttributes.SlbUdpTimeout', 'in' => 'query', 'schema' => ['description' => 'The timeout period for a UDP session between a Server Load Balancer (SLB) instance and the dedicated host. Unit: seconds. Valid values: 15 to 310.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60', 'title' => ''], ], [ 'name' => 'NetworkAttributes.UdpTimeout', 'in' => 'query', 'schema' => ['description' => 'The timeout period for a UDP session between a user and an Alibaba Cloud service on the dedicated host. Unit: seconds. Valid values: 15 to 310.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the dedicated host. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'This-is-my-DDH', 'title' => ''], ], [ 'name' => 'AutoPlacement', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to add the dedicated host to the resource pool for automatic deployment. If you create an ECS instance on a dedicated host without specifying the **DedicatedHostId** parameter, Alibaba Cloud selects a dedicated host from the resource pool to host the instance. For more information, see [Automatic deployment](~~118938~~). Valid values:'."\n" ."\n" .'- on: adds the dedicated host to the resource pool for automatic deployment.'."\n" ."\n" .'- off: does not add the dedicated host to the resource pool for automatic deployment.'."\n" ."\n" .'Default value: on.'."\n" ."\n" .'> If you do not want to add the dedicated host to the resource pool for automatic deployment, set this parameter to off.', 'type' => 'string', 'required' => false, 'example' => 'off', 'title' => ''], ], [ 'name' => 'CpuOverCommitRatio', 'in' => 'query', 'schema' => ['description' => 'The CPU overcommit ratio. You can configure CPU overcommit ratios only for the following dedicated host types: g6s, c6s, and r6s. Valid values: 1 to 5.'."\n" ."\n" .'The CPU overcommit ratio affects the number of available vCPUs on a dedicated host. You can use the following formula to calculate the number of available vCPUs on a dedicated host: Number of available vCPUs = Number of physical CPU cores × 2 × CPU overcommit ratio. For example, the number of physical CPU cores on each g6s dedicated host is 52. If you set the CPU overcommit ratio of a g6s dedicated host to 4, the number of available vCPUs on the dedicated host is 416. For scenarios that have minimal requirements on CPU stability or where CPU load is not heavy, such as development and test environments, you can increase the number of available vCPUs on a dedicated host by increasing the CPU overcommit ratio. This way, you can deploy more ECS instances of the same specifications on the dedicated host and reduce the unit deployment cost.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'MinQuantity', 'in' => 'query', 'schema' => ['description' => 'The minimum number of dedicated hosts to create. Valid values: 1 to 100.'."\n" ."\n" .'> If the number of available dedicated hosts is less than the minimum number of dedicated hosts to create, the dedicated hosts fail to be created.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the dedicated host. Valid values:'."\n" ."\n" .'- PrePaid: subscription. If you set this parameter to PrePaid, make sure that you have sufficient account balance or credits. Otherwise, `InvalidPayMethod` is returned.'."\n" ."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .'Default value: PostPaid.', 'type' => 'string', 'required' => false, 'example' => 'PrePaid', 'title' => ''], ], [ 'name' => 'Quantity', 'in' => 'query', 'schema' => ['description' => 'The number of dedicated hosts that you want to create. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The subscription duration of the dedicated host. The `Period` parameter is required and takes effect only when the `ChargeType` parameter is set to `PrePaid`. Valid values:'."\n" ."\n" .'- Valid values when the PeriodUnit parameter is set to Month: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.'."\n" ."\n" .'- Valid values when the PeriodUnit parameter is set to Year: 1, 2, 3, 4, and 5.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '6', 'title' => ''], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => ['description' => 'The unit of the subscription duration of the dedicated host. Valid values:'."\n" ."\n" .'- Month'."\n" ."\n" .'- Year'."\n" ."\n" .'Default value: Month.', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to automatically renew the subscription dedicated host.'."\n" ."\n" .'> The **AutoRenew** parameter takes effect only when the **ChargeType** parameter is set to PrePaid.'."\n" ."\n" .'Default value: false', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'AutoRenewPeriod', 'in' => 'query', 'schema' => ['description' => 'The auto-renewal duration of the dedicated host. The **AutoRenewPeriod** parameter takes effect and is required only when the **AutoRenew** parameter is set to true. Valid values:'."\n" ."\n" .'Valid values when PeriodUnit is set to Month: 1, 2, 3, 6, and 12.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'AutoReleaseTime', 'in' => 'query', 'schema' => ['description' => 'The time when to automatically release the dedicated host. Specify the time in the `ISO 8601` standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" ."\n" .'>'."\n" ."\n" .'- It must be at least half an hour later than the current time.'."\n" ."\n" .'- It must be at most three years later than the current time.'."\n" ."\n" .'- If the value of seconds (ss) is not 00, it is automatically set to 00.', 'type' => 'string', 'required' => false, 'example' => '2019-08-21T12:30:24Z', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The **token** can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => 'E2A664A6-2933-4C64-88AE-5033D003****', 'title' => ''], 'DedicatedHostIdSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHostId' => [ 'description' => 'A list of dedicated host IDs.', 'type' => 'array', 'items' => ['description' => 'The dedicated host ID.', 'type' => 'string', 'example' => 'dh-bp67acfmxazb4d****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'OrderId' => ['description' => 'The ID of the order.'."\n" ."\n" .'> This parameter has a return value only when the dedicated host is a subscription one (request parameter **ChargeType set to PrePaid**).', 'type' => 'string', 'example' => '23841229****', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidInstanceType.ValueUnauthorized', 'errorMessage' => 'The specified InstanceType is not authorized.', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified parameter "Description" is not valid.', 'description' => 'The source description can be 2 to 256 characters in length. It cannot start with http:// and https://.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified region and cluster do not match.', 'description' => 'The specified region and cluster do not correspond to each other.'], ['errorCode' => 'InvalidAutoRenewPeriod.ValueNotSupported', 'errorMessage' => 'The specified autoRenewPeriod is not valid.', 'description' => 'The specified AutoRenewPeriod parameter is invalid.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidDedicatedHostType.ValueNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Zone.NotOnSale', 'errorMessage' => '%s', 'description' => 'The requested resources are unavailable in the specified zone. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified DedicatedHostType or Zone is not available or not authorized.', 'description' => 'The specified dedicated host type or zone is unavailable or you are not authorized to manage the resources.'], ['errorCode' => 'InvalidPeriodUnit.ValueNotSupported', 'errorMessage' => 'The specified parameter PeriodUnit is not valid.', 'description' => 'The specified PeriodUnit parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'QuotaExceed.AfterpayDedicatedHost', 'errorMessage' => 'The maximum number of Pay-As-You-Go DedicatedHosts is exceeded: %s', 'description' => ''], ['errorCode' => 'InvalidChargeType.ValueNotSupported', 'errorMessage' => 'ChargeType is not valid', 'description' => 'The billing method is invalid.'], ['errorCode' => 'InvalidParameter.SlbUdpTimeout', 'errorMessage' => 'The specified value is invalid.', 'description' => 'The specified SlbUdpTimeout parameter is invalid.'], ['errorCode' => 'InvalidParameter.UdpTimeout', 'errorMessage' => 'The specified value is invalid.', 'description' => 'The specified UdpTimeout parameter is invalid.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidParameter.Quantity', 'errorMessage' => 'The specified Quantity is invalid.', 'description' => 'The specified quantity parameter (Quantity) is invalid.'], ['errorCode' => 'InvalidDedicatedHostPrice.NotFound', 'errorMessage' => 'The specified Dedicated price is not found.', 'description' => 'The specified dedicated host configuration request failed.'], ['errorCode' => 'InvalidDedicatedHostType.CpuOverCommitRatioNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCpuOverCommitRatio.ValueNotSupported', 'errorMessage' => '%s', 'description' => ''], ], 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The creation of Host to the specified Zone is not allowed.', 'description' => 'Dedicated hosts cannot be created in the specified zone.'], ['errorCode' => 'OperationDenied.NoStock', 'errorMessage' => 'The requested resource is sold out in the specified zone; try other types of resources or other regions and zones.', 'description' => 'The requested resources are insufficient.'], ['errorCode' => 'NodeControllerUnavailable', 'errorMessage' => 'The Node Controller is temporarily unavailable.', 'description' => ''], ['errorCode' => 'InvalidParameter.ResourceOwnerAccount', 'errorMessage' => 'ResourceOwnerAccount is Invalid.', 'description' => 'The specified ResourceOwnerAccount parameter is invalid.'], ['errorCode' => 'InvalidUserData.Forbidden', 'errorMessage' => 'User not authorized to input the parameter "UserData", please apply for permission "UserData"', 'description' => ''], ['errorCode' => 'Zone.NotOpen', 'errorMessage' => 'The specified zone is not granted to you to buy resources yet.', 'description' => ''], ['errorCode' => 'Zone.NotOnSale', 'errorMessage' => 'The specified zone is not available for purchase.', 'description' => 'The requested resources are unavailable in the specified zone. Try a different instance type or select a different region or zone.'], ['errorCode' => 'InvalidResourceType.NotSupported', 'errorMessage' => '%s', 'description' => 'The specified resource combination does not exist. Change to another zone or specification.'], ['errorCode' => 'InvalidDedicatedHostType.ValueNotSupported', 'errorMessage' => 'The specified DedicatedHostType does not exist or beyond the permitted range.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostType.ZoneNotSupported', 'errorMessage' => 'The specified zone does not support this dedicatedHostType.', 'description' => ''], ['errorCode' => 'InvalidUserData.Base64FormatInvalid', 'errorMessage' => 'The specified UserData is not valid', 'description' => 'An error occurred when the specified UserData parameter is encoded.'], ['errorCode' => 'InvalidParameter.NotMatch', 'errorMessage' => '%s', 'description' => 'A specified parameter is invalid. Check whether parameter conflicts exist.'], ['errorCode' => 'Account.Arrearage', 'errorMessage' => 'Your account has been in arrears.', 'description' => ''], ], [ ['errorCode' => 'OperationDenied.NoStock', 'errorMessage' => 'The requested resource is sold out in the specified zone; try other types of resources or other regions and zones.', 'description' => ''], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The ZoneId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'Another Host has been creating', 'description' => 'Another host is being created.'], ['errorCode' => 'PaymentMethodNotFound', 'errorMessage' => 'No payment method has been registered on the account.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostName.Malformed', 'errorMessage' => 'The specified parameter DedicatedHostName is not valid.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostClusterId.NotFound', 'errorMessage' => 'The specified DedicatedHostClusterId does not exist.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostClusterId.ExceedMaxSize', 'errorMessage' => 'The specified Dedicated Host Cluster exceeded max capacity.', 'description' => ''], ['errorCode' => 'InvalidParameter.ActionOnMaintenance', 'errorMessage' => 'The specified ActionOnMaintenance does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'AllocateDedicatedHosts', 'summary' => 'Creates pay-as-you-go or subscription dedicated hosts. A dedicated host is a physical server dedicated to a single tenant. You can create Elastic Compute Service (ECS) instances on a dedicated host and view the attributes of a dedicated host.', 'description' => 'Before you create a dedicated host, you can call the [DescribeAvailableResource](~~66186~~) operation to query the resources available in a specific region or zone.'."\n" ."\n" .'We recommend that you understand the billing methods of resources before you create a dedicated host. You are charged for resources used by the created dedicated host. For more information, see [Billing overview](~~68978~~).'."\n" ."\n" .'- You can create up to 100 pay-as-you-go or subscription dedicated hosts at a time.'."\n" ."\n" .'- After a dedicated host is created, you can use the returned dedicated host ID as the value of a request parameter to call the [DescribeDedicatedHosts](~~134242~~) operation to query the state of the dedicated host.'."\n" ."\n" .'- After you submit a request to create a dedicated host, an error is returned if a specific parameter is invalid or if the requested resources are insufficient. For more information about error causes, see the "Error codes" section of this topic.'."\n" ."\n" .'- After a dedicated host is created, you can call the [ModifyInstanceDeployment](~~134248~~) operation to migrate ECS instances from a shared host to the dedicated host. You can also migrate ECS instances from another dedicated host to the created dedicated host.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-03-18T08:49:04.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-24T06:51:54.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-20T05:49:30.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-09-04T11:50:29.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AllocateDedicatedHosts'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:AllocateDedicatedHosts', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'DedicatedHost', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddh/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E2A664A6-2933-4C64-88AE-5033D003****\\",\\n \\"DedicatedHostIdSets\\": {\\n \\"DedicatedHostId\\": [\\n \\"dh-bp67acfmxazb4d****\\"\\n ]\\n },\\n \\"OrderId\\": \\"23841229****\\"\\n}","type":"json"}]', ], 'AllocateEipAddress' => [ 'summary' => 'AllocateEipAddress', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28782', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Bandwidth', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ISP', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'InternetChargeType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'default' => 'PayByBandwidth', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ActivityId', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int64', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'AllocationId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EipAddress' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'QueryParameter.Illegal', 'errorMessage' => 'query parameter illegal', 'description' => ''], ['errorCode' => 'COMMODITY_NO_EXIST', 'errorMessage' => 'commodity is not exist', 'description' => ''], ['errorCode' => 'QuotaExceeded.Eip', 'errorMessage' => 'Elastic IP address quota exceeded', 'description' => 'The number of EIPs has reached the quota. If you require more EIPs, submit a ticket to request a quota increase. We recommend that you use a NAT gateway.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Specified value of "InternetChargeType" is not valid', 'description' => ''], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => 'Your account balance is insufficient. Add funds to your account and try again.'], ['errorCode' => 'ReserveIpFail', 'errorMessage' => 'Reserve eip failed.', 'description' => 'The EIP cannot be retained.'], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support.', 'description' => 'The specified region is not supported.'], ['errorCode' => 'InvalidBandwidth.Malformed', 'errorMessage' => 'The specified Bandwidth is invalid.', 'description' => ''], ['errorCode' => 'COMMODITY.INVALID_COMPONENT', 'errorMessage' => 'The instance component is invalid.', 'description' => ''], ['errorCode' => 'INSTANCE_TYPE_NOT_SUPPORT', 'errorMessage' => 'The instance type is invalid.', 'description' => ''], ['errorCode' => 'OrderFailed', 'errorMessage' => 'The Account failed to create order.', 'description' => ''], ['errorCode' => 'QuotaExceeded.LargeSpecEip', 'errorMessage' => 'Elastic IP address with large spec quota exceeded.', 'description' => ''], ['errorCode' => 'PAYFOR.CREDIT_PAY_INSUFFICIENT_BALANCE', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'SYSTEM.SALE_VALIDATE_UNEXPECTED_ERROR', 'errorMessage' => 'You have arrears and do not meet the purchase conditions.', 'description' => ''], ['errorCode' => 'InvalidComponent.EipBandwidthMax', 'errorMessage' => 'The eip_bandwidth_max component is invalid.', 'description' => ''], ['errorCode' => 'OperationFailed.RiskControl', 'errorMessage' => 'Risk control check failed.', 'description' => ''], ['errorCode' => 'OperationFailed.SaleValidate', 'errorMessage' => 'Validate sale condition with subArticle failed.', 'description' => ''], ['errorCode' => 'IllegalParam.OrderParamComponent', 'errorMessage' => 'Product order param has invalid component.', 'description' => ''], ['errorCode' => 'OperationFailed.SaleExpression', 'errorMessage' => 'Get the sales expression exception attached to the item.', 'description' => ''], ['errorCode' => 'OperationFailed.SyncOrderToSub', 'errorMessage' => 'SyncOrderToSub error.', 'description' => ''], ['errorCode' => 'OperationFailed.CompleteUserInfo', 'errorMessage' => 'Complete user info failed.', 'description' => ''], ['errorCode' => 'OperationFailed.QueryPrice', 'errorMessage' => 'Query price failed when create order.', 'description' => ''], ['errorCode' => 'OperationFailed.InvokeInnerApi', 'errorMessage' => 'Failed to invoke inner api.', 'description' => ''], ['errorCode' => 'OperationFailed.AccountMoneyInvalid', 'errorMessage' => 'Account money is invalid.', 'description' => ''], ['errorCode' => 'OperationFailed.QueryCredtiInfo', 'errorMessage' => 'Failed to query credit info.', 'description' => ''], ['errorCode' => 'OperationFailed.QueryUserLabel', 'errorMessage' => 'Failed to query user label info.', 'description' => ''], ['errorCode' => 'FrequentPurchase.EIP', 'errorMessage' => 'eip frequent purchase', 'description' => ''], ['errorCode' => 'PAY.INSUFFICIENT_BALANCE', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'ORDER.QUANTITY_INVALID', 'errorMessage' => 'User quota has exceeded the limit.', 'description' => ''], ['errorCode' => 'PAY.MAYI_WITHHOLDING_AGREEMENT_ILLEGAL', 'errorMessage' => 'User withhoding argeement is illegal.', 'description' => ''], ['errorCode' => 'OrderError.EIP', 'errorMessage' => 'The Account failed to create order.', 'description' => 'Failed to create the order.'], ['errorCode' => 'IellgalParameter.OwnerAccount', 'errorMessage' => 'The specified parameter OwnerAccount is not valid.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbbiden', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'You are not authorized to operate the specified resource.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'Specified value of "RegionId" is not supported.', 'description' => ''], ], 409 => [ ['errorCode' => 'OperationConflict', 'errorMessage' => 'Request was denied due to conflict with a previos request.', 'description' => ''], ], 500 => [ ['errorCode' => 'InsufficientEipCapacity', 'errorMessage' => 'Insufficient EIP capacity to fulfill your request.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ['errorCode' => 'OrderError.EIP', 'errorMessage' => 'The Account failed to create order.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::AllocateEipAddress'], ], 'title' => 'Apply for Elastic IP Address (EIP)', 'description' => '> This API has been upgraded and is no longer recommended. For instructions on the new API, see [AllocateEipAddress](~~120192~~).', 'changeSet' => [ ['createdAt' => '2024-06-24T11:34:46.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AllocateEipAddress'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:AllocateEipAddress', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"AllocationId\\": \\"\\",\\n \\"EipAddress\\": \\"\\"\\n}","type":"json"}]', ], 'AllocatePublicIpAddress' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28783', 'abilityTreeNodes' => ['FEATUREecsCHDP5I'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance to which you want to assign a public IP address.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1gtjxuuvwj17zr****', 'title' => ''], ], [ 'name' => 'IpAddress', 'in' => 'query', 'schema' => ['description' => 'The static public IP address that you want to assign to the instance. This parameter is empty by default, which indicates that a static public IP address is randomly assigned by the system.'."\n" ."\n" .'> Only users in the whitelist can specify this parameter.', 'type' => 'string', 'required' => false, 'example' => '112.124.**.**', 'title' => ''], ], [ 'name' => 'VlanId', 'in' => 'query', 'schema' => ['description' => 'The virtual LAN (VLAN) ID of the instance.'."\n" ."\n" .'> This parameter will be removed in the future. To ensure future compatibility, we recommend that you use other parameters.', 'type' => 'string', 'required' => false, 'example' => '720', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'IpAddress' => ['description' => 'The public IP address.', 'type' => 'string', 'example' => '112.124.**.**', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidOperation.AllocateFailed', 'errorMessage' => 'The current instance failed to allocate public IP, please try again later.', 'description' => ''], ['errorCode' => 'InvalidIpAddress.Malformed', 'errorMessage' => 'The specified parameter "IpAddress" is not valid.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'Specified operation is denied as your instance is in VPC.', 'description' => 'The operation is not supported while the instance resides in a VPC.'], ['errorCode' => 'InsufficientPublicIp', 'errorMessage' => 'Ip address not found.', 'description' => ''], ['errorCode' => 'AllocateIpInvalidInstanceBandwidth', 'errorMessage' => 'OperationDenied The InternetMaxBandwidthOut of the specified instance cannot be less than 0.', 'description' => 'The operation is not supported while the maximum outbound public bandwidth is not greater than 0 Mbit/s.'], ['errorCode' => 'OperationDenied.CloudboxNotSupport', 'errorMessage' => 'This operation is denied, because the specified ECS instance which is in the Cloudbox dose not support PublicIp or Eip.', 'description' => ''], ['errorCode' => 'OperationDenied.DedicatedRegionNotSupported', 'errorMessage' => 'This operation is denied, because the specified ECS instance which is in the dedicated region dose not support PublicIp or Eip.', 'description' => 'error of api not supported by the exclusive cloud'], ], 403 => [ ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The specified operation is denied as your instance is locked for security reasons.', 'description' => ''], ['errorCode' => 'InstanceExpiredOrInArrears', 'errorMessage' => 'The specified operation is denied as your prepay instance is expired (prepay mode) or in arrears (afterpay mode).', 'description' => ''], ['errorCode' => 'IpInUse', 'errorMessage' => 'The specified IP is already in use.', 'description' => ''], ['errorCode' => 'AllocatedAlready', 'errorMessage' => 'There is an IpAddress allocated already for the specified instance.', 'description' => 'The instance to which you attempt to assign an IP address is already assigned another IP address.'], ['errorCode' => 'AllocateIp.Fail', 'errorMessage' => 'The specified instance fails to allocate ip, please try again.', 'description' => ''], ['errorCode' => 'NAT_PUBLIC_IP_BINDING_FAILED', 'errorMessage' => 'Binding nat public ip failed.', 'description' => ''], ['errorCode' => 'NAT_PUBLIC_IP_ALLOCATE_FAILED', 'errorMessage' => 'Nat public ip binding failed.', 'description' => 'The public IP address cannot be associated.'], ['errorCode' => 'InvalidIpAddress.NotPublic', 'errorMessage' => 'The specified IP is not public address.', 'description' => ''], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ['errorCode' => 'InvalidVlanId.NotFound', 'errorMessage' => 'The VlanId provided does not exist in our records.', 'description' => 'The specified VLAN ID does not exist.'], ['errorCode' => 'InvalidIpAddress.NotFound', 'errorMessage' => 'The specified IP is not in the specified vlan.', 'description' => 'The specified IP address is not in the specified VLAN.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ['errorCode' => 'InvalidOperation.AllocateIpFailed', 'errorMessage' => 'Failed to allocate the specific IP, please ensure the IP is available.', 'description' => 'Failed to assign specific IP, please make sure the IP is available.'], ], ], 'title' => 'AllocatePublicIpAddress', 'summary' => 'Assigns a static public IP address (also called system-assigned public IP address or auto-assigned public IP address) to an Elastic Compute Service (ECS) instance.', 'description' => '### [](#)Precautions'."\n" ."\n" .'- The ECS instance to which you want to assign a static public IP address must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.'."\n" ."\n" .'- If `OperationLocks` in the response of the DescribeInstances operation contains `"LockReason" : "security"` for an ECS instance, the instance is [locked for security reasons](~~25695~~) and cannot be assigned a static public IP address.'."\n" ."\n" .'- When you call the AllocatePublicIpAddress operation for an ECS instance, make sure that the public bandwidth of the instance is greater than 0 Mbit/s. You can call the [ModifyInstanceNetworkSpec](~~2679879~~) operation to change the public bandwidth.'."\n" ."\n" .'### [](#)Considerations'."\n" ."\n" .'- Only users in the whitelist can specify `IpAddress` in the AllocatePublicIpAddress operation. If the public bandwidth of your ECS instance is greater than 0 Mbit/s, you can specify the ID of the instance (`InstanceId`) to randomly assign a static public IP address to the instance. If the public bandwidth of your ECS instance is 0 Mbit/s, you must call the [ModifyInstanceNetworkSpec](~~2679879~~) operation to increase the public bandwidth of the instance before you call the AllocatePublicIpAddress operation.'."\n" ."\n" .'- You can assign only one static public IP address to an ECS instance. If the instance already has a static public IP address, the static public IP address is returned for the `IpAddress` response parameter.'."\n" ."\n" .'- After you assign a static public IP address to an ECS instance, you must restart the instance ([RebootInstance](~~25502~~)) or start the instance ([StartInstance](~~25500~~)) for the public IP address to take effect.'."\n" ."\n" .'If an ECS instance resides in a virtual private cloud (VPC), you can assign a static public IP address to the instance or associate an elastic IP address (EIP) with the instance. For more information, see [AssociateEipAddress](~~2518064~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-10-10T03:22:14.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-01-04T06:24:46.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AllocatePublicIpAddress'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:AllocatePublicIpAddress', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"IpAddress\\": \\"112.124.**.**\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'ApplyAutoSnapshotPolicy' => [ 'summary' => 'Applies an automatic snapshot policy to one or more disks.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28784', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'regionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the automatic snapshot policy and target disks are located. You can call the [DescribeRegions](~~25609~~) operation to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'autoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the automatic snapshot policy.', 'type' => 'string', 'required' => true, 'example' => 'sp-bp14yziiuvu3s6jn****', 'title' => ''], ], [ 'name' => 'diskIds', 'in' => 'query', 'schema' => ['description' => 'A JSON array of one or more disk IDs.', 'type' => 'string', 'required' => true, 'example' => '["d-bp14k9cxvr5uzy54****", "d-bp1dtj8v7x6u08iw****", "d-bp1c0tyj9tfli2r8****"]', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'DiskCategory.OperationNotSupported', 'errorMessage' => 'The type of the specified disk does not support creating a snapshot.', 'description' => 'The operation is not supported by the current disk category.'], ['errorCode' => 'PartofDiskCategory.OperationNotSupported', 'errorMessage' => 'The types of some disks in the disk list do not support creating snapshots.', 'description' => 'Some of the specified disks do not support this operation.'], ['errorCode' => 'InvalidAutoSnapshotPolicyId.NotFound', 'errorMessage' => 'The specified AutoSnapshotPolicyId does not exist.', 'description' => 'The specified automatic snapshot policy does not exist.'], ], 403 => [ ['errorCode' => 'ParameterInvalid', 'errorMessage' => 'The specified RegionId parameter is invalid.', 'description' => 'The specified region ID is invalid.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.SnapshotServiceUnavailable', 'errorMessage' => 'Snapshot service has not been opened yet.', 'description' => 'The operation is not supported while the snapshot service is not activated.'], ['errorCode' => 'InvalidOperation.SnapshotAlreadyCreatedUnsupported', 'errorMessage' => 'The current disk already has snapshots created by non-promotional activities. Snapshot policies bound to promotional activities are not supported.', 'description' => 'The current disk already has snapshots created by non-promotional activities. Snapshot policies bound to promotional activities are not supported.'], ['errorCode' => 'QuotaExceed.AppliedAutoSnapshotPolicyQuota', 'errorMessage' => 'The number of auto snapshot policies applied to the specified disk %s has exceeded the quota %s. Please cancel any unused policies and try again.', 'description' => 'The number of auto snapshot policies applied to the specified disk has exceeded the quota. Please cancel any unused policies and try again.'], ['errorCode' => 'InvalidOperation.AutoSnapshotPolicyConflict', 'errorMessage' => 'The disk %s cannot apply the auto snapshot policy of promotional activities and other policies at the same time.', 'description' => 'The disk cannot apply the auto snapshot policy of promotional activities and other policies at the same time.'], ], [ ['errorCode' => 'ParameterInvalid', 'errorMessage' => 'The specified automatic snapshot policy does not exist.', 'description' => ''], ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified disk does not exist in the region.', 'description' => 'The specified disk does not exist in the current region.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'ApplyAutoSnapshotPolicy', 'description' => '- Each disk supports up to 10 automatic snapshot policies.'."\n" ."\n" .'- If a target disk already has an automatic snapshot policy, this operation adds the new policy without replacing the existing ones.'."\n" ."\n" .'> To avoid unexpected charges, make sure to cancel any automatic snapshot policies that you no longer need.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-07-28T05:55:21.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-14T07:44:29.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-20T05:38:28.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ApplyAutoSnapshotPolicy'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:ApplyAutoSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'AutoSnapshotPolicy', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotpolicy/{#snapshotpolicyId}'], ], ], ], ], ], 'AssignIpv6Addresses' => [ 'summary' => 'Assigns one or more IPv6 addresses to an Elastic Network Interface (ENI).', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29241', 'abilityTreeNodes' => ['FEATUREecsCHDP5I'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the network interface controller (NIC). You can invoke [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the network interface controller (NIC).', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'eni-bp1iqejowblx6h8j****', 'title' => ''], ], [ 'name' => 'Ipv6AddressCount', 'in' => 'query', 'schema' => ['description' => 'The number of IPv6 addresses to randomly generate for the network interface controller (NIC). Valid values: 1 to 10.'."\n" ."\n" .'> When you invoke this operation, you must set either the `Ipv6Addresses.N` parameter or the `Ipv6AddressCount` parameter, but not both.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Ipv6Address', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more IPv6 addresses to assign to the network interface controller (NIC). You can set up to 10 IPv6 addresses. Valid values of N: 1 to 10.'."\n" ."\n" .'Example: Ipv6Address.1=2001:db8:1234:1a00::\\*\\*\\*\\*'."\n" ."\n" .'> When you invoke this operation, you must set either the `Ipv6Addresses.N` parameter or the `Ipv6AddressCount` parameter, but not both.', 'type' => 'array', 'items' => ['description' => 'One or more IPv6 addresses to assign to the network interface controller (NIC). You can set up to 10 IPv6 addresses. Valid values of N: 1 to 10.'."\n" ."\n" .'Example: Ipv6Address.1=2001:db8:1234:1a00::\\*\\*\\*\\*'."\n" ."\n" .'> When you invoke this operation, you must set either the `Ipv6Addresses.N` parameter or the `Ipv6AddressCount` parameter, but not both.', 'type' => 'string', 'required' => false, 'example' => '2001:db8:1234:1a00::****', 'title' => ''], 'required' => false, 'example' => '2001:db8:1234:1a00::****', 'maxItems' => 20, 'title' => '', ], ], [ 'name' => 'Ipv6Prefix', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more IPv6 prefixes to assign to the network interface controller (NIC). Valid values of N: 1 to 10.'."\n" .'> To set IPv6 prefixes for the ENI, you must set either the Ipv6Prefix.N parameter or the Ipv6PrefixCount parameter, but not both.', 'type' => 'array', 'items' => ['description' => 'One or more IPv6 prefixes to assign to the network interface controller (NIC). Valid values of N: 1 to 10.'."\n" .'> To set IPv6 prefixes for the ENI, you must set either the Ipv6Prefix.N parameter or the Ipv6PrefixCount parameter, but not both.', 'type' => 'string', 'required' => false, 'example' => '2001:db8:1234:1a00:****::/80', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'Ipv6PrefixCount', 'in' => 'query', 'schema' => ['description' => 'The number of IPv6 prefixes to assign to the network interface controller (NIC). Valid values: 1 to 10.'."\n" .'> To set IPv6 prefixes for the ENI, you must set either the Ipv6Prefix.N parameter or the Ipv6PrefixCount parameter, but not both.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '10', 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'NetworkInterfaceId' => ['description' => 'The network interface controller (NIC) ID.', 'type' => 'string', 'example' => 'eni-bp1iqejowblx6h8j****', 'title' => ''], 'Ipv6Sets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6Address' => [ 'description' => 'The IPv6 addresses allocated to the network interface controller (NIC).', 'type' => 'array', 'items' => ['description' => 'The IPv6 addresses allocated to the network interface controller (NIC).', 'type' => 'string', 'example' => '2001:db8:1234:1a00::****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv6PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6Prefix' => [ 'description' => 'The IPv6 prefixes allocated to the network interface controller (NIC).', 'type' => 'array', 'items' => ['description' => 'The IPv6 prefix allocated to the network interface controller (NIC).', 'type' => 'string', 'example' => '2001:db8:1234:1a00:****::/80', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InValidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParams.EniId', 'errorMessage' => '%s', 'description' => 'The specified EniId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEcsState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidPrivateIpAddress.Duplicated', 'errorMessage' => 'Specified private IP address is duplicated.', 'description' => ''], ['errorCode' => 'IncorrectVSwitchStatus', 'errorMessage' => 'The current status of vSwitch does not support this operation.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Check whether parameter conflicts exist. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidOperation.EniOperationConflict', 'errorMessage' => 'The previous ENI operation is still in progress. Please try again later.', 'description' => 'Current operation conflict, please wait for a moment and try again'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbedden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbbiden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'InvalidOperation.InvalidEniType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'MaxEniIpv6IpsCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of IPv6 addresses that can be assigned to the ENI has been reached.'], ['errorCode' => 'InvalidIp.IpUnassigned', 'errorMessage' => '%s', 'description' => 'The specified IP address is not assigned.'], ['errorCode' => 'InvalidIp.IpRepeated', 'errorMessage' => '%s', 'description' => 'The specified IP address already exists.'], ['errorCode' => 'InvalidIp.IpAssigned', 'errorMessage' => '%s', 'description' => 'The specified IP address is already assigned.'], ['errorCode' => 'InvalidIp.Address', 'errorMessage' => '%s', 'description' => 'The IP entered is not in the correct format or is not in the optional CIDR range.'], ['errorCode' => 'InvalidOperation.EniCountExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.Ipv4CountExceeded', 'errorMessage' => '%s', 'description' => 'The operation is valid because the maximum number of IPv4 addresses has been reached.'], ['errorCode' => 'InvalidOperation.Ipv6CountExceeded', 'errorMessage' => '%s', 'description' => 'The operation is valid because the maximum number of IPv6 addresses has been reached.'], ['errorCode' => 'InvalidOperation.Ipv6NotSupport', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.Ipv4NotSupport', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitch.Ipv6NotTurnOn', 'errorMessage' => '%s', 'description' => 'The IPv6 feature is not enabled for your current vSwitch. Enable the feature and try again.'], ['errorCode' => 'InvalidParam.IpAssign', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.IpInvalid', 'errorMessage' => '%s', 'description' => 'The specified private IP address is invalid.'], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.EniServiceManaged', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.HighPerformanceTrafficModeEniNotSupport', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.EniTypeNotSupport', 'errorMessage' => 'The member eni does not support ipv6.', 'description' => ''], ['errorCode' => 'InvalidIp.IpPrefixIllegal', 'errorMessage' => 'The ip prefixes %s is/are illegal.', 'description' => 'The IP address prefix is invalid and is not in the CIDR format.'], ['errorCode' => 'InvalidIp.IpPrefixMaskIllegal', 'errorMessage' => 'The ip prefix mask is illegal.', 'description' => 'The IP address prefix mask is invalid.'], ['errorCode' => 'InvalidIp.IpPrefixMaskInvalid', 'errorMessage' => 'The ip prefixes mask %s is illegal which must be between %s and %s.', 'description' => 'The IP address prefix mask is invalid and is not within the valid range.'], ['errorCode' => 'InvalidIp.IpPrefixMaskNotSame', 'errorMessage' => 'The ip prefixes %s are illegal which mask must be same.', 'description' => 'The IP address prefix masks are not the same.'], ['errorCode' => 'InvalidIp.IpPrefixMustInReserveSegment', 'errorMessage' => 'The ip prefix must in vswitch reserve segment.', 'description' => 'The IP address prefix is invalid and is not in the reserved CIDR block of the vSwitch.'], ['errorCode' => 'InvalidIp.IpPrefixNotAvailable', 'errorMessage' => 'The ip prefix is/are not available.', 'description' => 'The IP address prefix is not available.'], ['errorCode' => 'InvalidIp.IpPrefixNotStrict', 'errorMessage' => 'The ip prefix must be strict cidr format.', 'description' => 'The IP address prefix is invalid and is not in the CIDR format.'], ['errorCode' => 'InvalidVSwitchId.IpPrefixNotEnough', 'errorMessage' => 'The specified vSwitch has not enough ip prefix.', 'description' => 'The number of IP address prefixes in the specified vSwitch is insufficient.'], ], [ ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'MaxEniIpv6IpsCountExceeded', 'errorMessage' => 'The ipv6 address count exceed limitation.', 'description' => ''], ['errorCode' => 'InvalidOperation.VSwitchIpv6Disabled', 'errorMessage' => 'The specified VSwitch does not support Ipv6 feature.', 'description' => 'The specified VSwitch does not support IPv6.'], ['errorCode' => 'InvalidOperation.EnableIpv6Failed', 'errorMessage' => 'The specified VSwitch does not support Ipv6 feature.', 'description' => ''], ['errorCode' => 'InvalidIp.IpAssigned', 'errorMessage' => 'The specified ipv6 has already been allocated.', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.IpInvalid', 'errorMessage' => 'The specified ipv6 does not match VSwitch cidr scope.', 'description' => ''], ['errorCode' => 'InvalidOperation.HasIpv6RouteEntry', 'errorMessage' => 'The specified eni has been pointed to the next hop of the route.', 'description' => ''], ['errorCode' => 'InvalidOperation.VSwitchCidrReservationNotExist', 'errorMessage' => 'The specified vSwitch has no cidr reservation.', 'description' => ''], ], 500 => [ ['errorCode' => 'InvalidOperation.RegionNotSupportIpPrefix', 'errorMessage' => 'The current region does not support ip prefix.', 'description' => 'You cannot assign IP address prefixes in this region.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"NetworkInterfaceId\\": \\"eni-bp1iqejowblx6h8j****\\",\\n \\"Ipv6Sets\\": {\\n \\"Ipv6Address\\": [\\n \\"2001:db8:1234:1a00::****\\"\\n ]\\n },\\n \\"Ipv6PrefixSets\\": {\\n \\"Ipv6Prefix\\": [\\n \\"2001:db8:1234:1a00:****::/80\\"\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Assign IPv6 addresses to an ENI', 'description' => '## Operation description'."\n" .'You can specify IPv6 addresses from the CIDR block of the vSwitch to which the Elastic Network Interface (ENI) belongs, or specify the number of IPv6 addresses for automatic creation. Note the following items:'."\n" ."\n" .'- The vSwitch to which the ENI belongs must have IPv6 enabled. For more information, see [Enable an IPv6 CIDR block for an existing vSwitch](~~98923~~).'."\n" ."\n" .'- The ENI must be in the Active (Available) or InUse state.'."\n" ."\n" .'- When you operate a primary ENI, the instance to which the network interface controller (NIC) is attached must be in the Running or Stopped state.'."\n" ."\n" .'- The number of IPv6 addresses that can be allocated to a single network interface controller (NIC) depends on the instance type of the instance to which the ENI is attached.'."\n" .' - If the ENI is in the Active (Available) state, you can allocate up to 10 IPv6 addresses to it.'."\n" ."\n" .' - If the ENI is attached to an instance, the number of IPv6 addresses that can be allocated is limited by the instance type. For more information, see [Instance family](~~25378~~).'."\n" ."\n" .'- After you successfully invoke this operation, you can obtain the allocated IPv6 address information from the response.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-03-19T08:09:27.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-18T07:35:14.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-04-26T08:09:21.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-11-24T14:05:53.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2021-07-05T02:32:40.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AssignIpv6Addresses'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:AssignIpv6Addresses', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], ], 'AssignPrivateIpAddresses' => [ 'summary' => 'Allocates one or more secondary private IP addresses to an Elastic Network Interface (ENI). You can specify available private IP addresses from the vSwitch to which the ENI belongs, or automatically allocate private IP addresses by specifying the number of private endpoint addresses.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29242', 'abilityTreeNodes' => ['FEATUREecsCHDP5I'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the network interface controller (NIC). You can call [DescribeRegions](~~25609~~) to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the network interface controller (NIC).', 'type' => 'string', 'required' => true, 'example' => 'eni-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SecondaryPrivateIpAddressCount', 'in' => 'query', 'schema' => ['description' => 'The number of private IP addresses to be automatically assigned from the available IP addresses of the vSwitch.'."\n" ."\n" .'When you assign secondary private IP addresses, you cannot specify both PrivateIpAddress.N and SecondaryPrivateIpAddressCount.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'PrivateIpAddress', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more secondary private IP addresses selected from the available IP addresses of the vSwitch to which the network interface controller (NIC) belongs. Valid values of N:'."\n" ."\n" .'- When the ENI is in the Available (`Available`) state: 1 to 32.'."\n" .'- When the ENI is in the `InUse` state: limited by the instance type. For more information, see [Instance families](~~25378~~).'."\n" ."\n" .'When you allocate secondary private IP addresses, you cannot specify both PrivateIpAddress.N and SecondaryPrivateIpAddressCount.', 'type' => 'array', 'items' => ['description' => 'One or more secondary private IP addresses selected from the available IP addresses of the vSwitch to which the network interface controller (NIC) belongs. Valid values of N:'."\n" ."\n" .'- When the ENI is in the Available (`Available`) state: 1 to 32.'."\n" .'- When the ENI is in the `InUse` state: limited by the instance type. For more information, see [Instance families](~~25378~~).'."\n" ."\n" .'> When you allocate secondary private IP addresses, you cannot specify both PrivateIpAddress.N and SecondaryPrivateIpAddressCount.', 'type' => 'string', 'required' => false, 'example' => '10.1.**.**', 'title' => ''], 'required' => false, 'example' => '10.1.**.**', 'maxItems' => 32, 'title' => '', ], ], [ 'name' => 'Ipv4Prefix', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more IPv4 prefixes to allocate to the network interface controller (NIC). Valid values of N: 1 to 10.'."\n" .'> To configure IPv4 prefixes for the ENI, you must specify either the Ipv4Prefix.N parameter or the Ipv4PrefixCount parameter, but not both.', 'type' => 'array', 'items' => ['description' => 'One or more IPv4 prefixes to allocate to the network interface controller (NIC). Valid values of N: 1 to 10.'."\n" .'> To configure IPv4 prefixes for the ENI, you must specify either the Ipv4Prefix.N parameter or the Ipv4PrefixCount parameter, but not both.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**/28', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'Ipv4PrefixCount', 'in' => 'query', 'schema' => ['description' => 'The number of randomly generated IPv4 prefixes to allocate to the network interface controller (NIC). Valid values: 1 to 10.'."\n" .'> To configure IPv4 prefixes for the ENI, you must specify either the Ipv4Prefix.N parameter or the Ipv4PrefixCount parameter, but not both.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '10', 'minimum' => '1', 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'AssignedPrivateIpAddressesSet' => [ 'description' => 'The information about the network interface controller (NIC) to which secondary private IP addresses are allocated.', 'type' => 'object', 'properties' => [ 'NetworkInterfaceId' => ['description' => 'The ID of the network interface controller (NIC).', 'type' => 'string', 'example' => 'eni-bp125p95hhdhn3ot****', 'title' => ''], 'PrivateIpSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PrivateIpAddress' => [ 'description' => 'The assigned private IP addresses.', 'type' => 'array', 'items' => ['description' => 'The assigned private IP address.', 'type' => 'string', 'example' => '192.168.**.**', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv4PrefixSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv4Prefixes' => [ 'description' => 'The assigned IPv4 prefixes.', 'type' => 'array', 'items' => ['description' => 'The assigned IPv4 prefix.', 'type' => 'string', 'example' => '192.168.**.**/28', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'InvalidOperation.Unsupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEcsState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.DetachPrimaryEniNotAllowed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidAction', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidPrivateIpAddress.Duplicated', 'errorMessage' => 'Specified private IP address is duplicated.', 'description' => ''], ['errorCode' => 'InvalidPrivateIpAddress.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSecondaryPrivateIpAddressCount.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Check whether parameter conflicts exist. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidOperation.InstanceNotSupportMulitipleIp', 'errorMessage' => 'Assigning private ip for instance in cloud box is unsupported.', 'description' => ''], ['errorCode' => 'IncorrectVSwitchStatus', 'errorMessage' => 'The operation is not allowed in the current VSwitch state. Expecting state includes "Created Available", but current state is "%s".', 'description' => 'The operation is not supported in the current state of the vSwitch.'], ['errorCode' => 'QuotaExceeded.PrivateIpAddress', 'errorMessage' => 'There are not enough private IPs in the specified VSwitch.', 'description' => 'The current VSwitch does not have enough Ip'], ['errorCode' => 'InvalidStatus.InstanceIsMigrating', 'errorMessage' => 'The ECS which ENI is attached to is migrating. Please try again later.', 'description' => ''], ['errorCode' => 'InvalidEniId.Malformed', 'errorMessage' => 'The specified parameter "NetworkInterfaceId" is not valid. Ensure you provide the full ENI id in the form eni-xxx.', 'description' => 'NIC Id input does not meet specification'], ['errorCode' => 'InvalidVSwitch.IllegalStatus', 'errorMessage' => 'The operation is not allowed in the current VSwitch state. Expecting state includes "Created", but current state is "%s".', 'description' => 'The current VSwitch status does not support this operation.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'MaxEniCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be managed has been reached.'], ['errorCode' => 'EniPerInstanceLimitExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be attached to the specified instance has been reached.'], ['errorCode' => 'InvalidOperation.AvailabilityZoneMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.VpcMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check whether the VPC in the operation corresponds to other parameters.'], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSecurityGroupId.NotVpc', 'errorMessage' => '%s', 'description' => 'The specified SecurityGroupId parameter is invalid and the network type of the security group is not VPC.'], ['errorCode' => 'InvalidOperation.InvalidEniType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.IpNotEnough', 'errorMessage' => '%s', 'description' => 'The number of available IP addresses on the specified vSwitch is insufficient.'], ['errorCode' => 'InvalidVSwitchId.IpInvalid', 'errorMessage' => '%s', 'description' => 'The specified private IP address is invalid.'], ['errorCode' => 'InvalidIp.IpAssigned', 'errorMessage' => '%s', 'description' => 'The specified IP address is already assigned.'], ['errorCode' => 'MaxEniPrivateIpsCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of secondary private IP addresses that can be assigned to the specified ENI has been exceeded. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'Operation.Conflict', 'errorMessage' => '%s', 'description' => 'This operation conflicts with another operation in progress. Try again later.'], ['errorCode' => 'InvalidOperation.Ipv4CountExceeded', 'errorMessage' => '%s', 'description' => 'The operation is valid because the maximum number of IPv4 addresses has been reached.'], ['errorCode' => 'InvalidOperation.EniServiceManaged', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidIp.IpRepeated', 'errorMessage' => '%s', 'description' => 'The specified IP address already exists.'], ['errorCode' => 'InvalidIp.IpPrefixIllegal', 'errorMessage' => 'The ip prefixes %s is/are illegal.', 'description' => 'The IP address prefix is invalid and is not in the CIDR format.'], ['errorCode' => 'InvalidIp.IpPrefixMaskIllegal', 'errorMessage' => 'The current IP prefix mask is illegal.', 'description' => 'Illegal IP prefix mask.'], ['errorCode' => 'InvalidIp.IpPrefixMaskNotSame', 'errorMessage' => 'The IP prefixes %s are illegal.The IP prefix mask must be the same.', 'description' => 'The IP prefix masks are not the same.'], ['errorCode' => 'InvalidIp.IpPrefixNotAvailable', 'errorMessage' => 'The IP prefix is not available.', 'description' => 'The IP prefix is not free.'], ['errorCode' => 'InvalidIp.IpPrefixNotStrict', 'errorMessage' => 'The IP prefix "%s" must be strict CIDR format.', 'description' => 'Invalid IP prefix, not strictly cidr.'], ['errorCode' => 'InvalidVSwitchId.IpPrefixNotEnough', 'errorMessage' => 'The specified VSwitch does not have enough IP prefixes.', 'description' => 'The number of IP prefixes in the specified switch is insufficient.'], ['errorCode' => 'InvalidIp.IpPrefixMaskInvalid', 'errorMessage' => 'The IP prefixes mask "%s" is illegal.Ensure the mask is between %s and %s.', 'description' => 'The IP prefix mask is invalid and is not in the valid range.'."\n"], ['errorCode' => 'InvalidIp.IpPrefixMustInReserveSegment', 'errorMessage' => 'The IP prefix must be in VSwitch reserved segment. Ensure you create reserved segment for the VSwitch.', 'description' => 'The IP prefix is invalid and is not in the reserved address segment of the switch.'], ], [ ['errorCode' => 'InvalidEcsId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance ID does not exist.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified security group ID does not exist.'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.VSwitchCidrReservationNotExist', 'errorMessage' => 'The specified VSwitch does not have CIDR reservation.', 'description' => 'The specified switch does not have a reserved segment available.'], ], 500 => [ ['errorCode' => 'InvalidOperation.RegionNotSupportIpPrefix', 'errorMessage' => 'The current region does not support IP prefix feature.', 'description' => 'The region does not support IP prefix allocation.'], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ['errorCode' => 'InvalidParameter.PrivateIpCount', 'errorMessage' => 'The current privateIpCount is not in the range 1.0 through 100.0.', 'description' => 'The current privateIpCount is not in the range of 1.0 to 100.0.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"AssignedPrivateIpAddressesSet\\": {\\n \\"NetworkInterfaceId\\": \\"eni-bp125p95hhdhn3ot****\\",\\n \\"PrivateIpSet\\": {\\n \\"PrivateIpAddress\\": [\\n \\"192.168.**.**\\"\\n ]\\n },\\n \\"Ipv4PrefixSet\\": {\\n \\"Ipv4Prefixes\\": [\\n \\"192.168.**.**/28\\"\\n ]\\n }\\n }\\n}","type":"json"}]', 'title' => 'Assign secondary private IP addresses to an ENI', 'description' => '## Operation description'."\n" ."\n" .'- Only ENIs in the Available or InUse state are supported.'."\n" .'- When you operate a primary ENI, the instance to which the ENI is attached must be in the Running or Stopped state.'."\n" .'- When an ENI is in the Available state, you can allocate up to 49 secondary private IP addresses to it. After the ENI is attached to an instance, the number of secondary private IP addresses that can be allocated is limited by the instance type. For more information, see [Instance families](~~25378~~).'."\n" .'- After you call this operation, you can obtain the allocated secondary private IP address information from the response.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-03-25T11:47:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-08-20T02:04:31.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-17T12:49:35.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-04-26T08:09:22.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-11-24T14:05:53.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2022-07-26T13:37:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-07-02T08:04:36.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AssignPrivateIpAddresses'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:AssignPrivateIpAddresses', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], ], 'AssociateEipAddress' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28787', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AllocationId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'docRequired' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'docRequired' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAction.Denied', 'errorMessage' => 'Action is denied due to unfinished Eip configuration modification.', 'description' => ''], ['errorCode' => 'InvalidAssociation.Duplicated', 'errorMessage' => 'Specified instance already is associated.', 'description' => 'An EIP or a GA instance is already associated with the specified instance. You must disassociate the EIP or GA instance from the instance before you can perform the operation.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'Specified instance is not in VPC.', 'description' => 'The specified instance does not reside in a VPC.'], ['errorCode' => 'InvalidParameter.Mismatch', 'errorMessage' => 'Specified elastic IP address and ECS instance are not in the same region.', 'description' => 'The specified EIP and ECS instance are not in the same region.'], ['errorCode' => 'IncorrectEipStatus', 'errorMessage' => 'Current elastic IP status does not support this operation', 'description' => 'The EIP is in a state that does not support the current operation.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'Current instance status does not support this operation.', 'description' => 'The instance is in a state that does not support the current operation.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified value of InstanceType is not supported.', 'description' => 'The specified instance type is not supported.'], ['errorCode' => 'IncorrectHaVipStatus', 'errorMessage' => 'HaVip can be operated by this action only when it\'s status is Available or InUse.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is not valid.', 'description' => 'A specified parameter is invalid.'], ['errorCode' => 'ReserveIpFail', 'errorMessage' => 'Reserve eip failed.', 'description' => 'The EIP cannot be retained.'], ['errorCode' => 'Forbbiden', 'errorMessage' => 'The eip instance owener error', 'description' => 'The specified EIP requires authorization to be used. Check your permissions and try again.'], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The eip operate too frequent, TaskConflict.', 'description' => ''], ['errorCode' => 'InvalidBindingStatus', 'errorMessage' => 'The eip binding status invalid.', 'description' => 'The specified EIP association state is invalid.'], ['errorCode' => 'BIND_INSTANCE_HAVE_PORTMAP_OR_BIND_EIP', 'errorMessage' => 'The instance may have portMap or already bind eip.', 'description' => 'The specified instance has set PortMap or bound an EIP.'], ['errorCode' => 'EIP_CAN_NOT_ASSOCIATE_WITH_PUBLIC_IP', 'errorMessage' => 'instance already bind natpublicip,cannot bind eip.', 'description' => ''], ['errorCode' => 'BIND_INSTANCE_OWENER_ERROR', 'errorMessage' => 'Cannot operate the eip.', 'description' => 'The EIP cannot be associated.'], ['errorCode' => 'QuotaExceeded.NumberOfTrafficEip', 'errorMessage' => 'The number of traffic eip on natgw exceed limitation.', 'description' => ''], ['errorCode' => 'QuotaExceeded.NumberOfEip', 'errorMessage' => 'Binded eip Quota exceed on this NatGw.', 'description' => ''], ['errorCode' => 'InvalidEipBandwidth.OutOfMaxValue', 'errorMessage' => '""', 'description' => ''], ['errorCode' => 'Forbidden.EipCanNotBindGatgw', 'errorMessage' => 'Eip can not bind on natgw.', 'description' => ''], ['errorCode' => 'Forbidden.InstanceBandwidthNotZero', 'errorMessage' => 'Eip can not bind with instance when it\'s bandwidth is not zero.', 'description' => ''], ['errorCode' => 'INSTANCE_TYPE_NOT_SUPPORT', 'errorMessage' => 'The instance type is invalid.', 'description' => ''], ['errorCode' => 'InvalidStatus.EcsStatusNotSupport', 'errorMessage' => 'The special instance status Pending is not support operate', 'description' => ''], ['errorCode' => 'NATGATEWAY_FINANCIALLOCKED', 'errorMessage' => 'The NatGateway has expire, cannot do bind operation.', 'description' => ''], ['errorCode' => 'InvalidParameter.InstanceTypeNotSupport', 'errorMessage' => 'The specified instance type is not support.', 'description' => ''], ['errorCode' => 'InstanceType.NotSupport', 'errorMessage' => 'The instance type is invalid.', 'description' => ''], ['errorCode' => 'InvalidParams.NotFound', 'errorMessage' => 'instance not found', 'description' => ''], ['errorCode' => 'BindInstance.NotSupported', 'errorMessage' => 'bind instance type %s is not supported.', 'description' => ''], ['errorCode' => 'ServerRegion.Invalid', 'errorMessage' => 'Eip bind remote server region invalid.', 'description' => ''], ['errorCode' => 'Eni.Attached', 'errorMessage' => 'The eni should be detached from ecs when associating with direct eip.', 'description' => ''], ['errorCode' => 'Invalid.DirectEip.BindType', 'errorMessage' => 'The direct eip can be only associated with eni.', 'description' => ''], ['errorCode' => 'InvalidStatus.EniStatusNotSupport', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.EniInstanceId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidNexthop.DirectEni', 'errorMessage' => 'The direct Eni cannot be nexthop.', 'description' => ''], ['errorCode' => 'InvalidEIPStatus.BizDisabled', 'errorMessage' => 'The EIP has been locked.', 'description' => ''], ['errorCode' => 'OperationFailed.EniSubIp', 'errorMessage' => 'Eni has sub ip can not bind direct eip.', 'description' => ''], ['errorCode' => 'InvalidEip.EipQuotaExceeded', 'errorMessage' => 'The specified eni assigned eip is more than privateIp.', 'description' => ''], ['errorCode' => 'OperationFailed.QueryCommodityInfo', 'errorMessage' => 'Operation failed because quey commodity info error.', 'description' => ''], ['errorCode' => 'OperationUnsupported.MultiIp', 'errorMessage' => 'Multi ip function is not support.', 'description' => ''], ['errorCode' => 'InvalidNicOrVm.NotFound', 'errorMessage' => 'Bind nic or vm not exist.', 'description' => ''], ['errorCode' => 'OperationUnsupported.EipBindModel', 'errorMessage' => 'The instance type of ecs does not support MULTI_BINDED model Eip.', 'description' => ''], ['errorCode' => 'IncorrectStatus.NatGateway', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.BindingInstanceRegion', 'errorMessage' => 'The specified BindingInstanceRegion is not supported.', 'description' => ''], ['errorCode' => 'OperationFailed.HavipBoundPortmap', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidStatus.NotAllow', 'errorMessage' => 'Bound instance status is invalid.', 'description' => ''], ['errorCode' => 'InvalidInstance.NotVpc', 'errorMessage' => 'Bound instance is not vpc instance.', 'description' => ''], ['errorCode' => 'InvalidStatus.InstanceHasBandWidth', 'errorMessage' => 'The specified instance bandwidth invalid.', 'description' => ''], ['errorCode' => 'OperationDenied.CloudBoxResourceExist', 'errorMessage' => 'The operation is not allowed because the resource to be bound is a CloudBox resource.', 'description' => 'The operation is not allowed because the resource to be bound is a CloudBox resource.'], ], 404 => [ ['errorCode' => 'InvalidAllocationId.NotFound', 'errorMessage' => 'Specified allocation ID is not found.', 'description' => ''], ['errorCode' => 'InvalidInstanId.NotFound', 'errorMessage' => 'Specified instance does not exist.', 'description' => 'The specified instance does not exist. Check whether the instance ID is correct.'], ['errorCode' => 'InvalidHaVip.NotFound', 'errorMessage' => 'The specified HaVip does not exist.', 'description' => 'The specified HAVIP does not exist.'], ['errorCode' => 'Forbidden.RegionNotFound', 'errorMessage' => 'Specified region is not found during access authentication.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'Specified value of InstanceRegionId is not supported.', 'description' => ''], ['errorCode' => 'InvalidInstance.NotExist', 'errorMessage' => 'Bind instance data not exist.', 'description' => ''], ], 503 => [ ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::AssociateEipAddress'], ], 'changeSet' => [ ['createdAt' => '2024-06-17T02:04:04.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-09-10T05:57:23.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-09-10T05:57:23.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AssociateEipAddress'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:AssociateEipAddress', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'AssociateEipAddress', 'summary' => 'AssociateEipAddress', ], 'AssociateHaVip' => [ 'summary' => 'Associates a high-availability virtual IP address (HaVip) with a specified instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'HaVipId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidVip.Status', 'errorMessage' => 'vip invalid status', 'description' => ''], ['errorCode' => 'IncorrectHaVipStatus', 'errorMessage' => 'HaVip can be operated by this action only when it\'s status is Available or InUse.', 'description' => ''], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'ECS instance can be operated by this action only when it??s status is Running or Stopped.', 'description' => ''], ['errorCode' => 'CountLimitExceed.HaVipOnInstance', 'errorMessage' => 'The amount of HaVip associated with the specified Instance reach its limits.', 'description' => 'The number of HAVIPs that are associated with the specified instance approaches the upper limit.'], ['errorCode' => 'CountLimitExceeded.HaVipOnECSInstance', 'errorMessage' => 'The amount of Instance associated with the specified HaVip reach its limits.', 'description' => 'The maximum number of HAVIPs has been reached.'], ['errorCode' => 'OperationFailed.DistibuteLock', 'errorMessage' => 'Distibute lock fail.', 'description' => ''], ['errorCode' => 'Forbidden.HaVip', 'errorMessage' => 'No permissions to perform operations on HAVIPs. Please apply for privilege--vpc_privilege_allow_buy_havip_instance.', 'description' => 'You do not have the permissions to manage the HAVIP. Go to the Quota Center to apply for the permissions.'], ['errorCode' => 'OperationUnsupported.BindMultipleType', 'errorMessage' => 'You cannot bind HaVip to multiple instance types.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidHaVip.Exist', 'errorMessage' => 'haVip already bind exist.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidHaVipId.NotFound', 'errorMessage' => 'The specified HaVip does not exist in the specified region.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified Instance does not exist in the specified region.', 'description' => 'The specified instance does not exist. Check whether the instance ID is correct.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::AssociateHaVip'], ], 'changeSet' => [ ['createdAt' => '2023-07-12T02:51:03.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-06-12T07:10:42.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AssociateHaVip'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:AssociateHaVip', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:instance/{#InstanceId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'HaVip', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:havip/{#HaVipId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'AssociateHaVip', ], 'AttachClassicLinkVpc' => [ 'summary' => 'Links an instance that is deployed in the classic network to a virtual private cloud (VPC) by establishing a ClassicLink connection between the instance and the VPC. This way, the instance can communicate with cloud resources in the VPC over the internal network.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28789', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'Classic已经下线,手动已经测试,老大已经审批', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance that is deployed in the classic network. You can call the [DescribeInstances](~~25506~~) operation to query available instances.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i-bp1gtjxuuvwj17zr****', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC for which the ClassicLink feature is enabled. You can call the [DescribeVpcs](~~35739~~) operation to query available VPCs.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'vpc-bp1j4z1sr8zxu4l8u****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidRegionId.Malformed', 'errorMessage' => 'The specified parameter ?RegionId? is not valid.', 'description' => ''], ['errorCode' => 'InvalidVpcId.Malformed', 'errorMessage' => 'The specified parameter ?VpcId? is not valid.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.MalFormed', 'errorMessage' => 'The specified instance is not a classic network instance.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The instance does not allow link to vpc.', 'description' => 'The instance is linked to another VPC.'], ['errorCode' => 'InvalidParameter.InvalidInstanceIdAndVpcId', 'errorMessage' => 'The parameter InstanceId and VpcId are not allowed to be empty at the same time.', 'description' => 'At least one of the InstanceId and VpcId parameters must be specified.'], ['errorCode' => 'InvalidStatus.InstanceStatus', 'errorMessage' => 'The specified instance status is not support this operation ,expect status is running or shutted.', 'description' => 'The instance is in a state that does not support the operation. The operation can be performed only when the instance is in the Running or Stopped state.'], ['errorCode' => 'InvalidInstanceId.NotBelong', 'errorMessage' => 'The specified instance is not belong to you.', 'description' => ''], ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'The link quota exceeded in this vpc.', 'description' => 'The maximum number of ClassicLink connections that can be established to the specified VPC has been reached.'], ['errorCode' => 'InvalidStatus.InstanceLocked', 'errorMessage' => 'The specified instance is locked,please wait more.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.LimitedRegion', 'errorMessage' => 'The specified instance does not support this operation due to the limitation of its region.', 'description' => 'The operation is not supported while the instance resides in the current region.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'Your RAM user is not authorized to manage this resource.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => ''], ], ], 'title' => 'AttachClassicLinkVpc', 'description' => 'When you call this operation, take note of the following items:'."\n" ."\n" .'- The instance that you want to connect to a VPC must be in the **Running** or **Stopped** state.'."\n" ."\n" .'- The ClassicLink feature must be enabled for the destination VPC. For more information, see [Create a ClassicLink connection](~~65413~~).'."\n" ."\n" .'- The instance and the VPC must reside in the same region.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AttachClassicLinkVpc'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:AttachClassicLinkVpc', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:tag', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#vpcId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'AttachDisk' => [ 'summary' => 'Attaches a pay-as-you-go data disk or a system disk to an Elastic Compute Service (ECS) instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28790', 'abilityTreeNodes' => ['FEATUREecs70JNQP'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance to which you want to attach the disk.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i-bp1dq5lozx5f4pmd****', 'title' => ''], ], [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the disk. The disk specified by `DiskId` and the instance specified by `InstanceId` must reside in the same zone.'."\n" ."\n" .'> For information about the limits on attaching a data disk and a system disk, see the "Usage notes" section of this topic.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'd-bp1j4l5axzdy6ftk****', 'title' => ''], ], [ 'name' => 'Device', 'in' => 'query', 'schema' => ['description' => 'The device name of the disk.'."\n" ."\n" .'> This parameter will be removed in the future. We recommend that you use other parameters to ensure future compatibility.', 'type' => 'string', 'required' => false, 'example' => 'testDeviceName', 'title' => ''], ], [ 'name' => 'DeleteWithInstance', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release the disk when the instance is released. Valid values:'."\n" ."\n" .'- true: releases the disk when the instance is released.'."\n" ."\n" .'- false: does not release the disk when the instance is released. The disk is retained as a pay-as-you-go data disk.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'When you specify this parameter, take note of the following items:'."\n" ."\n" .'- If `OperationLocks` in the DescribeInstances response contains `"LockReason" : "security"` for the instance to which the disk is attached, the instance is locked for security reasons. Regardless of whether you set `DeleteWithInstance` to `false`, the DeleteWithInstance setting is ignored, and the disk is released when the instance is released.'."\n" ."\n" .'- If you want to attach an `elastic ephemeral disk`, you must set `DeleteWithInstance` to `true`.'."\n" ."\n" .'- You cannot specify DeleteWithInstance for disks for which the multi-attach feature is enabled.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'Bootable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to attach the disk as the system disk. Valid values:'."\n" ."\n" .'- true: attaches the disk as the system disk.'."\n" ."\n" .'- false: does not attach the disk as the system disk.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> You can set `Bootable` to true only if the instance does not have a system disk.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'Password', 'in' => 'query', 'schema' => ['description' => 'The password that is set when you attach the system disk. The password is applicable only to the administrator and root users. The password must be 8 to 30 characters in length and must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported:'."\n" ."\n" .'```'."\n" .'()`~!@#$%^&*-_+=|{}[]:;\'<>,.?/'."\n" .'```'."\n" ."\n" .'For Windows instances, passwords cannot start with a forward slash (/).'."\n" ."\n" .'> If `Password` is configured, we recommend that you send requests over HTTPS to prevent password leaks.', 'type' => 'string', 'required' => false, 'example' => 'EcsV587!', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the SSH key pair that you bind to the Linux instance when you attach the system disk.'."\n" ."\n" .'- Windows instances do not support logons based on SSH key pairs. The `Password` parameter takes effect even if the KeyPairName parameter is specified.'."\n" ."\n" .'- For Linux instances, the username and password-based logon method is disabled by default.', 'type' => 'string', 'required' => false, 'example' => 'KeyPairTestName', 'title' => ''], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to force attach the disk to the instance. Valid values:'."\n" ."\n" .'- true: force attaches the disk to the instance.'."\n" ."\n" .'- false: does not force attach the disk to the instance.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> You can set this parameter to true only for Regional Enterprise SSDs (ESSDs) (cloud\\_regional\\_disk\\_auto).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidDevice.Malformed', 'errorMessage' => 'The specified device is not valid.', 'description' => ''], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => 'The resource is in a state that does not support the current operation.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The input parameter is mandatory for processing this request is empty.', 'description' => 'A required parameter is not specified.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified RegionId is not valid.', 'description' => ''], ['errorCode' => 'InvalidOperation.InstanceTypeNotSupport', 'errorMessage' => 'The instance type of the specified instance does not support hot attach disk.', 'description' => 'The instance to which the disk is attached does not support the hot swapping of disks.'], ['errorCode' => 'DiskCategory.OperationNotSupported', 'errorMessage' => 'The operation is not supported to the specified disk due to its disk category.', 'description' => 'The specified disk category does not support this operation.'], ['errorCode' => 'InvalidDisk.DiskNotBootable', 'errorMessage' => 'The specified disk is not a bootable disk, can not be attached as system disk.', 'description' => ''], ['errorCode' => 'InvalidInstance.NotOriginInstance', 'errorMessage' => 'The specified disk can not attached to other instance as system disk.', 'description' => ''], ['errorCode' => 'InvalidParameterForce.DiskCategoryNotSupported', 'errorMessage' => 'The specified disk category does not support force attach operation.', 'description' => 'The specified disk category does not support force attach operation.'], ['errorCode' => 'InvalidParameterForce.PrepaidDiskNotSupported', 'errorMessage' => 'The prepaid disk does not support force attach operation.', 'description' => 'The prepaid disk does not support force attach operation.'], ['errorCode' => 'InvalidParameterForce.MultiAttachDiskNotSupported', 'errorMessage' => 'The multi attach disk does not support force attach operation.', 'description' => 'The multi attach disk does not support force attach operation.'], ['errorCode' => 'InvalidParameterForce.RegionNotSupported', 'errorMessage' => 'The specified region does not support force attach operation.', 'description' => 'The specified region does not support force attach operation.'], ['errorCode' => 'OperationConflict.DisksAttachingParallellyExceed', 'errorMessage' => 'The number of disks attaching parallelly exceeds the limit.', 'description' => 'The number of disks attaching parallelly exceeds the limit.'], ['errorCode' => 'InvalidInstanceType.NotSupported', 'errorMessage' => 'The specified instanceType is not supported by the image architecture.', 'description' => 'The specified image schema does not support this instance type.'], ], 403 => [ ['errorCode' => 'InstanceDiskLimitExceeded', 'errorMessage' => 'The amount of the disk on instance in question reach its limits.', 'description' => ''], ['errorCode' => 'InvalidDevice.InUse', 'errorMessage' => 'The specified device has been occupied.', 'description' => ''], ['errorCode' => 'DiskNotPortable', 'errorMessage' => 'The specified disk is not a portable disk.', 'description' => ''], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The instance is locked due to security.', 'description' => 'The operation is not supported while the instance is locked for security reasons.'], ['errorCode' => 'ResourcesNotInSameZone', 'errorMessage' => 'The specified instance and disk are not in the same zone.', 'description' => ''], ['errorCode' => 'InstanceExpiredOrInArrears', 'errorMessage' => 'The specified operation is denied as your prepay instance is expired (prepay mode) or in arrears (afterpay mode).', 'description' => ''], ['errorCode' => 'DiskInArrears', 'errorMessage' => 'The specified operation is denied as your disk owing fee.', 'description' => ''], ['errorCode' => 'DiskError', 'errorMessage' => 'IncorrectDiskStatus.', 'description' => ''], ['errorCode' => 'DiskId.ValueNotSupported', 'errorMessage' => 'The specified parameter diskid is not supported.', 'description' => 'The specified EBS device category does not support the operation.'], ['errorCode' => 'DiskId.StatusNotSupported', 'errorMessage' => 'The specified disk status is not supported.', 'description' => 'The disk is in a state that does not support the current operation.'], ['errorCode' => 'IncorrectInstanceStatus.NotSupportESSD', 'errorMessage' => 'The operation is not supported in this status, please reboot the instance.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus', 'errorMessage' => 'The operation is not supported in this status.', 'description' => 'The disk is in a state that does not support the current operation. Make sure that the disk is available and that your account has no overdue payments.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in disk white list.', 'description' => 'You are not authorized to manage the disk. Try again when you are authorized.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK needs to be enabled.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK needs to be added ECS tag.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'DependencyViolation.WindowsInstance', 'errorMessage' => 'The instance image is windows, cannot use ssh key pair to login.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NotSupportDiskCategory', 'errorMessage' => 'The instanceType of the specified instance does not support this disk category.', 'description' => 'The instance type does not support the current disk category. Try another instance type. For information about the disk categories supported by instance types, see the instance family documentation.'], ['errorCode' => 'InvalidInstanceType.NotSupportPL0', 'errorMessage' => 'The instanceType of the specified instance does not support PL0 of cloud_essd.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NvmeRequired', 'errorMessage' => 'The instanceType of the specified instance requires nvme protocol.', 'description' => 'The instance type of the specified instance requires the NVMe protocol.'], ['errorCode' => 'InvalidInstanceType.NvmeUnsupported', 'errorMessage' => 'The instanceType of the specified instance does not support nvme protocol.', 'description' => 'The instance type of the specified instance does not support the NVMe protocol.'], ['errorCode' => 'InvalidInstanceType.NotSupportMultiAttachDisk', 'errorMessage' => 'The instanceType of the specified instance does not support multi attach disk.', 'description' => 'Disks for which the multi-attach feature is enabled cannot be attached to instances of the specified instance type.'], ['errorCode' => 'DiskAttachedNumberExceeded', 'errorMessage' => 'The attaching times of the specified disk exceeded.', 'description' => 'The specified disk has reached the maximum number of instances to which it can be attached.'], ['errorCode' => 'InvalidOperation.CanNotAttachMultiAttachDiskAsSystemDisk', 'errorMessage' => 'Multi attach disk can not be attached as system disk.', 'description' => 'Disks for which the multi-attach feature is enabled cannot be attached as system disks.'], ['errorCode' => 'DeleteWithInstance.Conflict', 'errorMessage' => 'Multi attach disk cannot be set to DeleteWithInstance attribute.', 'description' => 'Disks for which the multi-attach feature is enabled do not support the DeleteWithInstance attribute.'], ['errorCode' => 'InvalidParameter.DeleteWithInstance', 'errorMessage' => 'The DeleteWithInstance for the elastic ephemeral disk must be set to true.', 'description' => 'The DeleteWithInstance for the elastic ephemeral disk must be set to true.'], ['errorCode' => 'InvalidOperation.OtherInstanceUnsupported', 'errorMessage' => 'The elastic ephemeral disk can only be attached to the instance it was last mounted on, please check the disk\'s system tag to get the last associated instance.', 'description' => 'The elastic ephemeral disk can only be attached to the instance it was last mounted on, please check the disk\'s system tag to get the last associated instance.'], ['errorCode' => 'InvalidInstance.ZoneConflict', 'errorMessage' => 'The force attach operation is not supported when both the current and target instances are in the same zone.', 'description' => 'Forced mount requires that the current instance and the target instance are in different zones'], ['errorCode' => 'InvalidParameter.AllEmpty', 'errorMessage' => 'The current operation requires either a password or a keyPairName to must be provided. Please ensure that at least one of them is not empty.', 'description' => 'The current operation requires either a password or a keyPairName to must be provided. Please ensure that at least one of them is not empty.'], ['errorCode' => 'InvalidOperation.DiskQueueNumberNotEnough', 'errorMessage' => 'The number of disk queues on the instance is not enough.', 'description' => 'The number of disk queues on the instance is not enough.'], ['errorCode' => 'InvalidOperation.DiskAttachModeUnsupported', 'errorMessage' => 'The instance type does not support the disk attach mode.', 'description' => 'The instance type does not support the disk mount mode.'], ['errorCode' => 'OperationDenied.HpnZoneMismatch', 'errorMessage' => 'Instance and disk must be in the same HPN zone for restricted HPN zones.', 'description' => 'Instance and disk must be in the same HPN zone for restricted HPN zones.'], ['errorCode' => 'OperationDenied.UnsupportedEncryptedDisk', 'errorMessage' => 'The instance type does not support attaching encrypted disks.', 'description' => 'The instance type does not support attaching encrypted disks.'], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified disk does not exist.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ['errorCode' => 'InvalidDisk.InUse', 'errorMessage' => 'The specified disk has been occupied.', 'description' => ''], ['errorCode' => 'DiskAttachedNumberExceeded', 'errorMessage' => 'The attaching times of the specified disk exceeded.', 'description' => ''], ['errorCode' => 'InvalidKMSKeyId.NotFound', 'errorMessage' => 'The KMS key used by the disk does not exist.', 'description' => 'The KMS key used by the disk does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'AttachDisk', 'description' => 'Take note of the following items:'."\n" ."\n" .'- The ECS instance and the disk must reside in the same zone.'."\n" ."\n" .'- The disk must be in the **Unattached** (`Available`) state.'."\n" ."\n" .'- When you attach the disk as a data disk to an ECS instance, take note of the following items:'."\n" ."\n" .' - The ECS instance must be in the **Running** (`Running`) or **Stopped** (`Stopped`) state.'."\n" ."\n" .' - If the disk was separately purchased, the billing method of the disk must be pay-as-you-go.'."\n" ."\n" .' - If the disk is a system disk that was detached from an ECS instance, no limits apply to the billing method of the disk.'."\n" ."\n" .' - If the disk is an elastic ephemeral disk that was detached from an ECS instance, the disk can be attached only to the instance.'."\n" ."\n" .'- When you attach the disk as the system disk to an ECS instance, take note of the following items:'."\n" ."\n" .' - The ECS instance must be the original instance from which the system disk was detached.'."\n" ."\n" .' - The ECS instance must be in the **Stopped** (`Stopped`) state.'."\n" ."\n" .' - You must configure logon credentials for the ECS instance.'."\n" ."\n" .' - The disk cannot be an elastic ephemeral disk.'."\n" ."\n" .' - For more information about how to attach a system disk, see [Detach or attach a system disk](~~146752~~).'."\n" ."\n" .'- If the response contains `{"OperationLocks": {"LockReason" : "security"}}` when you query information about an ECS instance, the instance is locked for security reasons. No operations are allowed on the instance.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-21T07:07:53.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-14T07:59:10.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-06T08:29:29.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-30T03:42:36.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-27T07:54:24.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-07-08T01:51:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-05-08T01:30:52.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-11-24T01:41:12.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-03T10:27:28.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AttachDisk'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:AttachDisk', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'ecs:LoginAsNonRoot'], ['conditionKey' => 'ecs:PasswordCustomized'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'AttachInstanceRamRole' => [ 'summary' => 'Attaches an instance Resource Access Management (RAM) role to Elastic Compute Service (ECS) instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '28791', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance RAM role. You can call the [ListRoles](~~28713~~) operation provided by RAM to query the instance RAM roles that you created.', 'type' => 'string', 'required' => true, 'example' => 'testRamRoleName', 'title' => ''], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of ECS instances. You can specify 1 to 100 ECS instances.', 'type' => 'string', 'required' => true, 'example' => '["i-bp14ss25xca5ex1u****","i-bp154z5o1qjalfse****", "i-bp10ws62o04ubhvi****"]', 'title' => ''], ], [ 'name' => 'Policy', 'in' => 'query', 'schema' => ['description' => 'The additional policy. When you attach an instance RAM role to instances, you can specify an additional policy to further limit the permissions of the role. For more information, see [Policy overview](~~93732~~). The value of this parameter must be 1 to 1,024 characters in length.', 'type' => 'string', 'required' => false, 'example' => '{"Statement": [{"Action": ["*"],"Effect": "Allow","Resource": ["*"]}],"Version":"1"}', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RamRoleName' => ['description' => 'The name of the instance RAM role.', 'type' => 'string', 'example' => 'testRamRoleName', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'D9553E4C-6C3A-4D66-AE79-9835AF705639', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances to which you attempted to attach the instance RAM role.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'FailCount' => ['description' => 'The number of instances to which the instance RAM role failed to be attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'AttachInstanceRamRoleResults' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AttachInstanceRamRoleResult' => [ 'description' => 'Details about the results of attaching the instance RAM role.', 'type' => 'array', 'items' => [ 'description' => 'The type of the instance RAM role.', 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Indicates whether the instance RAM role was attached. If the instance RAM role was attached, 200 is returned. If the instance RAM role failed to be attached, any other value is returned. For more information, see the "Error codes" section.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Indicates whether the instance RAM role was attached. If the instance RAM role was attached, success is returned. If the instance RAM role failed to be attached, any other value is returned. For more information, see the "Error codes" section.', 'type' => 'string', 'example' => 'success', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the instance.', 'type' => 'string', 'example' => 'i-bp10ws62o04ubhvi****', 'title' => ''], 'Success' => ['description' => 'Indicates whether the instance RAM role was attached.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidInstanceIds.Malformed', 'errorMessage' => 'The specified instanceIds are not valid.', 'description' => 'Multiple specified instance IDs are invalid.'], ], 403 => [ ['errorCode' => 'InvalidNetworkType.MismatchRamRole', 'errorMessage' => 'Ram role cannot be applied to instances of Classic network type.', 'description' => 'Instance RAM roles can be used only for instances of the VPC type, not for instances of the classic network type.'], ['errorCode' => 'InvalidUser.PassRoleForbidden', 'errorMessage' => 'The RAM user does not have the privilege to pass a RAM role.', 'description' => 'The RAM user is not authorized to pass a RAM role.'], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified instanceId does not exist.', 'description' => ''], ['errorCode' => 'InvalidRamRole.NotFound', 'errorMessage' => 'The specified RAMRoleName does not exist.', 'description' => 'The specified RamRoleName parameter does not exist.'], ['errorCode' => 'InvalidRamRole.NotEcsRole', 'errorMessage' => 'The specified ram role is not authorized for ecs, please check your role policy.', 'description' => ''], ], ], 'title' => 'AttachInstanceRamRole', 'description' => 'You can call the [DescribeInstanceRamRole](~~2679686~~) operation to query the [instance RAM roles](~~61175~~) that are attached to ECS instances.'."\n" ."\n" .'> If an ECS instance already has an instance RAM role, an error is returned when you attach another instance RAM role to the instance.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-07-10T03:17:33.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AttachInstanceRamRole'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:AttachInstanceRamRole', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Role', 'arn' => 'acs:ram:{#regionId}:{#accountId}:role/{#roleName}'], ], ], 'additionalActions' => [ ['action' => 'ram:PassRole', 'validationType' => 'always'], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RamRoleName\\": \\"testRamRoleName\\",\\n \\"RequestId\\": \\"D9553E4C-6C3A-4D66-AE79-9835AF705639\\",\\n \\"TotalCount\\": 1,\\n \\"FailCount\\": 0,\\n \\"AttachInstanceRamRoleResults\\": {\\n \\"AttachInstanceRamRoleResult\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"success\\",\\n \\"InstanceId\\": \\"i-bp10ws62o04ubhvi****\\",\\n \\"Success\\": true\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'AttachKeyPair' => [ 'summary' => 'Bind an SSH key pair to one or more Linux instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28792', 'abilityTreeNodes' => ['FEATUREecsI3PVYS'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the SSH key pair. You can call [DescribeRegions](~~25609~~) to query the most recent region list of Alibaba Cloud.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the SSH key pair.', 'type' => 'string', 'required' => true, 'example' => 'testKeyPairName', 'title' => ''], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of the instances to which you want to bind the SSH key pair. The value can be a JSON array that consists of up to 50 instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => true, 'example' => '["i-bp1gtjxuuvwj17zr****", "i-bp17b7zrsbjwvmfy****", … "i-bp1h6jmbefj1ytos****"]', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances to which the key pair is bound.', 'type' => 'string', 'example' => '2', 'title' => ''], 'FailCount' => ['description' => 'The number of instances to which the key pair failed to be bound.', 'type' => 'string', 'example' => '0', 'title' => ''], 'Results' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Result' => [ 'description' => 'The binding results of the key pair.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The operation status code. A value of 200 indicates that the operation is successful.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The operation message. When Code is 200, the value of Message is successful.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-m5eg7be9ndloji64****', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation is successful.', 'type' => 'string', 'example' => 'true', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidKeyPairName.NotFound', 'errorMessage' => 'The specified KeyPairName does not exist in our records.', 'description' => 'The specified KeyPairName parameter does not exist.'], ['errorCode' => 'InvalidInstanceIds.ValueNotSupported', 'errorMessage' => 'The specified parameter InstanceIds is not valid.', 'description' => 'The specified InstanceIds parameter is invalid.'], ['errorCode' => 'DependencyViolation.IoOptimize', 'errorMessage' => 'The specified parameter InstanceIds is not valid.', 'description' => 'The specified instance ID is invalid. The specified instance is not an I/O optimized instance.'], ], 403 => [ ['errorCode' => 'DependencyViolation.WindowsInstance', 'errorMessage' => 'The instance creating is windows, cannot use ssh key pair to login', 'description' => 'The specified instance is a Windows instance and does not support logons using SSH key pairs.'], ['errorCode' => 'InstanceKeyPairLimitExceeded', 'errorMessage' => 'The specified instances are beyond the permitted range.', 'description' => ''], ], ], 'title' => 'Bind a key pair to Linux instances', 'description' => 'When you call this operation, take note of the following items:'."\n" ."\n" .'- Windows instances do not support SSH key pairs.'."\n" .'- After you bind an SSH key pair to an instance, authentication by using a username and password is disabled.'."\n" .'- If the instance is in the **Running** state, restart the instance ([RebootInstance](~~25502~~)) for the SSH key pair to take effect.'."\n" .'- If the instance is in the **Stopped** state, start the instance ([StartInstance](~~25500~~)) for the SSH key pair to take effect.'."\n" .'- If an SSH key pair is already bound to the instance, the new SSH key pair automatically replaces the original one.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AttachKeyPair'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:AttachKeyPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'KeyPair', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:keypair/{#keypairName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": \\"2\\",\\n \\"FailCount\\": \\"0\\",\\n \\"Results\\": {\\n \\"Result\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"InstanceId\\": \\"i-m5eg7be9ndloji64****\\",\\n \\"Success\\": \\"true\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'AttachNetworkInterface' => [ 'summary' => 'Calls the AttachNetworkInterface operation to attach an Elastic Network Interface (ENI) to a VPC-connected ECS instance. You can specify parameters such as NetworkInterfaceId, InstanceId, and NetworkCardIndex.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29243', 'abilityTreeNodes' => ['FEATUREecsT5S9N2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The network interface controller (NIC) ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'eni-bp17pdijfczax1huji****', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i-bp16qstyvxj9gpqw****', 'title' => ''], ], [ 'name' => 'TrunkNetworkInstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the trunk ENI.'."\n" .'>This parameter is not yet available.', 'type' => 'string', 'required' => false, 'example' => 'eni-f8zapqwj1v1j4ia3****', 'title' => ''], ], [ 'name' => 'WaitForNetworkConfigurationReady', 'in' => 'query', 'schema' => ['description' => '>This parameter is deprecated.', 'type' => 'boolean', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'NetworkCardIndex', 'in' => 'query', 'schema' => ['description' => 'The index of the network card specified for the ENI.'."\n" ."\n" .'>Valid values of NetworkCardIndex depend on the instance family. If the instance type does not support network cards, you cannot specify this parameter. If the instance type supports network cards, see [Instance families](~~25378~~) for valid values.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidRegion', 'errorMessage' => '%s', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEcsState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.DetachPrimaryEniNotAllowed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidOperation.InvalidGeneration', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParams.EniId', 'errorMessage' => '%s', 'description' => 'The specified EniId parameter is invalid.'], ['errorCode' => 'InvalidOperation.UserNotSupportNetworkCard', 'errorMessage' => 'User not support network card.', 'description' => ''], ['errorCode' => 'InvalidOperation.ConnectionTrackingConfigNotSupportMemberEni', 'errorMessage' => 'Member eni not support ConnectionTrackingConfiguration.', 'description' => 'Network connection configurations cannot be specified for member network interfaces.'], ['errorCode' => 'InvalidParameter.NetworkCardIndexInvalid', 'errorMessage' => 'The network card index is invalid or the current ECS/ENI type does not support the value.', 'description' => 'Physical NIC properties do not meet the NIC or instance type restrictions'], ['errorCode' => 'InvalidOperation.InstanceTypeNotSupportRss', 'errorMessage' => 'The ECS instance type does not support Rss.', 'description' => 'The ECS instance type does not support Rss.'], ['errorCode' => 'OperationDenied.NoEniStock', 'errorMessage' => 'The requested resource of ENI is insufficient in the specified ECS, please retry or upgrade to enterprise-level computing instance types.', 'description' => 'The requested resource of ENI is insufficient in the specified ECS, please retry or upgrade to enterprise-level computing instance types.'], ['errorCode' => 'InvalidOperation.InstanceTypeNotSupportSriov', 'errorMessage' => 'The specified instance type does not support ENI Sriov.', 'description' => 'The specified instance type does not support ENI Sriov.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'MaxEniCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be managed has been reached.'], ['errorCode' => 'EniPerInstanceLimitExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be attached to the specified instance has been reached.'], ['errorCode' => 'InvalidOperation.AvailabilityZoneMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.VpcMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check whether the VPC in the operation corresponds to other parameters.'], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSecurityGroupId.NotVpc', 'errorMessage' => '%s', 'description' => 'The specified SecurityGroupId parameter is invalid and the network type of the security group is not VPC.'], ['errorCode' => 'InvalidOperation.InvalidEniType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance does not exist. Check whether the InstanceId parameter is valid.'], ['errorCode' => 'InvalidEni.NotSameVpc', 'errorMessage' => '%s', 'description' => 'The specified resource and the specified ENI do not belong to the same VPC. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.Ipv4CountExceeded', 'errorMessage' => '%s', 'description' => 'The operation is valid because the maximum number of IPv4 addresses has been reached.'], ['errorCode' => 'InvalidOperation.EniServiceManaged', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.MultiGroupType', 'errorMessage' => 'The specified instance can\'t join different types of security group.', 'description' => ''], ['errorCode' => 'InvalidOperation.NotSupportEnterpriseGroup', 'errorMessage' => 'The specified instance type doesn\'t support enterprise level security group.', 'description' => ''], ['errorCode' => 'InvalidOperation.EniCountExceeded', 'errorMessage' => 'The maximum number of eni in a enterprise level security group is exceeded.', 'description' => 'The number of NICs in the enterprise security group exceeds the limit.'], ['errorCode' => 'InvalidOperation.EipBindModel', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.Ipv6NotSupport', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.HotPlugNotSupport', 'errorMessage' => '%s', 'description' => 'The operation is not supported while the specified resource is running. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidInstance.NetworkType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidTrunkEniStatus', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.TrunkingIsNotAllowed', 'errorMessage' => '%s', 'description' => 'The trunk network card is not operational.'], ['errorCode' => 'InvalidOperation.InstanceTypeNotSupportEniTrunking', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.EniTypeNotSupportTrunking', 'errorMessage' => '%s', 'description' => 'The type of the ENI does not support operations related to the trunk mode. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.EniTrunkDeviceFull', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.EniNotBelongTrunk', 'errorMessage' => '%s', 'description' => 'The specified ENI is not in trunk mode. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.EniTypeNotSupportAttachToTrunk', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.EniNotBelongEcs', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.InvalidEniQueueNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.MaxEniQueueNumberExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.ExceedInstanceTypeQueueNumber', 'errorMessage' => '%s', 'description' => 'The maximum number of queues for all ENIs on an instance has been exceeded. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.HighPerformanceTrafficModeNotSupportTrunkEni', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.HighPerformanceTrafficModeNotSupportMemberEni', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InstanceTypeNotSupportHighPerformanceTrafficMode', 'errorMessage' => '%s', 'description' => 'The instance type of the specified instance does not support the NIC of the RDMA communication mode.'], ['errorCode' => 'InvalidOperation.EniTrafficModeNotSupportIpv6', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.MaxEniQueuePairNumberExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.InvalidQueuePairNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.EniQueuePairNumberOverflow', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.HighPerformanceEniPerInstanceLimitExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.Ipv6CountExceeded', 'errorMessage' => '%s.', 'description' => 'The operation is invalid because the number of IPv6 has reached the upper limit.'], ['errorCode' => 'InvalidOperation.PrimaryEniNotExist', 'errorMessage' => 'Primary Eni Not Exist.', 'description' => 'The primary NIC of the instance does not exist.'], ], [ ['errorCode' => 'InvalidEcsId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance ID does not exist.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified security group ID does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ['errorCode' => 'InvalidSecurityGroupId.EniMustHaveSecurityGroup', 'errorMessage' => 'The specified network card does not have an associated security group.', 'description' => 'The specified NIC is not associated with a security group.'], ], ], 'staticInfo' => ['returnType' => 'asynchronous', 'callback' => 'Ecs::2014-05-26::DescribeNetworkInterfaces', 'callbackInterval' => 2000, 'maxCallbackTimes' => 30], 'eventInfo' => [ 'enable' => true, 'eventNames' => ['ecs:NetworkInterface:NetworkInterfaceOperateCompleted'], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Attach an ENI to a VPC-connected instance', 'description' => 'When you call this operation, take note of the following items:'."\n" ."\n" .'- The Elastic Network Interface (ENI) must be in the **active** (`Available`) state. An ENI can be attached to only one instance that resides in the same zone and VPC as the network interface controller (NIC).'."\n" ."\n" .'- The ECS instance must be in the Running or Stopped state. Some ECS instance types require the ECS instance to be in the Stopped state when you attach an Elastic Network Interface (ENI). For more information, see the section about ECS instance types that require the ECS instance to be stopped in [Attach an ENI](~~58503~~).'."\n" ."\n" .' > If the instance was last started before April 1, 2018 (including but not limited to starting a newly purchased instance, restarting, or powering on), you must invoke RebootInstance to restart the instance that has been in the Running state. Otherwise, the network interface controller (NIC) cannot be attached.'."\n" ."\n" .'- Multiple Elastic Network Interfaces (ENIs) can be attached to a single instance at the same time. For more information, see [ENI overview](~~58496~~).'."\n" .' '."\n" .'- The vSwitch to which the network interface controller (NIC) belongs must be in the same zone and VPC as the instance.'."\n" ."\n" .'- This is an asynchronous operation. After a successful invocation, you can check the Elastic Network Interface (ENI) status or listen for network interface controller (NIC) operation events to obtain the result. The ENI state machine is shown in the following figure:'."\n" .'![](https://static-aliyun-doc.oss-cn-hangzhou.aliyuncs.com/file-manage-files/zh-CN/20221124/esgu/AttachNetworkInterface.jpg)'."\n" .' - Attaching indicates that the request to attach the ENI was sent successfully and the ENI is being attached to the ECS instance.'."\n" .' - InUse indicates that the ENI has been attached to the ECS instance.'."\n" .' - Available indicates that the ENI failed to be attached to the ECS instance.'."\n" ."\n" .'**For details, see** [Attach a network interface controller (NIC)](~~471550~~).', 'changeSet' => [ ['createdAt' => '2025-06-18T09:14:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-09T05:47:01.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-12T11:03:31.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-05-08T12:35:43.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-05-07T06:51:13.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-01-04T03:05:22.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AttachNetworkInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:AttachNetworkInterface', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'AuthorizeSecurityGroup' => [ 'summary' => 'Adds one or more inbound rules to a security group. You can use this operation to specify inbound access permissions for a security group, allowing or denying other devices from sending inbound traffic to instances in the security group, which enables fine-grained network access control.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29244', 'abilityTreeNodes' => ['FEATUREecsN1X6QX'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Permissions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The security group rules. Array length: 1 to 100.', 'type' => 'array', 'items' => [ 'description' => 'The security group rule.', 'type' => 'object', 'properties' => [ 'Policy' => ['description' => 'Settings for access permissions. Valid values:'."\n" ."\n" .'- accept: accepts access.'."\n" ."\n" .'- drop: denies access and does not return a deny message. The request appears to timeout or the connection cannot be established.'."\n" ."\n" .'Default value: accept.', 'type' => 'string', 'required' => false, 'example' => 'accept', 'title' => ''], 'Priority' => ['description' => 'The priority of the security group rule. A smaller value indicates a higher priority. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], 'IpProtocol' => ['description' => 'The network layer or transport layer protocol. Two types of values are supported:'."\n" .'1. Case-insensitive protocol names. Valid values:'."\n" .'- ICMP'."\n" .'- GRE'."\n" .'- TCP'."\n" .'- UDP'."\n" .'- ALL: all protocols.'."\n" .'2. Protocol numbers that comply with IANA specifications, which are integers from 0 to 255. The following regions currently support this feature:'."\n" .'- Philippines'."\n" .'- UK'."\n" .'- Malaysia'."\n" .'- China (Hohhot)'."\n" .'- China (Qingdao)'."\n" .'- US (Virginia)'."\n" .'- Singapore', 'type' => 'string', 'required' => false, 'example' => 'ALL', 'title' => ''], 'SourceCidrIp' => ['description' => 'The source IPv4 CIDR block for which you want to set access permissions. Settings for CIDR format and IPv4 format address ranges are supported.', 'type' => 'string', 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], 'Ipv6SourceCidrIp' => ['description' => 'The source IPv6 CIDR block for which you want to set access permissions. Settings for CIDR format and IPv6 format address ranges are supported.'."\n" ."\n" .'> This parameter is valid only for VPC-connected ECS instances that support IPv6. This parameter and `SourceCidrIp` cannot be specified at the same time.', 'type' => 'string', 'required' => false, 'example' => '2001:250:6000::***', 'title' => ''], 'SourceGroupId' => ['description' => 'The ID of the source security group for which you want to set access permissions.'."\n" ."\n" .'- You must specify at least one of the following parameters: `SourceGroupId`, `SourceCidrIp`, `Ipv6SourceCidrIp`, or `SourcePrefixListId`.'."\n" ."\n" .'- If `SourceGroupId` is specified but `SourceCidrIp` or `Ipv6SourceCidrIp` is not specified, the `NicType` parameter can only be set to `intranet`.'."\n" ."\n" .'- If both `SourceGroupId` and `SourceCidrIp` are specified, `SourceCidrIp` takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'SourcePrefixListId' => ['description' => 'The ID of the source prefix list for which you want to set access permissions. You can call [DescribePrefixLists](~~205046~~) to query available prefix list IDs.'."\n" ."\n" .'Notes:'."\n" ."\n" .'If you specify `SourceCidrIp`, `Ipv6SourceCidrIp`, or `SourceGroupId`, this parameter is ignored.'."\n" ."\n" .'For more information, see [Security group limits](~~25412#SecurityGroupQuota1~~).', 'type' => 'string', 'required' => false, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], 'PortRange' => ['description' => 'The range of destination ports that correspond to the protocol for the security group. Valid values:'."\n" ."\n" .'- TCP/UDP: Valid values are 1 to 65535. Separate the start port and the stop port with a forward slash (/). Example: 1/200.'."\n" .'- ICMP: -1/-1.'."\n" .'- GRE: -1/-1.'."\n" .'- ALL: -1/-1.'."\n" ."\n" .'For more information about common ports, see [Common scenarios for ports](~~40724~~).', 'type' => 'string', 'required' => false, 'example' => '80/80', 'title' => ''], 'DestCidrIp' => ['description' => 'The destination IPv4 CIDR block. CIDR blocks and IPv4 address ranges are supported.'."\n" ."\n" .'This parameter is used to support quintuple rules. For more information, see [Security group quintuple rules](~~97439~~).', 'type' => 'string', 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], 'Ipv6DestCidrIp' => ['description' => 'The destination IPv6 CIDR block. CIDR format and IPv6 format address ranges are supported.'."\n" ."\n" .'This parameter is used to support quintuple rules. For more information, see [Security group quintuple rules](~~97439~~).'."\n" ."\n" .'> This parameter is valid only for VPC-connected ECS instances that support IPv6. This parameter and `DestCidrIp` cannot be specified at the same time.', 'type' => 'string', 'required' => false, 'example' => '2001:250:6000::***', 'title' => ''], 'SourcePortRange' => ['description' => 'The range of source ports that correspond to the protocol for the security group. Valid values:'."\n" ."\n" .'- TCP/UDP: Valid values are 1 to 65535. Separate the start port and the end port with a forward slash (/). Example: 1/200.'."\n" .'- ICMP: -1/-1.'."\n" .'- GRE: -1/-1.'."\n" .'- ALL: -1/-1.'."\n" ."\n" .'This parameter is used to support quintuple rules. For more information, see [Security group quintuple rules](~~97439~~).', 'type' => 'string', 'required' => false, 'example' => '7000/8000', 'title' => ''], 'SourceGroupOwnerAccount' => ['description' => 'The Alibaba Cloud account that owns the source security group when you set a cross-account security group rule.'."\n" ."\n" .'- If neither `SourceGroupOwnerAccount` nor `SourceGroupOwnerId` is set, access permissions are configured for another security group within your account.'."\n" ."\n" .'- If the `SourceCidrIp` parameter is set, the `SourceGroupOwnerAccount` parameter is ignored.', 'type' => 'string', 'required' => false, 'example' => 'test@aliyun.com', 'title' => ''], 'SourceGroupOwnerId' => ['description' => 'The ID of the Alibaba Cloud account that owns the source security group when you set a cross-account security group rule.'."\n" ."\n" .'- If neither `SourceGroupOwnerAccount` nor `SourceGroupOwnerId` is set, access permissions are configured for another security group within your account.'."\n" ."\n" .'- If the `SourceCidrIp` parameter is set, the `SourceGroupOwnerAccount` parameter is ignored.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1234567890', 'title' => ''], 'NicType' => ['description' => 'The network interface controller (NIC) type for a classic network type security group rule. Valid values:'."\n" ."\n" .'- internet: public network interface controller (NIC).'."\n" ."\n" .'- intranet: internal network interface controller (NIC).'."\n" ."\n" .'For VPC security group rules, you do not need to set the network interface controller (NIC) type parameter. The default value is intranet, and only intranet is supported.'."\n" ."\n" .'When you set security groups to access each other (only DestGroupId is specified), only intranet is supported.'."\n" ."\n" .'Default value: internet.', 'type' => 'string', 'required' => false, 'example' => 'intranet', 'title' => ''], 'Description' => ['description' => 'The description of the security group rule. The description must be 1 to 512 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], 'PortRangeListId' => ['description' => 'The port address book ID.'."\n" .'You can invoke `DescribePortRangeLists` to query available port address book IDs.'."\n" .'- If you specify `Permissions.N.PortRange`, this parameter is ignored.'."\n" .'- Port address books are not supported for security groups with the classic network type. For more information about security group and port address book limits, see [Security group limits](~~25412#SecurityGroupQuota1~~). Settings for port address books are not available for classic network security groups.', 'type' => 'string', 'required' => false, 'example' => 'prl-2ze9743****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'Policy', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Policy` to set access permissions.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'accept', 'title' => ''], ], [ 'name' => 'Priority', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Priority` to specify the security group rule priority.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'IpProtocol', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.IpProtocol` to specify the protocol type.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'docRequired' => false, 'example' => 'ALL', 'title' => ''], ], [ 'name' => 'SourceCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourceCidrIp` to specify the source IPv4 Classless Inter-Domain Routing block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], ], [ 'name' => 'Ipv6SourceCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Ipv6SourceCidrIp` to specify the source IPv6 Classless Inter-Domain Routing block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '2001:250:6000::***', 'title' => ''], ], [ 'name' => 'SourceGroupId', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourceGroupId` to specify the source security group ID.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SourcePrefixListId', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourcePrefixListId` to specify the source prefix list ID.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], ], [ 'name' => 'PortRange', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.PortRange` to specify the port range.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'docRequired' => false, 'example' => '22/22', 'title' => ''], ], [ 'name' => 'DestCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.DestCidrIp` to specify the destination IPv4 CIDR block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], ], [ 'name' => 'Ipv6DestCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Ipv6DestCidrIp` to specify the destination IPv6 CIDR block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'SourcePortRange', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourcePortRange` to specify the source port range.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '22/22', 'title' => ''], ], [ 'name' => 'SourceGroupOwnerAccount', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourceGroupOwnerAccount` to specify the Alibaba Cloud account that owns the source security group.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'test@aliyun.com', 'title' => ''], ], [ 'name' => 'SourceGroupOwnerId', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourceGroupOwnerId` to specify the ID of the Alibaba Cloud account that owns the source security group.', 'type' => 'integer', 'format' => 'int64', 'deprecated' => true, 'required' => false, 'example' => '1234567890', 'title' => ''], ], [ 'name' => 'NicType', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.NicType` to specify the NIC type.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'intranet', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Description` to specify the description of the security group rule.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'This is description.', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified IpProtocol does not exist or IpProtocol and PortRange do not match.', 'description' => 'The specified IP protocol does not exist or does not match the specified port range.'], ['errorCode' => 'InvalidIpProtocol.Malformed', 'errorMessage' => 'The specified parameter PortRange is not valid.', 'description' => 'The specified IpProtocol or PortRange parameter is invalid.'], ['errorCode' => 'InvalidSourceCidrIp.Malformed', 'errorMessage' => 'The specified parameter SourceCidrIp is not valid.', 'description' => 'The specified source CIDR block is invalid.'], ['errorCode' => 'InvalidPolicy.Malformed', 'errorMessage' => 'The specified parameter Policy is not valid.', 'description' => 'The specified Policy parameter is invalid.'], ['errorCode' => 'InvalidNicType.ValueNotSupported', 'errorMessage' => 'The specified NicType does not exist.', 'description' => 'The specified NicType parameter does not exist.'], ['errorCode' => 'InvalidNicType.Mismatch', 'errorMessage' => 'The specified NicType conflicts with the authorization record.', 'description' => 'The specified NIC type does not match the existing rule.'], ['errorCode' => 'InvalidSourceGroupId.Mismatch', 'errorMessage' => 'Specified security group and source group are not in the same VPC.', 'description' => 'The specified source and destination security groups do not belong to the same VPC.'], ['errorCode' => 'InvalidSourceGroup.NotFound', 'errorMessage' => 'Specified source security group does not exist.', 'description' => 'The specified inbound security group rule does not exist, or required parameters are not specified.'], ['errorCode' => 'InvalidPriority.Malformed', 'errorMessage' => 'The parameter Priority is invalid.', 'description' => 'The specified Priority parameter is invalid.'], ['errorCode' => 'InvalidPriority.ValueNotSupported', 'errorMessage' => 'The specified parameter %s is invalid.', 'description' => 'The specified Priority parameter is invalid.'], ['errorCode' => 'InvalidSecurityGroupDiscription.Malformed', 'errorMessage' => 'The specified security group rule description parameter %s is not valid.', 'description' => 'The specified security group rule description is invalid.'], ['errorCode' => 'InvalidSecurityGroup.InvalidNetworkType', 'errorMessage' => 'The specified security group network type is not support this operation, please check the security group network types. For VPC security groups, ClassicLink must be enabled.', 'description' => 'The operation is not supported while the security group is of the current network type. If the network type is VPC, ClassicLink must be enabled.'], ['errorCode' => 'MissingParameter.Source', 'errorMessage' => 'One of the parameters SourceCidrIp, Ipv6SourceCidrIp, SourceGroupId or SourcePrefixListId in %s must be specified.', 'description' => 'At least one of the SourceCidrIp, SourceGroupId, and SourcePrefixListId parameters must be specified.'], ['errorCode' => 'InvalidParam.PortRange', 'errorMessage' => 'The specified parameter %s is not valid. It should be two integers less than 65535 in ?/? format.', 'description' => 'The format of the port range is invalid. Specify the port range in the format of a slash separating two integers.'], ['errorCode' => 'InvalidIpProtocol.ValueNotSupported', 'errorMessage' => 'The parameter %s must be specified with case insensitive TCP, UDP, ICMP, GRE or All.', 'description' => 'The specified Protocol parameter is invalid. You must set Protocol to a vaule that is case-insensitive, such as TCP, UDP, ICMP, GRE, and All.'], ['errorCode' => 'InvalidSecurityGroupId.Malformed', 'errorMessage' => 'The specified parameter SecurityGroupId is not valid.', 'description' => 'The specified SecurityGroupId parameter is invalid.'], ['errorCode' => 'InvalidParamter.Conflict', 'errorMessage' => 'The specified SourceCidrIp should be different from the DestCidrIp.', 'description' => 'The value of SourceCidrIp must be different from that of DestCidrIp.'], ['errorCode' => 'InvalidSourcePortRange.Malformed', 'errorMessage' => 'The specified parameter SourcePortRange is not valid.', 'description' => 'The specified SourcePortRange parameter is invalid.'], ['errorCode' => 'InvalidPortRange.Malformed', 'errorMessage' => 'The specified parameter PortRange must set.', 'description' => 'The PortRange parameter must be specified.'], ['errorCode' => 'InvalidParam.SourceIp', 'errorMessage' => 'The Parameters SourceCidrIp and Ipv6SourceCidrIp in %s cannot be set at the same time.', 'description' => 'The SourceCidrIp and Ipv6SourceCidrIp parameters cannot be specified at the same time.'], ['errorCode' => 'InvalidParam.DestIp', 'errorMessage' => 'The Parameters DestCidrIp and Ipv6DestCidrIp in %s cannot be set at the same time.', 'description' => 'The DestCidrIp and Ipv6DestCidrIp parameters cannot be specified at the same time.'], ['errorCode' => 'InvalidParam.Ipv6DestCidrIp', 'errorMessage' => 'The specified parameter %s is not valid.', 'description' => 'The specified Ipv6DestCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParam.Ipv6SourceCidrIp', 'errorMessage' => 'The specified parameter %s is not valid.', 'description' => 'The specified Ipv6SourceCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParam.Ipv4ProtocolConflictWithIpv6Address', 'errorMessage' => 'IPv6 address cannot be specified for IPv4-specific protocol.', 'description' => 'IPv6 addresses cannot be specified for instances that use the IPv4 protocol.'], ['errorCode' => 'InvalidParam.Ipv6ProtocolConflictWithIpv4Address', 'errorMessage' => 'IPv4 address cannot be specified for IPv6-specific protocol.', 'description' => 'IPv4 addresses cannot be specified for instances that use the IPv6 protocol.'], ['errorCode' => 'InvalidParameter.Ipv6CidrIp', 'errorMessage' => 'The specified Ipv6CidrIp is not valid.', 'description' => 'The specified Ipv6CidrIp parameter is invalid.'], ['errorCode' => 'InvalidGroupAuthParameter.OperationDenied', 'errorMessage' => 'The security group can not authorize to enterprise level security group.', 'description' => 'Security groups cannot be referenced as authorization objects (destinations or sources) in rules of advanced security groups.'], ['errorCode' => 'InvalidDestCidrIp.Malformed', 'errorMessage' => 'The specified parameter DestCidrIp is not valid.', 'description' => 'The specified DestCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'IPv6 and IPv4 addresses cannot exist at the same time.', 'description' => 'IPv6 and IPv4 addresses cannot be both specified.'], ['errorCode' => 'InvalidParam.PrefixListAddressFamilyMismatch', 'errorMessage' => 'The address family of the specified prefix list does not match the specified CidrIp.', 'description' => 'The address family of the specified prefix list does not match that of the specified CIDR block.'], ['errorCode' => 'NotSupported.ClassicNetworkPrefixList', 'errorMessage' => 'The prefix list is not supported when the network type of security group is classic.', 'description' => 'Security groups in the classic network do not support prefix lists.'], ['errorCode' => 'AuthorizedGroupRule.LimitExceed', 'errorMessage' => 'You have reached the limit on the number of group authorization rules that you can add to a security group.When authorization object of rule is security group, the limit is 20.', 'description' => 'Up to 20 rules in which security groups are specified as authorization objects can be present in a basic security group.'], ['errorCode' => 'InvalidParam.SourceCidrIp', 'errorMessage' => 'The specified parameter %s is not valid.', 'description' => 'The specified SourceCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParam.DestCidrIp', 'errorMessage' => 'The specified parameter %s is not valid.', 'description' => 'The specified DestCidrIp parameter is invalid.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParam.Permissions', 'errorMessage' => 'The specified parameter Permissions cannot coexist with other parameters.', 'description' => 'The specified Permissions parameter and other parameters are mutually exclusive.'], ['errorCode' => 'InvalidParam.DuplicatePermissions', 'errorMessage' => 'There are duplicate permissions in the specified parameter Permissions.', 'description' => 'The specified Permissions parameter contains duplicate permissions.'], ['errorCode' => 'InvalidGroupParameter.OperationDenied', 'errorMessage' => 'The attributes Policy, SourceGroupId, DestGroupId of enterprise level security groups are not allowed to be set or modified.', 'description' => 'The attributes Policy, SourceGroupId, DestGroupId of enterprise level security groups are not allowed to be set or modified.'], ['errorCode' => 'InvalidParam.ProtocolNotSupportPortRangeList', 'errorMessage' => 'The specified protocol does not support the port range list.', 'description' => 'The specified protocol does not support the port list.'], ['errorCode' => 'InvalidPortRangeListId.NotFound', 'errorMessage' => 'The specified port range list was not found.', 'description' => 'The specified port list was not found.'], ], [ ['errorCode' => 'InvalidOperation.SecurityGroupNotAuthorized', 'errorMessage' => 'The specified security group is not authorized to operate.', 'description' => 'You do not have permission to operate the current security group.'], ], 403 => [ ['errorCode' => 'InvalidSourceGroupId.Mismatch', 'errorMessage' => 'NicType is required or NicType expects intranet.', 'description' => 'The NicType parameter is not specified or is not set to intranet.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter SourceGroupId or SourceCidrIp cannot be both blank.', 'description' => 'At least one of the SourceGroupId and SourceCidrIp parameters must be specified.'], ['errorCode' => 'AuthorizationLimitExceed', 'errorMessage' => 'The limit of authorization records in the security group reaches.', 'description' => ''], ['errorCode' => 'InvalidParamter.Conflict', 'errorMessage' => 'The specified SecurityGroupId should be different from the SourceGroupId.', 'description' => 'The destination security group is the same as the source security group.'], ['errorCode' => 'InvalidNetworkType.Mismatch', 'errorMessage' => 'The specified SecurityGroup network type should be same with SourceGroup network type (vpc or classic).', 'description' => 'The network type of the destination security group is different from that of the source security group.'], ['errorCode' => 'InvalidNetworkType.Conflict', 'errorMessage' => 'The specified SecurityGroup network type should be same with SourceGroup network type (vpc or classic).', 'description' => 'The network type of the destination security group is different from that of the source security group.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ['errorCode' => 'LimitExceed.PrefixListAssociationResource', 'errorMessage' => 'The number of resources associated with the prefix list exceeds the limit.', 'description' => 'The maximum number of resources that can be associated with the prefix list has been exceeded.'], ], [ ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => 'The specified SecurityGroupId does not exist.', 'description' => 'The specified security group does not exist in this account. Check whether the security group ID is correct.'], ['errorCode' => 'InvalidSourceGroupId.NotFound', 'errorMessage' => 'The SourceGroupId provided does not exist in our records.', 'description' => 'The specified SourceGroupId parameter does not exist.'], ['errorCode' => 'InvalidPrefixListId.NotFound', 'errorMessage' => 'The specified prefix list was not found.', 'description' => 'The prefix list does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => 'Add inbound security group rules', 'description' => '### Before you begin'."\n" .'- **Quantity limit:** The total number of security group rules (including inbound rules and outbound rules) across all security groups associated with a single network interface controller (NIC) cannot exceed 1,000. For more information, see [Security group limits](~~25412#SecurityGroupQuota1~~). '."\n" .'- **Priority settings:** The priority (Priority) of inbound security group rules ranges from 1 to 100. A smaller number indicates a higher priority. If two security group rules have the same priority, the deny (drop) rule takes precedence. Access is denied first.'."\n" ."\n" .'### Notes'."\n" .'If the specified security group rule already exists, the call succeeds but no rule is added.'."\n" ."\n" .'### How to determine a rule'."\n" ."\n" .'The following parameters are required to determine an inbound security group rule:'."\n" ."\n" .'- Source settings: Specify one of the following: SourceCidrIp (IPv4 address), Ipv6SourceCidrIp (IPv6 address), SourcePrefixListId (prefix list ID), or SourceGroupId (source security group).'."\n" .'- Destination port range: PortRange.'."\n" .'- Protocol type: IpProtocol.'."\n" .'- Access policy: Policy.'."\n" ."\n" .'> Advanced security groups do not support authorization for access from other security groups. Basic security groups support a maximum of 20 authorized security groups.'."\n" ."\n" .'### Request examples'."\n" ."\n" .'The following examples show how to add inbound rules with different sources to a security group in the China (Hangzhou) region:'."\n" ."\n" .' - Add access permissions for a specified IP address range.'."\n" ."\n" .' ```'."\n" .' "RegionId":"cn-hangzhou", // Specify the region.'."\n" .' "SecurityGroupId":"sg-bp67acfmxazb4p****", // Specify the security group.'."\n" .' "Permissions":['."\n" .' {'."\n" .' "SourceCidrIp":"10.0.0.0/8", // Specify the source IPv4 address.'."\n" .' "PortRange":"22/22", // Specify the port range.'."\n" .' "IpProtocol":"TCP", // Specify the protocol type.'."\n" .' "Policy":"Accept" // Specify the access policy.'."\n" .' }'."\n" .' ]'."\n" .' ```'."\n" ."\n" .' - Add access permissions for another security group and a prefix list.'."\n" ."\n" .' ```'."\n" .' "RegionId":"cn-hangzhou",'."\n" .' "SecurityGroupId":"sg-bp67acfmxazb4p****",'."\n" .' "Permissions":['."\n" .' {'."\n" .' "SourceGroupId":"sg-bp17vs63txqxbd****", // Specify the source security group.'."\n" .' "PortRange":"22/22",'."\n" .' "IpProtocol":"TCP",'."\n" .' "Policy":"Drop"'."\n" .' },{'."\n" .' "SourcePrefixListId":"pl-x1j1k5ykzqlixdcy****", // Specify the source prefix list.'."\n" .' "PortRange":"22/22",'."\n" .' "IpProtocol":"TCP",'."\n" .' "Policy":"Drop"'."\n" .' }'."\n" .' ]'."\n" .' ```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-04-01T08:24:57.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-12-04T10:04:25.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-01-25T05:30:53.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-11-21T02:00:24.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-04-07T05:09:07.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-01-05T11:53:04.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-09-05T06:43:14.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-07-15T06:13:06.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-07-13T02:03:11.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2022-03-30T11:51:18.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-03-30T11:51:18.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AuthorizeSecurityGroup'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:AuthorizeSecurityGroup', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'ecs:SecurityGroupIpProtocols'], ['conditionKey' => 'ecs:SecurityGroupSourceCidrIps'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'AuthorizeSecurityGroupEgress' => [ 'summary' => 'Adds one or more outbound rules to a security group. You can use this operation to specify outbound access permissions for a security group, allowing or denying instances in the security group from sending outbound traffic to other devices, which enables fine-grained network access control.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29245', 'abilityTreeNodes' => ['FEATUREecsN1X6QX'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the source security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the source security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the source security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000 ', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000 ', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Permissions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The security group rules. Array length: 1 to 100.', 'type' => 'array', 'items' => [ 'description' => 'The security group permission rule.', 'type' => 'object', 'properties' => [ 'Policy' => ['description' => 'The access permission settings. Valid values: '."\n" .' '."\n" .'- accept: Accepts access.'."\n" .'- drop: Denies access and does not return a deny message. The request times out or a timeout error similar to a connection failure is returned.'."\n" ."\n" .'Default value: accept.', 'type' => 'string', 'required' => false, 'example' => 'accept', 'title' => ''], 'Priority' => ['description' => 'The priority of the security group rule. A smaller value indicates a higher priority. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], 'IpProtocol' => ['description' => 'The network-layer or transport-layer protocol. Two types of values are supported:'."\n" .'1. Case-insensitive protocol names. Valid values:'."\n" .'- ICMP'."\n" .'- GRE'."\n" .'- TCP'."\n" .'- UDP'."\n" .'- ALL: All protocols are supported.'."\n" .'2. Protocol numbers that comply with IANA specifications, which are integers from 0 to 255. The following regions currently support this feature:'."\n" .'- Philippines'."\n" .'- UK'."\n" .'- Malaysia'."\n" .'- Hohhot'."\n" .'- Qingdao'."\n" .'- US West'."\n" .'- Singapore', 'type' => 'string', 'required' => false, 'example' => 'ALL', 'title' => ''], 'DestCidrIp' => ['description' => 'The destination IPv4 Classless Inter-Domain Routing (CIDR) block for which you want to configure access permission settings. Both CIDR format and IPv4 format address ranges are supported.', 'type' => 'string', 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], 'Ipv6DestCidrIp' => ['description' => 'The destination IPv6 Classless Inter-Domain Routing (CIDR) block for which you want to configure access permission settings. Both CIDR format and IPv6 format address ranges are supported.'."\n" ."\n" .'> This parameter is valid only for VPC-type ECS instances that support IPv6. This parameter and `DestCidrIp` cannot be specified at the same time.', 'type' => 'string', 'required' => false, 'example' => '2001:db8:1233:1a00::***', 'title' => ''], 'DestGroupId' => ['description' => 'The ID of the destination security group for which you want to set access permissions.'."\n" ."\n" .'- You must specify at least one of the following parameters: `DestGroupId`, `DestCidrIp`, `Ipv6DestCidrIp`, or `DestPrefixListId`.'."\n" ."\n" .'- If `DestGroupId` is specified but `DestCidrIp` is not, the `NicType` parameter can only be set to intranet.'."\n" ."\n" .'- If both `DestGroupId` and `DestCidrIp` are specified, `DestCidrIp` takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'DestPrefixListId' => ['description' => 'The ID of the destination prefix list for which you want to set access permissions. You can call [DescribePrefixLists](~~205046~~) to query available prefix list IDs.'."\n" ."\n" .'Notes:'."\n" ."\n" .'If you specify one of the `DestCidrIp`, `Ipv6DestCidrIp`, or `DestGroupId` parameters, this parameter is ignored.'."\n" ."\n" .'For more information, see [Security group limits](~~25412#SecurityGroupQuota1~~).', 'type' => 'string', 'required' => false, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], 'PortRange' => ['description' => 'The range of destination ports that correspond to the protocol for the security group. Valid values:'."\n" .' '."\n" .'- TCP/UDP: Valid values are 1 to 65535. Separate the start port and the end port with a forward slash (/). Example: 1/200.'."\n" .'- ICMP: -1/-1.'."\n" .'- GRE: -1/-1.'."\n" .'- ALL: -1/-1.', 'type' => 'string', 'required' => false, 'example' => '80/80', 'title' => ''], 'SourceCidrIp' => ['description' => 'The source IPv4 CIDR block. Both CIDR format and IPv4 format address ranges are supported.'."\n" ."\n" .'This parameter is used to support quintuple rules. For more information, see [Security group quintuple rules](~~97439~~).', 'type' => 'string', 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], 'Ipv6SourceCidrIp' => ['description' => 'The source IPv6 CIDR block. Both CIDR format and IPv6 format address ranges are supported. '."\n" ."\n" .'This parameter is used to support quintuple rules. For more information, see [Security group quintuple rules](~~97439~~).'."\n" ."\n" .'> This parameter is valid only for VPC-type ECS instances that support IPv6. This parameter and `DestCidrIp` cannot be specified at the same time.', 'type' => 'string', 'required' => false, 'example' => '2001:db8:1234:1a00::***', 'title' => ''], 'SourcePortRange' => ['description' => 'The range of source ports that correspond to the protocol for the security group. Valid values:'."\n" .' '."\n" .'- TCP/UDP: Valid values are 1 to 65535. Separate the start port and the end port with a forward slash (/). Example: 1/200.'."\n" .'- ICMP: -1/-1.'."\n" .'- GRE: -1/-1.'."\n" .'- ALL: -1/-1.'."\n" ."\n" .'This parameter is used to support quintuple rules. For more information, see [Security group quintuple rules](~~97439~~).', 'type' => 'string', 'required' => false, 'example' => '80/80', 'title' => ''], 'DestGroupOwnerAccount' => ['description' => 'The Alibaba Cloud account that manages the destination security group when you configure a cross-account security group rule settings. '."\n" .' '."\n" .'- If neither `DestGroupOwnerAccount` nor `DestGroupOwnerId` is specified, the access permissions are configured for another security group within your account.'."\n" .'- If the `DestCidrIp` parameter is specified, the `DestGroupOwnerAccount` parameter is ignored.', 'type' => 'string', 'required' => false, 'example' => 'Test@aliyun.com', 'title' => ''], 'DestGroupOwnerId' => ['description' => 'The ID of the Alibaba Cloud account that manages the destination security group when you configure a cross-account security group rule settings. '."\n" .' '."\n" .'- If neither `DestGroupOwnerId` nor `DestGroupOwnerAccount` is specified, the access permissions are configured for another security group within your account.'."\n" .'- If the `DestCidrIp` parameter is specified, the `DestGroupOwnerId` parameter is ignored.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '12345678910', 'title' => ''], 'NicType' => ['description' => 'The network interface controller (NIC) type settings for a classic network security group rule. Valid values: '."\n" .' '."\n" .'- internet: public network interface controller (NIC).'."\n" .'- intranet: internal network interface controller (NIC).'."\n" .' - For VPC-type security group rules, you do not need to configure the network interface controller (NIC) type settings. The default value is intranet.'."\n" .' - When you configure security groups to access each other, meaning only the DestGroupId parameter is specified, the value can only be intranet.'."\n" ."\n" .'Default value: internet.', 'type' => 'string', 'required' => false, 'example' => 'intranet', 'title' => ''], 'Description' => ['description' => 'The description of the security group rule. The description must be 1 to 512 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], 'PortRangeListId' => ['description' => 'The port list ID.'."\n" .'You can invoke `DescribePortRangeLists` to query available port list IDs.'."\n" .'- If you specify `Permissions.N.PortRange`, this parameter is ignored.'."\n" .'- Port lists are not supported for classic network security group settings. For more information about security group and port list limits, see [Security group limits](~~25412#SecurityGroupQuota1~~).', 'type' => 'string', 'required' => false, 'example' => 'prl-2ze9743****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'Policy', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Policy` to configure the access permission settings.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'accept', 'title' => ''], ], [ 'name' => 'Priority', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Priority` to specify the rule priority.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'IpProtocol', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.IpProtocol` to specify the protocol type.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'docRequired' => false, 'example' => 'ALL', 'title' => ''], ], [ 'name' => 'DestCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.DestCidrIp` to specify the destination IPv4 Classless Inter-Domain Routing (CIDR) block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], ], [ 'name' => 'Ipv6DestCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Ipv6DestCidrIp` to specify the destination IPv6 Classless Inter-Domain Routing (CIDR) block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '2001:db8:1233:1a00::***', 'title' => ''], ], [ 'name' => 'DestGroupId', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.DestGroupId` to specify the destination security group ID.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DestPrefixListId', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.DestPrefixListId` to specify the source prefix list ID.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], ], [ 'name' => 'PortRange', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.PortRange` to specify the port range.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'docRequired' => false, 'example' => '80/80', 'title' => ''], ], [ 'name' => 'SourceCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourceCidrIp` to specify the source IPv4 CIDR block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '10.0.0.0/8', 'title' => ''], ], [ 'name' => 'Ipv6SourceCidrIp', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Ipv6SourceCidrIp` to specify the source IPv6 CIDR block.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '2001:db8:1234:1a00::***', 'title' => ''], ], [ 'name' => 'SourcePortRange', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.SourcePortRange` to specify the source port range.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => '80/80', 'title' => ''], ], [ 'name' => 'DestGroupOwnerAccount', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.DestGroupOwnerAccount` to specify the Alibaba Cloud account that manages the destination security group.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'Test@aliyun.com', 'title' => ''], ], [ 'name' => 'DestGroupOwnerId', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.DestGroupOwnerId` to specify the ID of the Alibaba Cloud account that manages the destination security group.', 'type' => 'integer', 'format' => 'int64', 'deprecated' => true, 'required' => false, 'example' => '12345678910', 'title' => ''], ], [ 'name' => 'NicType', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.NicType` to specify the NIC type.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'intranet', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'Deprecated. Use `Permissions.N.Description` to specify the rule description.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'This is description.', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified IpProtocol does not exist or IpProtocol and PortRange do not match.', 'description' => 'The specified IP protocol does not exist or does not match the specified port range.'], ['errorCode' => 'InvalidIpProtocol.Malformed', 'errorMessage' => 'The specified parameter PortRange is not valid.', 'description' => 'The specified IpProtocol or PortRange parameter is invalid.'], ['errorCode' => 'InvalidDestCidrIp.Malformed', 'errorMessage' => 'The specified parameter DestCidrIp is not valid.', 'description' => 'The specified DestCidrIp parameter is invalid.'], ['errorCode' => 'InvalidPolicy.Malformed', 'errorMessage' => 'The specified parameter Policy is not valid.', 'description' => 'The specified Policy parameter is invalid.'], ['errorCode' => 'InvalidNicType.ValueNotSupported', 'errorMessage' => 'The specified NicType does not exist.', 'description' => 'The specified NicType parameter does not exist.'], ['errorCode' => 'InvalidNicType.Mismatch', 'errorMessage' => 'The specified NicType conflicts with the authorization record.', 'description' => 'The specified NIC type does not match the existing rule.'], ['errorCode' => 'InvalidDestGroupId.Mismatch', 'errorMessage' => 'Specified security group and destination group are not in the same VPC.', 'description' => 'The specified source and destination security groups do not belong to the same VPC.'], ['errorCode' => 'InvalidDestGroup.NotFound', 'errorMessage' => 'Specified destination security group does not exist.', 'description' => 'The specified DestGroupId parameter does not exist.'], ['errorCode' => 'InvalidPriority.Malformed', 'errorMessage' => 'The parameter Priority is invalid.', 'description' => 'The specified Priority parameter is invalid.'], ['errorCode' => 'InvalidPriority.ValueNotSupported', 'errorMessage' => 'The specified parameter %s is invalid.', 'description' => 'The specified Priority parameter is invalid.'], ['errorCode' => 'InvalidSecurityGroupDiscription.Malformed', 'errorMessage' => 'The specified security group rule description parameter %s is not valid.', 'description' => 'The specified security group rule description is invalid.'], ['errorCode' => 'InvalidSecurityGroup.InvalidNetworkType', 'errorMessage' => 'The specified security group network type is not support this operation, please check the security group network types. For VPC security groups, ClassicLink must be enabled.', 'description' => 'The operation is not supported while the security group is of the current network type. If the network type is VPC, ClassicLink must be enabled.'], ['errorCode' => 'MissingParameter.Dest', 'errorMessage' => 'One of the parameters DestCidrIp, Ipv6DestCidrIp, DestGroupId or DestPrefixListId in %s must be specified.', 'description' => 'Specify at least one of the DestCidrIp, Ipv6DestCidrIp, DestGroupId, and DestPrefixListId parameters.'], ['errorCode' => 'InvalidParam.PortRange', 'errorMessage' => 'The specified parameter %s is not valid. It should be two integers less than 65535 in ?/? format.', 'description' => 'The format of the port range is invalid. Specify the port range in the format of a slash separating two integers.'], ['errorCode' => 'InvalidIpProtocol.ValueNotSupported', 'errorMessage' => 'The parameter %s must be specified with case insensitive TCP, UDP, ICMP, GRE or All.', 'description' => 'The specified Protocol parameter is invalid. You must set Protocol to a vaule that is case-insensitive, such as TCP, UDP, ICMP, GRE, and All.'], ['errorCode' => 'InvalidSecurityGroupId.Malformed', 'errorMessage' => 'The specified parameter SecurityGroupId is not valid.', 'description' => 'The specified SecurityGroupId parameter is invalid.'], ['errorCode' => 'InvalidParamter.Conflict', 'errorMessage' => 'The specified SourceCidrIp should be different from the DestCidrIp.', 'description' => 'The value of SourceCidrIp must be different from that of DestCidrIp.'], ['errorCode' => 'InvalidSourcePortRange.Malformed', 'errorMessage' => 'The specified parameter SourcePortRange is not valid.', 'description' => 'The specified SourcePortRange parameter is invalid.'], ['errorCode' => 'InvalidPortRange.Malformed', 'errorMessage' => 'The specified parameter PortRange must set.', 'description' => 'The PortRange parameter must be specified.'], ['errorCode' => 'InvalidParam.SourceIp', 'errorMessage' => 'The Parameters SourceCidrIp and Ipv6SourceCidrIp in %s cannot be set at the same time.', 'description' => 'The SourceCidrIp and Ipv6SourceCidrIp parameters cannot be specified at the same time.'], ['errorCode' => 'InvalidParam.DestIp', 'errorMessage' => 'The Parameters DestCidrIp and Ipv6DestCidrIp in %s cannot be set at the same time.', 'description' => 'The DestCidrIp and Ipv6DestCidrIp parameters cannot be specified at the same time.'], ['errorCode' => 'InvalidParam.Ipv6DestCidrIp', 'errorMessage' => 'The specified parameter %s is not valid.', 'description' => 'The specified Ipv6DestCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParam.Ipv6SourceCidrIp', 'errorMessage' => 'The specified parameter %s is not valid.', 'description' => 'The specified Ipv6SourceCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParam.Ipv4ProtocolConflictWithIpv6Address', 'errorMessage' => 'IPv6 address cannot be specified for IPv4-specific protocol.', 'description' => 'IPv6 addresses cannot be specified for instances that use the IPv4 protocol.'], ['errorCode' => 'InvalidParam.Ipv6ProtocolConflictWithIpv4Address', 'errorMessage' => 'IPv4 address cannot be specified for IPv6-specific protocol.', 'description' => 'IPv4 addresses cannot be specified for instances that use the IPv6 protocol.'], ['errorCode' => 'InvalidParameter.Ipv6CidrIp', 'errorMessage' => 'The specified Ipv6CidrIp is not valid.', 'description' => 'The specified Ipv6CidrIp parameter is invalid.'], ['errorCode' => 'InvalidGroupAuthParameter.OperationDenied', 'errorMessage' => 'The security group can not authorize to enterprise level security group.', 'description' => 'Security groups cannot be referenced as authorization objects (destinations or sources) in rules of advanced security groups.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'IPv6 and IPv4 addresses cannot exist at the same time.', 'description' => 'IPv6 and IPv4 addresses cannot be both specified.'], ['errorCode' => 'InvalidParam.PrefixListAddressFamilyMismatch', 'errorMessage' => 'The address family of the specified prefix list does not match the specified CidrIp.', 'description' => 'The address family of the specified prefix list does not match that of the specified CIDR block.'], ['errorCode' => 'NotSupported.ClassicNetworkPrefixList', 'errorMessage' => 'The prefix list is not supported when the network type of security group is classic.', 'description' => 'Security groups in the classic network do not support prefix lists.'], ['errorCode' => 'AuthorizedGroupRule.LimitExceed', 'errorMessage' => 'You have reached the limit on the number of group authorization rules that you can add to a security group.When authorization object of rule is security group, the limit is 20.', 'description' => 'Up to 20 rules in which security groups are specified as authorization objects can be present in a basic security group.'], ['errorCode' => 'InvalidParam.DestCidrIp', 'errorMessage' => 'The specified parameter %s is not valid.', 'description' => 'The specified DestCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParam.SourceCidrIp', 'errorMessage' => 'The specified param SourceCidrIp is not valid.', 'description' => 'The specified SourceCidrIp parameter is invalid.'], ['errorCode' => 'InvalidParam.Permissions', 'errorMessage' => 'The specified parameter Permissions cannot coexist with other parameters.', 'description' => 'The specified Permissions parameter and other parameters are mutually exclusive.'], ['errorCode' => 'InvalidParam.DuplicatePermissions', 'errorMessage' => 'There are duplicate permissions in the specified parameter Permissions.', 'description' => 'The specified Permissions parameter contains duplicate permissions.'], ['errorCode' => 'InvalidGroupParameter.OperationDenied', 'errorMessage' => 'The attributes Policy, SourceGroupId, DestGroupId of enterprise level security groups are not allowed to be set or modified.', 'description' => 'The attributes Policy, SourceGroupId, DestGroupId of enterprise level security groups are not allowed to be set or modified.'], ['errorCode' => 'InvalidParam.ProtocolNotSupportPortRangeList', 'errorMessage' => 'The specified protocol does not support the port range list.', 'description' => 'The specified protocol does not support the port list.'], ['errorCode' => 'InvalidPortRangeListId.NotFound', 'errorMessage' => 'The specified port range list was not found.', 'description' => 'The specified port list was not found.'], ], [ ['errorCode' => 'InvalidOperation.SecurityGroupNotAuthorized', 'errorMessage' => 'The specified security group is not authorized to operate.', 'description' => 'You do not have permission to operate the current security group.'], ], 403 => [ ['errorCode' => 'InvalidDestGroupId.Mismatch', 'errorMessage' => 'NicType is required or NicType expects intranet.', 'description' => 'The NicType parameter is not specified or is not set to intranet.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter DestGroupId or DestCidrIp cannot be both blank.', 'description' => 'The DestGroupId and DestCidrIp parameters are required.'], ['errorCode' => 'AuthorizationLimitExceed', 'errorMessage' => 'The limit of authorization records in the security group reaches.', 'description' => ''], ['errorCode' => 'InvalidParamter.Conflict', 'errorMessage' => 'The specified SecurityGroupId should be different from the SourceGroupId.', 'description' => 'The destination security group is the same as the source security group.'], ['errorCode' => 'InvalidNetworkType.Conflict', 'errorMessage' => 'The specified SecurityGroup network type should be same with SourceGroup network type (vpc or classic).', 'description' => 'The network type of the destination security group is different from that of the source security group.'], ['errorCode' => 'InvalidSecurityGroup.IsSame', 'errorMessage' => 'The authorized SecurityGroupId should be different from the DestGroupId.', 'description' => 'The ID of the source security group is the same as that of the destination security group.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ['errorCode' => 'LimitExceed.PrefixListAssociationResource', 'errorMessage' => 'The number of resources associated with the prefix list exceeds the limit.', 'description' => 'The maximum number of resources that can be associated with the prefix list has been exceeded.'], ], [ ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => 'The specified SecurityGroupId does not exist.', 'description' => 'The specified security group does not exist in this account. Check whether the security group ID is correct.'], ['errorCode' => 'InvalidDestGroupId.NotFound', 'errorMessage' => 'The DestGroupId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidPrefixListId.NotFound', 'errorMessage' => 'The specified prefix list was not found.', 'description' => 'The prefix list does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => 'Add outbound security group rules', 'description' => '### Before you begin'."\n" .'- **Quantity limit:** The total number of rules (including both inbound rules and outbound rules) across all security groups associated with a single network interface controller (NIC) cannot exceed 1,000. For more information, see [Security group limits](~~25412#SecurityGroupQuota1~~). '."\n" .'- **Priority settings:** The priority (Priority) of outbound security group rules ranges from 1 to 100. A smaller number indicates a higher priority. If two security group rules have the same priority, the deny (drop) rule takes precedence.'."\n" ."\n" .'### Notes'."\n" .'If the specified security group rule already exists, the call succeeds but no rule is added.'."\n" ."\n\n" .'### How to determine a rule'."\n" ."\n" .'The following parameters are required to determine an outbound rule:'."\n" ."\n" .'- Destination settings: Specify one of the following: DestCidrIp (IPv4 address), Ipv6DestCidrIp (IPv6 address), DestPrefixListId (prefix list ID), or DestGroupId (destination security group).'."\n" .'- Destination port range: PortRange.'."\n" .'- Protocol type: IpProtocol.'."\n" .'- Access policy: Policy.'."\n" ."\n" .'> Advanced security groups do not support authorization of other security groups for access. Custom security groups support a maximum of 20 authorized security groups.'."\n" ."\n" .'### Request examples'."\n" ."\n" .'The following examples show how to add outbound rules with different destinations to a security group in the China (Hangzhou) region:'."\n" ."\n" .' - Add access permissions for a specified IP address range.'."\n" ."\n" .' ```'."\n" .' "RegionId":"ap-southeast-1", // Specify the region.'."\n" .' "SecurityGroupId":"sg-bp17vs63txqxbds9***", // Specify the security group.'."\n" .' "Permissions":['."\n" .' {'."\n" .' "DestCidrIp":"10.0.0.0/8", // Specify the destination IPv4 address.'."\n" .' "PortRange":"-1/-1", // Specify the port range.'."\n" .' "IpProtocol":"ICMP", // Specify the protocol type.'."\n" .' "Policy":"Accept" // Specify the access policy.'."\n" .' }'."\n" .' ]'."\n" .' ```'."\n" ."\n" .' - Add access permissions for another security group and a prefix list.'."\n" ."\n" .' ```'."\n" .' "RegionId":"ap-southeast-1",'."\n" .' "SecurityGroupId":"sg-bp17vs63txqxbds9***",'."\n" .' "Permissions":['."\n" .' {'."\n" .' "DestGroupId":"sg-bp67acfmxazb4pi***", // Specify the destination security group.'."\n" .' "PortRange":"22/22",'."\n" .' "IpProtocol":"TCP",'."\n" .' "Policy":"Drop"'."\n" .' },{'."\n" .' "DestPrefixListId":"pl-x1j1k5ykzqlixdcy****", // Specify the destination prefix list.'."\n" .' "PortRange":"22/22",'."\n" .' "IpProtocol":"TCP",'."\n" .' "Policy":"Drop"'."\n" .' }'."\n" .' ]'."\n" .' ```', 'changeSet' => [ ['createdAt' => '2025-04-01T08:24:57.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-12-04T10:04:25.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-01-25T05:30:54.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-11-21T02:00:24.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-04-07T05:09:07.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-01-05T11:53:04.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-09-05T06:43:14.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-07-13T02:03:11.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2022-03-30T11:51:18.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-03-30T11:51:18.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'AuthorizeSecurityGroupEgress'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:AuthorizeSecurityGroupEgress', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'ecs:SecurityGroupIpProtocols'], ['conditionKey' => 'ecs:SecurityGroupSourceCidrIps'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CancelAutoSnapshotPolicy' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28799', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'regionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the auto snapshot policy and disks. You can call the [DescribeRegions](~~25609~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'diskIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of the target disks. The value is a JSON array of disk IDs.', 'type' => 'string', 'required' => true, 'example' => '["d-bp14k9cxvr5uzy54****", "d-bp1dtj8v7x6u08iw****", "d-bp1c0tyj9tfli2r8****"]', 'title' => ''], ], [ 'name' => 'autoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the auto snapshot policy to cancel.'."\n" ."\n" .'- If you omit this parameter, the following rules apply:'."\n" ."\n" .' - If only one auto snapshot policy is applied to a disk, that policy is canceled.'."\n" ."\n" .' - If a disk has more than one auto snapshot policy, the request fails and returns the `OperationDenied.TooManyAutoSnapshotPolicies` error code. In this case, you must specify `autoSnapshotPolicyId` to identify the policy to cancel.', 'type' => 'string', 'required' => false, 'example' => 'sp-bp14yziiuvu3s6jn****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'ParameterInvalid', 'errorMessage' => 'The specified RegionId parameter is invalid.', 'description' => 'The specified region ID is invalid.'], ['errorCode' => 'InvalidOperation.SnapshotPolicyHasDeleted', 'errorMessage' => 'The snapshot policy associated with the current operation has been deleted. Check whether the parameters are correct.', 'description' => 'The snapshot policy associated with the current operation has been deleted. Check whether the parameters are correct.'], ['errorCode' => 'OperationDenied.TooManyAutoSnapshotPolicies', 'errorMessage' => 'The specified disk %s has already applied multiple auto snapshot policies. To cancel a policy, please explicitly specify the autoSnapshotPolicyId parameter.', 'description' => 'The specified disk has already applied multiple auto snapshot policies. To cancel a policy, please explicitly specify the autoSnapshotPolicyId parameter.'], ['errorCode' => 'InvalidParameter.TooManyDiskIds', 'errorMessage' => 'The parameter DiskIds contains more than 100 values, which exceeds the maximum allowed.', 'description' => 'The parameter DiskIds contain more than 100 values, which exceeds the maximum allowed quota for the parameter.'], ], [ ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified DiskIds are not found.', 'description' => 'The specified DiskIds parameter does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Cancel the automatic snapshot policy for a disk', 'summary' => 'Cancels an auto snapshot policy for one or more disks.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-07-28T05:55:21.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-07-03T10:07:19.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-02T06:50:25.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelAutoSnapshotPolicy'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:CancelAutoSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'AutoSnapshotPolicy', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotpolicy/{#snapshotpolicyId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'CancelCopyImage' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28800', 'abilityTreeNodes' => ['FEATUREecsZ3BT05'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the destination image. You can call [DescribeRegions](~~25609~~) to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the image that is being copied.', 'type' => 'string', 'required' => true, 'example' => 'm-bp1caf3yicx5jlfl****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'ImageCreatedNotFromCopy', 'errorMessage' => 'The specified image is not the target image of a copy action.', 'description' => 'The specified image ID is not the ID of the image that is being copied.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified description is wrongly formed.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ['errorCode' => 'IncorrectImageStatus', 'errorMessage' => 'The specified snapshot is not coping.', 'description' => 'The specified snapshot is not being copied.'], ['errorCode' => 'CancelNotSupported', 'errorMessage' => 'The specified image coping can not be cancelled.', 'description' => 'The copy task cannot be canceled.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified ImageId does not exist.', 'description' => 'The specified image does not exist in this account. Check whether the image ID is correct.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'Cancel an ongoing image copy task', 'summary' => 'Cancels an ongoing CopyImage task.', 'description' => 'When you call this operation, take note of the following items:'."\n" ."\n" .'- After you cancel the image copy task, the image that was being created in the destination region is automatically deleted. The source image remains unchanged.'."\n" .'- If the image copy task is already complete, the operation fails and an error message is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-07-12T08:50:06.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelCopyImage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:CancelCopyImage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/{#imageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'CancelImagePipelineExecution' => [ 'summary' => 'Cancels an image build task.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29246', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateTag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Value' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ExecutionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the build task.', 'type' => 'string', 'required' => true, 'example' => 'exec-5fb8facb8ed7427c****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidStatus.CancelFailed', 'errorMessage' => 'Failed to cancel execution,status is success, failed or cancelled.', 'description' => ''], ], 403 => [ ['errorCode' => 'InvalidStatus.ImagePipelineExecution', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'InvalidImagePipelineExecution.NotFound', 'errorMessage' => 'The specified image pipeline execution does not exist!', 'description' => ''], ['errorCode' => 'InvalidImagePipelineExecutionId.NotFound', 'errorMessage' => 'The specified ImagePipelineExecutionId does not exist.', 'description' => 'The specified ImagePipelineExecutionId resource does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Cancel an image build task', 'description' => 'Before you call this operation, make sure that the image build task you want to cancel is in the PREPARING, REPAIRING, or BUILDING state.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-24T08:40:55.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-17T08:45:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelImagePipelineExecution'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:CancelImagePipelineExecution', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipeline', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipeline/{#imagepipelineId}'], ], ], ], ], ], 'CancelPhysicalConnection' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'vpc接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PhysicalConnectionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Forbidden.NotAllowedInState', 'errorMessage' => 'The request does not allow in this state.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidPhysicalConnectionId.NotFound', 'errorMessage' => 'The PhysicalConnectionId provided does not exist in our records.', 'description' => 'The specified Express Connect circuit does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CancelPhysicalConnection'], 'returnType' => 'synchronous', ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelPhysicalConnection'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:CancelPhysicalConnection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PhysicalConnection', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:physicalconnection/{#PhysicalConnectionId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CancelPhysicalConnection', 'summary' => 'Cancels an application for an Express Connect circuit. You can cancel an Express Connect circuit only when it is in the `Initial` or `Approved` state.', ], 'CancelSimulatedSystemEvents' => [ 'summary' => 'Cancels one or more simulated system events that are in the Scheduled or Executing state. After a system event is canceled, the simulated event enters the Canceled state.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29247', 'abilityTreeNodes' => ['FEATUREecsBUZW7T'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'EventId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of system event IDs. You can specify up to 100 event IDs.', 'type' => 'array', 'items' => ['description' => 'The list of system event IDs. You can specify up to 100 event IDs.', 'type' => 'string', 'required' => true, 'example' => 'e-xhskHun1256****', 'title' => ''], 'required' => true, 'example' => 'e-xhskHun1256****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'EventIdLimitExceeded', 'errorMessage' => '%s', 'description' => 'More than 100 simulated event IDs are specified.'], ], 403 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'CannotCancelSystemEvent.NotSimulated', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidEventId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified EventId parameter is invalid.'], ], [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Cancel simulated system events', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-09-18T08:16:34.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelSimulatedSystemEvents'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:CancelSimulatedSystemEvents', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CancelTask' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '28804', 'abilityTreeNodes' => ['FEATUREecsU19YTI'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the task. You can call the [DescribeTasks](~~25622~~) operation to query the list of task IDs.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the request.', 'type' => 'string', 'required' => true, 'example' => 't-bp198jigq7l0h5ac****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'An input parameter "RegionId" that is mandatory for processing the request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidTaskId.NotFound', 'errorMessage' => 'The specified "TaskId" is not found.', 'description' => 'The specified task does not exist'], ], 403 => [ ['errorCode' => 'InvalidTaskId.TaskActionNotSupport', 'errorMessage' => 'The specified task action not support.', 'description' => 'The specified task action is not supported.'], ['errorCode' => 'InvalidTaskId.IncorrectTaskStatus', 'errorMessage' => 'The specified task status is invalid.', 'description' => 'The task state is invalid.'], ['errorCode' => 'CancelTaskFailed', 'errorMessage' => 'The task is failed to cancel, Please contact the administrator.', 'description' => ''], ], ], 'title' => 'CancelTask', 'summary' => 'Cancels a running task. You can cancel the running tasks generated by the ImportImage or ExportImage operation.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2022-03-03T09:24:55.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CancelTask'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:CancelTask', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'CloneDisks' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'high', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREecs70JNQP', 'FEATUREecsDXRH67'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](https://www.alibabacloud.com/help/en/ecs/api-regions-describeregions) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run, without performing the actual request. Valid values:'."\n" .'- true: sends a check request without querying the filing status. The system checks whether your AccessKey pair is valid, whether RAM user authorization is granted, and whether the required parameters are specified. If the check fails, the corresponding error is returned. If the check passes, the DryRunOperation error code is returned.'."\n" .'- false (default): sends a normal request. After the check passes, a 2XX HTTP status code is returned and the filing status is queried.', 'type' => 'string', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The ClientToken value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags for the disk.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags for the disk.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the disk. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with aliyun or acs:. The tag key cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the disk. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the disk belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp199lyny9b3****', 'title' => ''], ], [ 'name' => 'SourceDiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the source disk.', 'type' => 'string', 'required' => true, 'example' => 'd-bp1d6tsvznfghy7y****', 'title' => ''], ], [ 'name' => 'DiskName', 'in' => 'query', 'schema' => ['description' => 'The name of the disk. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-). The name must start with a letter.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'MyDiskName', 'title' => ''], ], [ 'name' => 'DiskCategory', 'in' => 'query', 'schema' => ['description' => 'The category of the new disk. Valid values:'."\n" ."\n" .'- cloud_essd: standard SSD.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .'- cloud_regional_disk_auto: regional Standard SSD (ESSD).'."\n" ."\n" .'> Disk category restrictions for disk cloning:'."\n" .'> - Non-regional disks can only be cloned to non-regional disk types.'."\n" .'> - Regional disks can only be cloned to regional disk types.', 'type' => 'string', 'required' => true, 'example' => 'cloud_essd', 'title' => ''], ], [ 'name' => 'PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level (PL) of the enterprise SSD to create. Settings for this parameter vary based on the standard SSD type. Valid values:'."\n" ."\n" .'- PL0: a single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1: a single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: a single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: a single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'> If DiskCategory is set to cloud_essd, PerformanceLevel is required.'."\n" ."\n" .'For more information about how to select an ESSD performance level, see [ESSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'Size', 'in' => 'query', 'schema' => ['description' => 'The capacity of the new disk. Unit: GiB. You must specify a value for this parameter. Valid values:'."\n" ."\n" .'- cloud_essd: the valid value range varies based on the performance level.'."\n" .' - PL0: 1 to 65,536.'."\n" .' - PL1: 20 to 65,536.'."\n" .' - PL2: 461 to 65,536.'."\n" .' - PL3: 1,261 to 65,536.'."\n" .'- cloud_auto: 1 to 65,536.'."\n" .'- cloud_essd_entry: 10 to 32,768.'."\n" .'- cloud_regional_disk_auto: 10 to 65,536.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '60', 'title' => ''], ], [ 'name' => 'MultiAttach', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the multi-attach attribute for the new disk. Settings for this parameter. Valid values:'."\n" ."\n" .'- Disabled: disables the multi-attach attribute.'."\n" .'- Enabled: enables the multi-attach attribute. Only standard SSDs support the value `Enabled`.', 'type' => 'string', 'required' => true, 'example' => 'Disabled', 'title' => ''], ], [ 'name' => 'ProvisionedIops', 'in' => 'query', 'schema' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values:'."\n" .'- Capacity (GiB) <= 3: provisioned performance is not supported.'."\n" .'- Capacity (GiB) >= 4: [0, min{(1,000 IOPS/GiB × Capacity - Baseline IOPS), 50,000}]'."\n" ."\n" .'Baseline performance = max{min{1,800 + 50 × Capacity, 50,000}, 3,000}.'."\n" ."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](https://www.alibabacloud.com/help/en/ecs/user-guide/essd-autopl-disks).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'BurstingEnabled', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the performance burst feature for the new disk. Valid values:'."\n" .'- true: enables the performance burst feature.'."\n" .'- false: does not enable the performance burst feature.'."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](https://www.alibabacloud.com/help/en/ecs/user-guide/essd-autopl-disks).', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the new disk is encrypted. Valid values:'."\n" .'- true: The new disk is encrypted.'."\n" .'- false: The new disk is not encrypted.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'KmsKeyId', 'in' => 'query', 'schema' => ['description' => 'The key ID of the KMS key used by the new disk.', 'type' => 'string', 'required' => false, 'example' => 'key-szz67b2f696f4wh9yeg5d', 'title' => ''], ], [ 'name' => 'Arn', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'object', 'properties' => [ 'RoleType' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Rolearn' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'AssumeRoleFor' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'TaskGroupId' => ['description' => 'The task group ID of the disk cloning operation. You can call [DescribeTasks](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-describetasks) to query the task execution result.', 'type' => 'string', 'example' => 'g-2ze2op2grqpclwu7****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidDiskCategory.SourceDiskCategoryNotSupport', 'errorMessage' => 'The specified target disk category %s is not support clone from origin disk category %s.', 'description' => ''], ['errorCode' => 'InvalidDisk.NeverAttached', 'errorMessage' => 'The specified disk %s has been never attached to any instance.', 'description' => ''], ['errorCode' => 'InvalidStatus.SourceDiskStatusViolation', 'errorMessage' => 'The specified disk %s status error, want Available or In_use, but %s.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DiskCategory" is not valid.', 'description' => 'The specified cloud disk type DiskCategory is invalid.'], ['errorCode' => 'InvalidDiskName.ValueNotSupported', 'errorMessage' => 'The specified parameter "DiskName" is not valid.', 'description' => ''], ['errorCode' => 'InvalidPerformanceLevel.ValueNotSupported', 'errorMessage' => 'The specified parameter "PerformanceLevel" is not valid.', 'description' => ''], ['errorCode' => 'InvalidMultiAttach.ValueNotSupported', 'errorMessage' => 'The specified parameter "MultiAttach" is not valid.', 'description' => ''], ['errorCode' => 'InvalidBurstingEnabled.DiskCategoryNotSupported', 'errorMessage' => 'The specified disk category does not support bursting enabled.', 'description' => ''], ['errorCode' => 'InvalidProvisionedIops.DiskCategoryNotSupported', 'errorMessage' => 'The specified disk category does not support provisioned IOPS.', 'description' => ''], ['errorCode' => 'InvalidProvisionedIops.LimitExceed', 'errorMessage' => 'The provisioned IOPS exceeds the permitted range limit for the specified disk category', 'description' => ''], ['errorCode' => 'InvalidSize.MustGreaterThanSourceDisk', 'errorMessage' => 'The specified size %s(GB) must greater than source disk size %s(GB).', 'description' => ''], ['errorCode' => 'DryRunOperation', 'errorMessage' => 'Request validation has been passed with DryRun flag set.', 'description' => 'Your request is determined as valid when the DryRun parameter is set.'], ['errorCode' => 'InvalidSourceDisk.Lazyloading', 'errorMessage' => 'The specified source disk %s is lazyloading.', 'description' => ''], ['errorCode' => 'InvalidOperation.DiskCloneExceedsConcurrencyLimit', 'errorMessage' => 'The source disk %s has reached the maximum number (1) of concurrent clone operations. In-progress cloned disks: %s. Please wait a moment and try again later.', 'description' => ''], ['errorCode' => 'InvalidParameter.Arns', 'errorMessage' => 'The specified Arns is not valid.', 'description' => 'The Arns parameter is invalid. Please check and pass it again.'], ], [ ['errorCode' => 'InvalidOperation.UserNotInWhiteList', 'errorMessage' => 'The specified user %s is not in the CloneDisks whitelist.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified region does not exist.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidSourceDiskId.NotFound', 'errorMessage' => 'The specified source disk does not exist.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'asynchronous', 'callback' => 'Ecs::2014-05-26::DescribeTasks', 'callbackInterval' => 500, 'maxCallbackTimes' => 10], 'title' => 'Clone a disk', 'summary' => 'Disk cloning allows you to quickly create a new disk with the same data as the source disk in the same zone. The new disk supports custom capacity, type, and encryption attributes. After the new disk is attached to an instance, you can quickly replicate business data or horizontally scale your services.', 'description' => '> The disk cloning feature itself is free of charge, but the new disk generated by cloning is billed based on block storage billing rules. Billable items vary by disk type and include disk capacity fees, provisioned performance fees, and performance burst fees. Except for performance burst fees, which are billed after a burst occurs, all other fees start to accrue after the disk is created, regardless of whether the disk is attached to an instance.'."\n" ."\n" .'### How to use'."\n" ."\n" .'- This is an asynchronous operation. After a successful call, use the taskGroupId and call the DescribeTasks operation to obtain the execution result.'."\n" ."\n\n" ."\n" .'### Features'."\n" .'- Cloning supports only ESSD series disks (cloud_essd, cloud_auto, cloud_essd_entry, cloud_regional_disk_auto) as the source, and the `new disk` can only be an ESSD series disk type.'."\n" .' - Non-regional disks can only be cloned to non-regional disk types. Regional disks can only be cloned to regional disk types.'."\n" .' - Local disks and elastic ephemeral disks cannot be cloned or used as clone sources.'."\n" .'- You can specify the `new disk` type and performance level (PL) during cloning.'."\n" .'- You can specify the `new disk` capacity during cloning, but the new disk capacity must be greater than or equal to the `source disk` capacity.'."\n" .'- You can configure provisioned performance and performance burst for the `new disk`, provided that the destination disk type supports provisioned performance and performance burst.'."\n" .'- You can specify encryption for the `new disk` and change the encryption key. If the `source disk` is encrypted, you cannot clone it into an unencrypted disk, but you can change the encryption key.'."\n" .'- You can use a subscription disk as the `source disk`. Even if the subscription disk has expired, it can still be used as the `source disk`.'."\n" .'- The `new disk` created by cloning does not support reinitialization.'."\n" .'- Cloning does not support storage sets or dedicated block storage clusters, but disks in them can be used as the `source disk`. The cloned disk will not be in the storage set or dedicated block storage cluster.'."\n" .'- `Source disk` status restrictions:'."\n" .' - The `source disk` status is "In Use" and the corresponding instance status is "Running" or "Stopped".'."\n" .' - The `source disk` status is "Available" and the disk has been previously attached.'."\n" .' - A disk undergoing a specification change cannot be used as the `source disk`.'."\n" .' - A disk undergoing expansion cannot be used as the `source disk`.'."\n" .'- Disk cloning is not supported for instance hibernation scenarios. If a disk is on a hibernated instance, it cannot be used as the `source disk`.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CloneDisks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#SourceDiskId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TaskGroupId\\": \\"g-2ze2op2grqpclwu7****\\"\\n}","type":"json"}]', ], 'ConnectRouterInterface' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the router interface is located.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'RouterInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the initiator router interface.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorrectRole.NotInitiatingSide', 'errorMessage' => 'The specified RouterInterface is not InitiatingSide.', 'description' => 'The specified router interface is not an initiator. Select an initiator router interface.'], ['errorCode' => 'IncorrectStatus', 'errorMessage' => 'RouterInterface can be operated by this action only when it??s status is Idle.', 'description' => ''], ['errorCode' => 'IncorrectOppositeInterfaceInfo.NotSet', 'errorMessage' => 'OppositeInterfaceId/OppositeRouterId/OppositeRouterType/OppositeInterfaceOwnerId must be all set.', 'description' => ''], ['errorCode' => 'IncorrectOppositeInterfaceInfo', 'errorMessage' => 'Cannot connect on the same router', 'description' => 'You cannot connect a router to itself.'], ['errorCode' => 'Forbidden.OnlyOneConnection', 'errorMessage' => 'The Specified routers have a connection already', 'description' => ''], ['errorCode' => 'Forbidden.BillsOutstanding', 'errorMessage' => 'You cannot use this action because you have bills outstanding.', 'description' => ''], ['errorCode' => 'InvalidAccount.NotFound', 'errorMessage' => 'The specified account is not exists.', 'description' => ''], ['errorCode' => 'ErrCode.Invalid', 'errorMessage' => 'got error', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideRole', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideInstanceId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideRegionNo', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideRouterId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideRouterType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideAliUid', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideOppositeInterfaceOwnerId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideOppositeRegionNo', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideOppositeInterfaceId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideOppositeRouterId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'AttrMismatching.AcceptingSideOppositeRouterType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'IllegalParam.InstanceOwner', 'errorMessage' => 'The router instance owener error.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidRouterInterfaceId.NotFound', 'errorMessage' => 'The specified RouterInterfaceId does not exist in our record.', 'description' => 'The specified router interface does not exist. Check whether the router interface ID is valid.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::ConnectRouterInterface'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ConnectRouterInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:ConnectRouterInterface', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouterInterface', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routerinterface/{#RouterInterfaceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'ConnectRouterInterface', 'summary' => 'ConnectRouterInterface', ], 'ConvertNatPublicIpToEip' => [ 'summary' => 'Converts the static public IP address of an Elastic Compute Service (ECS) instance that resides in a virtual private cloud (VPC) into an elastic IP address (EIP). Static public IP addresses are the public IP addresses that are automatically assigned to ECS instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28810', 'abilityTreeNodes' => ['FEATUREecs5BJVLN'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance whose public IP address you want to convert into an EIP.', 'type' => 'string', 'required' => true, 'example' => 'i-bp171jr36ge2ulvk****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationDenied.CloudboxNotSupport', 'errorMessage' => 'This operation is denied, because the specified ECS instance which is in the Cloudbox dose not support PublicIp or Eip.', 'description' => ''], ['errorCode' => 'InvalidParameter.CloudboxNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationDenied.DedicatedRegionNotSupported', 'errorMessage' => 'This operation is denied, because the specified ECS instance which is in the dedicated region dose not support PublicIp or Eip.', 'description' => 'error of api not supported by the exclusive cloud'], ['errorCode' => 'AccountInArrears', 'errorMessage' => 'The account is in arrears.', 'description' => ''], ], 403 => [ ['errorCode' => 'InvalidInstanceId.PlanedChange', 'errorMessage' => '%s', 'description' => 'Your operation is invalid because a configuration change has been scheduled for the specified instance.'], ['errorCode' => 'InvalidEndTime.OperateNotSupport', 'errorMessage' => '%s', 'description' => 'The instance is in a state that does not support the current operation.'], ['errorCode' => 'InvalidInstanceStatus.Released', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check the state of the instance.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => '%s', 'description' => 'The instance is in a state that does not support the current operation.'], ['errorCode' => 'OperationDenied', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInstance.ZeroBandwidth', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInternetChargeType.ValueNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance does not exist. Check whether the InstanceId parameter is valid.'], ['errorCode' => 'MaxEIPQuotaExceeded', 'errorMessage' => 'The number of EIP exceeds the limit per region.', 'description' => 'The maximum number of EIPs in the current region has been reached.'], ['errorCode' => 'Forbidden.InvalidPublicBandwidth', 'errorMessage' => 'The specified instance public bandwidth is less than 1M.', 'description' => 'The specified public bandwidth value of the instance is invalid.'], ['errorCode' => 'InvalidInstance.OverduePayment', 'errorMessage' => 'The special instance due to overdue payment,this operation is not supported.', 'description' => 'Your account has overdue payments. Add funds to your account and try again.'], ['errorCode' => 'EIPMaxBandwidthExceeded', 'errorMessage' => 'The bandwidth of instance exceeds the limitation of EIP in this region.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'Forbidden.RiskControl', 'errorMessage' => 'This operation is forbidden by Aliyun RiskControl system.', 'description' => 'The operation is forbidden by the risk control system.'], ['errorCode' => 'UnsupportedPublicIpWithIsp', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInstance.IpAddressMissing', 'errorMessage' => '%s', 'description' => ''], ], ], 'title' => 'ConvertNatPublicIpToEip', 'description' => '## [](#)Usage notes'."\n" ."\n" .'After a public IP address is converted into an EIP, the EIP is billed separately. Make sure that you fully understand the billing methods of EIPs. For more information, see [Billing overview](~~122035~~).'."\n" ."\n" .'When you call this operation, make sure that the ECS instance meets the following requirements:'."\n" ."\n" .'- The instance is in the **Stopped** (`Stopped`) or **Running** (`Running`) state.'."\n" ."\n" .'- The instance has no EIPs associated.'."\n" ."\n" .'- The instance has no configuration change tasks that have not taken effect.'."\n" ."\n" .'- The public bandwidth of the instance is not 0 Mbit/s.'."\n" ."\n" .'- If the instance is a subscription instance, the billing method for network usage of the instance must be `pay-by-traffic`. The public IP address of a subscription instance that uses the `pay-by-bandwidth` billing method for network usage cannot be converted into an EIP. This requirement does not apply to pay-as-you-go instances. For more information, see [Change the billing method for network usage](~~178883~~).'."\n" ."\n" .'- If the instance is a subscription instance that resides in a VPC, the instance does not expire within 24 hours.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-10-10T03:22:14.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-06-06T02:13:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ConvertNatPublicIpToEip'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:ConvertNatPublicIpToEip', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'CopyImage' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28811', 'abilityTreeNodes' => ['FEATUREecsZ3BT05'], ], 'parameters' => [ [ 'name' => 'DestinationImageName', 'in' => 'query', 'schema' => ['description' => 'The name of the new image. The name must be 2 to 128 characters in length. The name must start with a letter and cannot contain `http://` or `https://`. The name cannot start with `acs:` or `aliyun`. The name can contain letters, digits, periods (.), colons (:), underscores (\\_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'YourImageName', 'title' => ''], ], [ 'name' => 'DestinationDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the image copy. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'This is a description example.', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the source custom image.', 'type' => 'string', 'required' => true, 'example' => 'm-bp1h46wfpjsjastc****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the source custom image. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DestinationRegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the destination region to which the source custom image is copied.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to encrypt the new image.'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'KMSKeyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the key used to encrypt the image copy.', 'type' => 'string', 'required' => false, 'maxLength' => 64, 'example' => 'e522b26d-abf6-4e0d-b5da-04b7******3c', 'title' => ''], ], [ 'name' => 'EncryptAlgorithm', 'in' => 'query', 'schema' => ['description' => '> This parameter is unavailable.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which to assign the new image. If you do not specify this parameter, the new image is assigned to the default resource group.'."\n" ."\n" .'> If you call the CopyImage operation as a Resource Access Management (RAM) user who does not have the permissions to manage the default resource group and do not specify `ResourceGroupId`, the `Forbidden: User not authorized to operate on the specified resource` error message is returned. You must specify the ID of a resource group that the RAM user has the permissions to manage or grant the RAM user the permissions to manage the default resource group before you call the CopyImage operation again.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of tag N of the image copy. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'Key' => ['description' => 'The key of tag N of the image copy. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot contain `http://` or `https://`. The tag key cannot start with `aliyun` or `acs:`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run, without performing the actual request. Specifies whether to check the image used by the instance supports hot migration. Valid values:'."\n" ."\n" .'- true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.'."\n" ."\n" .'- false: performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that you want to use to ensure the idempotence of the request. You can use the client to generate the value, but you ensure sure that the value is unique among different requests. **The token can contain only ASCII characters and cannot exceed 64 characters in length.** For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ImageId' => ['description' => 'The ID of the image copy.', 'type' => 'string', 'example' => 'm-bp1h46wfpjsjastd****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified destination description is wrongly formed.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ['errorCode' => 'SourceRegion.NotFound', 'errorMessage' => 'The source region not found.', 'description' => ''], ['errorCode' => 'DestinationRegion.NotFound', 'errorMessage' => 'The destination region not found.', 'description' => 'The destination region was not found.'], ['errorCode' => 'IncorrectImageStatus', 'errorMessage' => 'The image not available.', 'description' => 'The specified image is unavailable.'], ['errorCode' => 'InvalidSnapshotId.NotFound', 'errorMessage' => 'The specified SnapshotId does not exist.', 'description' => 'The specified snapshot ID does not exist.'], ['errorCode' => 'InvalidImageName.Duplicated', 'errorMessage' => 'The specified image name is already in use in the target region. Please try a different one.', 'description' => 'The specified image name is already in use in the target region. Please try another one.'], ['errorCode' => 'InvalidParameter.EncryptedIllegal', 'errorMessage' => 'The specified parameter Encrypted must be true when kmsKeyId is not empty.', 'description' => 'The encryption feature is not enabled after a Key Management Service (KMS) key ID is specified.'], ['errorCode' => 'InvalidEncrypted.NotMatchEncryptAlgorithm', 'errorMessage' => 'The specified parameter Encrypted must be true when EncryptAlgorithm is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncryptAlgorithm', 'errorMessage' => 'The specified parameter EncryptAlgorithm is not valid.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchKmsKeyId', 'errorMessage' => 'The specified parameter Encrypted must be true when KmsKeyId is not empty.', 'description' => ''], ['errorCode' => 'OperationDenied.CommunityImage', 'errorMessage' => 'Community image does not support copy.', 'description' => 'Community image does not support copy.'], ['errorCode' => 'InvalidImageName.Malformed', 'errorMessage' => 'The specified destination image name is wrongly formed.', 'description' => 'The specified image name is invalid. For more information, see the description of the DestinationImageName parameter.'], ['errorCode' => 'InvalidParameter.KmsNotEnabled', 'errorMessage' => 'The specified operation need enable KMS.', 'description' => 'The current operation requires opening KMS'], ['errorCode' => 'OperationDenied.ImageCopyConflict', 'errorMessage' => 'The same image cannot be copied concurrently. Please wait until the last copy is completed before performing the next operation.', 'description' => 'The same image cannot be copied concurrently. Please wait until the last copy is completed before performing the next operation.'], ['errorCode' => 'Account.Arrearage', 'errorMessage' => 'Your account has an outstanding payment.', 'description' => 'Your account has overdue payments.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ], [ ['errorCode' => 'InvalidAliUid.IsNull', 'errorMessage' => 'The aliUid must not be null.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbbiden', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'You are not authorized to operate the specified resource.'], ['errorCode' => 'InvalidOperation.CopyingDataFromThisRegionUnsupported', 'errorMessage' => 'Data transfer from the current region to other regions is not supported.', 'description' => 'Data transfer from the current region to other regions is not supported.'], ['errorCode' => 'InvalidOperation.CopyingDataToThisRegionUnsupported', 'errorMessage' => 'Only Some Regions %s can copy data to this region.', 'description' => 'Only some regions %s can copy data to the current region.'], ['errorCode' => 'QuotaExceed.Image', 'errorMessage' => 'The number of images exceeds the limit (%s).', 'description' => 'The number of images exceeds the limit.'], ['errorCode' => 'QuotaExceed.Snapshot', 'errorMessage' => 'The snapshot quota exceeds.', 'description' => ''], ['errorCode' => 'OperationDenied.ImageCopying', 'errorMessage' => 'The image is currently being copied. Please try again later.', 'description' => 'The image is being copied, please try again later.'], ['errorCode' => 'RegionNotSupportCopy', 'errorMessage' => 'The region not support copy.', 'description' => ''], ['errorCode' => 'InvalidSnapshot.TooOld', 'errorMessage' => 'This operation is denied because the specified snapshot is created before 2013-07-15.', 'description' => 'The operation is denied because the specified snapshot was created before July 15, 2013.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified snapshot is not allowed to create image.', 'description' => 'The specified snapshot cannot be used to create images.'], ['errorCode' => 'IncorrectDestinationRegion', 'errorMessage' => 'The destination region is not equal the target region.', 'description' => ''], ['errorCode' => 'OperationDeined.EncryptedSnapshot', 'errorMessage' => 'The image contains encrypted snapshots, which do not support copying.', 'description' => 'The specified image contains encrypted snapshots and cannot be copied.'], ['errorCode' => 'OperationDenied.SameRegionOnly', 'errorMessage' => 'The image shared from others can not be copied to another region directly.', 'description' => 'You cannot copy images shared by other Alibaba Cloud accounts to another region.'], ['errorCode' => 'OperationDenied.NotPublished', 'errorMessage' => 'The operation is denied because corresponding marketplace image is not published in destination region.', 'description' => ''], ['errorCode' => 'OperationDenied.NotAuthorized', 'errorMessage' => 'The operation is denied because corresponding marketplace image is not authorized to current user.', 'description' => ''], ['errorCode' => 'OperationDenied.EncryptSnapshotAcrossRegion', 'errorMessage' => 'The image do not contain encrypted snapshots, which do not support copying to encrypted ones.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support byok.', 'description' => 'The bring your own key (BYOK) feature is not supported in the region.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in byok white list.', 'description' => 'You are not authorized to use the bring your own key (BYOK) feature. Try again when you are authorized.'], ['errorCode' => 'InvalidRegionId.NotSupportEncryptAlgorithm', 'errorMessage' => 'The current region does not support creating encrypted disks with EncryptAlgorithm.', 'description' => ''], ['errorCode' => 'OperationDenied.KmsServiceUnauthorized', 'errorMessage' => 'The account is not authorized to kms service, please authorize it.', 'description' => 'You are not authorized to access KMS. Apply for the permissions required to access KMS.'], ['errorCode' => 'OperationDenied.NonCompliantDestinationRegion', 'errorMessage' => 'The copy operation to the destination region is not in compliance with regulations.', 'description' => 'The target region does not meet the security compliance requirements.'], ['errorCode' => 'InvalidEncrypted.NotMatchDiskDefaultEncryption', 'errorMessage' => 'The specified parameter Encrypted not match for your account default encryption settings.', 'description' => 'The encryption parameter does not match the default encryption configuration for the cloud disk of the current account.'], ['errorCode' => 'InvalidParameter.DataEncryptedKeyCreateFailed', 'errorMessage' => 'Create kms data encrypted key fail. If you need further assistance, you can contact the KMS Technical Support.', 'description' => 'Failed to create a data key using the KMS master key. Please contact the KMS attendant for further troubleshooting.'], ['errorCode' => 'SizeExceed.Image', 'errorMessage' => 'The image exceeds the maximum size. You can use the CopySnapshot API to copy your snapshots of the image and then create a new image from them.', 'description' => 'The size of the mirror has exceeded the operational maximum. You can use the CopySnapshot API to copy the snapshot of this image to the target region, and then use the copied snapshot to create a new image.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK (Customer Master Key) must be in an active state.', 'description' => 'The CMK (Customer Master Key) must be in an active state.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.', 'description' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.'], ['errorCode' => 'InvalidOperation.VhdImageUnsupported', 'errorMessage' => 'The specified vhd image is not supported for this operation. Please switch to a raw image and retry.', 'description' => 'vhd format images do not support this operation. switch to raw format images and try again.'], ['errorCode' => 'InvalidOperation.CloudBoxImageCopyUnsupported', 'errorMessage' => 'Copying CloudBox images is not supported.', 'description' => 'CloudBox images do not support replication.'], ], [ ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified ImageId does not exist.', 'description' => 'The specified image does not exist in this account. Check whether the image ID is correct.'], ['errorCode' => 'InvalidParameter.KMSKeyId.NotFound', 'errorMessage' => 'The specified KMSKeyId does not exist.', 'description' => 'The specified KMSKeyId parameter does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 409 => [ ['errorCode' => 'InvalidOperation.Conflict', 'errorMessage' => 'Request was denied due to conflict with a previous request, please try again later.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'CopyImage', 'summary' => 'Copies a custom image from one region to another region. You can copy custom images to deploy or copy Elastic Compute Service (ECS) instances across regions.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'After you copy a custom image to the destination region, you can use the image copy (new image) to create ECS instances by calling the RunInstances operation or replace the system disks of instances by calling the ReplaceSystemDisk operation in the destination region.'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- Only custom images that are in the `Available` state can be copied.'."\n" ."\n" .'- Custom images that belong to your Alibaba Cloud account can be copied across regions. Images that are shared with you by others can be copied only within the regions where the images reside.'."\n" ."\n" .'- When an image is being copied, the new image cannot be deleted by calling the [DeleteImage](~~25537~~) operation. However, you can cancel the ongoing image copy task by calling the [CancelCopyImage](~~25539~~) operation.'."\n" ."\n" .'- A region supports only up to five concurrent image copy tasks. Excess image copy tasks are queued for execution.'."\n" ."\n" .'- You can configure `ResourceGroupId` to specify the resource group to which to assign the new image. If you do not configure `ResourceGroupId`, the new image is assigned to the default resource group.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'changeSet' => [ ['createdAt' => '2025-06-26T08:48:35.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-06-09T07:21:56.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-04-29T06:23:41.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-04-18T02:42:45.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-04-09T01:15:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-19T08:46:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-27T06:39:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-16T05:31:55.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-19T07:52:31.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-11T05:33:21.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-09T02:24:32.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-05T11:39:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-06-27T09:06:45.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-12-18T05:36:16.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-10-09T10:27:07.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-23T07:30:57.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-07-12T08:50:06.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-03T09:22:44.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CopyImage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:CopyImage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ImageId\\": \\"m-bp1h46wfpjsjastd****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'extraInfo' => ' ', ], 'CopySnapshot' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '28812', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tag key and value of the new snapshot.', 'type' => 'array', 'items' => [ 'description' => 'The tag key and value of the new snapshot.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N to add to the new snapshot. The tag key cannot be an empty string. It can be up to 128 characters in length and cannot start with acs: or aliyun. It cannot contain http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N to add to the new snapshot. The tag value can be an empty string. It can be up to 128 characters in length and cannot start with acs: or aliyun. It cannot contain http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the source snapshot. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'DestinationRegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the destination region to which to copy the source snapshot.', 'type' => 'string', 'required' => true, 'example' => 'us-east-1', 'title' => ''], ], [ 'name' => 'SnapshotId', 'in' => 'query', 'schema' => ['description' => 'The ID of the source snapshot.', 'type' => 'string', 'required' => true, 'example' => 's-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DestinationSnapshotName', 'in' => 'query', 'schema' => ['description' => 'The name of the new snapshot. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with http\\:// or https\\://. The name can contain letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).'."\n" ."\n" .'This parameter is left empty by default.', 'type' => 'string', 'required' => true, 'example' => 'CopySnapshotDemo', 'title' => ''], ], [ 'name' => 'DestinationSnapshotDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the new snapshot. The description must be 2 to 256 characters in length and cannot start with http\\:// or https\\://.'."\n" ."\n" .'This parameter is empty by default.', 'type' => 'string', 'required' => true, 'example' => 'CopySnapshotDemo', 'title' => ''], ], [ 'name' => 'RetentionDays', 'in' => 'query', 'schema' => ['description' => 'The retention period of the new snapshot. Unit: days. The new snapshot is automatically released when its retention period ends. Valid values: 1 to 65536.'."\n" ."\n" .'This parameter is empty by default, which indicates that the snapshot is not automatically released.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '60', 'title' => ''], ], [ 'name' => 'Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to encrypt the new snapshot. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'KMSKeyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the customer master key (CMK) in Key Management Service (KMS) in the destination region.', 'type' => 'string', 'maxLength' => 64, 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], [ 'name' => 'Arn', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '> This parameter is currently in invitational preview and unavailable for public use.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RoleType' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Rolearn' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'AssumeRoleFor' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '0', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'DestinationStorageLocationArn', 'in' => 'query', 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SnapshotId' => ['description' => 'The ID of the new snapshot.', 'type' => 'string', 'example' => 's-bp17441ohwka0yui****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C8B26B44-0189-443E-9816-D951F596****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified RegionId is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Arns', 'errorMessage' => 'The specified Arns is not valid.', 'description' => 'The Arns parameter is invalid. Please check and pass it again.'], ], 403 => [ ['errorCode' => 'InvalidSnapshotId.EncryptedNotSupport', 'errorMessage' => 'The specified snapshot with encrypted does not support copy.', 'description' => ''], ['errorCode' => 'InvalidSnapshotId.NotFound', 'errorMessage' => 'The specified snapshot is not exists.', 'description' => 'The specified source snapshot does not exist.'], ['errorCode' => 'InvalidSnapshotCategory.NotSupportCopy', 'errorMessage' => 'The specified snapshot\'s category does not support copy.', 'description' => ''], ['errorCode' => 'InvalidUser.NotInWhiteList', 'errorMessage' => 'The user is not in the white list of copying snapshot.', 'description' => 'You are not authorized to perform the operation.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.SnapshotServiceUnavailable', 'errorMessage' => 'Snapshot service has not been opened yet.', 'description' => 'The operation is not supported while the snapshot service is not activated.'], ['errorCode' => 'InvalidSnapshotId.NotReady', 'errorMessage' => 'The specified snapshot has not completed yet.', 'description' => ''], ['errorCode' => 'InvalidOperation.Unauthorized', 'errorMessage' => 'The specified operation is unauthorized.', 'description' => ''], ['errorCode' => 'InvalidOperation.UnfinishedCrossRegionCopy', 'errorMessage' => 'This disk has unfinished cross-region copy snapshots in the target region.', 'description' => 'The disk also has unfinished cross-region snapshot copies.'], ['errorCode' => 'InvalidOperation.NotSupportCopyInSameRegion', 'errorMessage' => 'Copying snapshot in the same region is not supported.', 'description' => 'the source and destination regions of the snapshot cannot be the same.'], ['errorCode' => 'InvalidSnapshotName.Malformed', 'errorMessage' => 'The specified SnapshotName is wrongly formed.', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified description is wrongly formed.', 'description' => ''], ['errorCode' => 'InvalidRetentionDays.Malformed', 'errorMessage' => 'The specified RetentionDays is not valid.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotSupportedEncryptedSnapshotCopy', 'errorMessage' => 'The specified region not support copy encrypted snapshot.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support byok.', 'description' => 'The bring your own key (BYOK) feature is not supported in the region.'], ['errorCode' => 'InvalidRegionId.NotSupportEncryptAlgorithm', 'errorMessage' => 'The current region does not support creating encrypted disks with EncryptAlgorithm.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotExists', 'errorMessage' => 'Region not exists.', 'description' => ''], ['errorCode' => 'InvalidEncryptAlgorithm', 'errorMessage' => 'The specified parameter EncryptAlgorithm is not valid.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchKmsKeyId', 'errorMessage' => 'The specified parameter Encrypted must be true when KmsKeyId is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchEncryptAlgorithm', 'errorMessage' => 'The specified parameter Encrypted must be true when EncryptAlgorithm is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotSupportDecrypt', 'errorMessage' => 'Encrypted snapshot not support copy to decrypt snapshot.', 'description' => ''], ['errorCode' => 'InvalidSnapshotCategory.NotSupportCrossRegionCopy', 'errorMessage' => 'The specified snapshot is not support cross region copy.', 'description' => ''], ['errorCode' => 'InvalidSnapshotCategory.NotSupportEncryptedCopy', 'errorMessage' => 'The specified snapshot is not support encrypted copy.', 'description' => ''], ['errorCode' => 'InvalidParameter.KmsNotEnabled', 'errorMessage' => 'The specified operation need enable KMS.', 'description' => ''], ['errorCode' => 'InvalidParameter.DataEncryptedKeyCreateFailed', 'errorMessage' => 'Create kms data encrypted key fail. If you need further assistance, you can contact the KMS Technical Support.', 'description' => 'Failed to create a data key using the KMS master key. Please contact the KMS attendant for further troubleshooting.'], ['errorCode' => 'InvalidParameter.KMSKeyId.NotFound', 'errorMessage' => 'The specified KMSKeyId does not exist.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'InvalidKMSKeyId.NotSymmetric', 'errorMessage' => 'The specified parameter KmsKeyId must be symmetric.', 'description' => ''], ['errorCode' => 'QuotaExceed.SnapshotQuota', 'errorMessage' => 'The quota is insufficient, please contact your channel partner to increase the quota.', 'description' => 'The quota is insufficient. Contact your channel partner to request a quota increase.'], ['errorCode' => 'InvalidOperation.UnfinishedEncryptedSnapshotCopy', 'errorMessage' => 'This disk has unfinished encrypted copy snapshots in the target region.', 'description' => 'The cloud disk has unfinished encrypted snapshot copy tasks.'], ['errorCode' => 'InvalidParameterDestinationStorageLocationArn.Unauthorized', 'errorMessage' => 'The operation has failed due to lack of permission for the specified "DestinationStorageLocationArn". Please use a resource with appropriate permission for the operation.', 'description' => ''], ['errorCode' => 'InvalidParameterDestinationStorageLocationArn.RegionNotMatch', 'errorMessage' => 'The region information in the specified parameter "DestinationStorageLocationArn" is inconsistent with "DestinationRegionId". Please use the correct information for the operation.', 'description' => ''], ['errorCode' => 'InvalidSnapshot.StorageLocationNotSupported', 'errorMessage' => 'The storage location of the current snapshot does not support this operation.', 'description' => ''], ['errorCode' => 'InvalidSnapshot.EncryptedNotSupported', 'errorMessage' => 'The current operation does not support the use of encrypted snapshots.', 'description' => ''], ['errorCode' => 'InvalidParameterDestinationStorageLocationArn.Malformed', 'errorMessage' => 'The specified DestinationStorageLocationArn is wrongly formed.', 'description' => ''], ['errorCode' => 'OperationDenied.NonCompliantDestinationRegion', 'errorMessage' => 'The copy operation to the destination region is not in compliance with regulations.', 'description' => 'The target region does not meet the security compliance requirements.'], ['errorCode' => 'OperationDenied.SnapshotCategoryNotSupportCopy', 'errorMessage' => 'The specified category of snapshot not support copy.', 'description' => 'The specified snapshot type does not support copying.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK (Customer Master Key) must be in an active state.', 'description' => 'The CMK (Customer Master Key) must be in an active state.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.', 'description' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.'], ], 409 => [ ['errorCode' => 'InvalidOperation.Conflict', 'errorMessage' => 'Request was denied due to conflict with a previous request, please try again later.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'CopySnapshot', 'summary' => 'Copies a standard or encrypted snapshot from one region to another.', 'description' => 'When you call this operation, take note of the following item:'."\n" ."\n" .'- New snapshots (snapshot copies) cannot be used to roll back the disks for which source snapshots (copied snapshots) were created.'."\n" ."\n" .'- Local snapshots cannot be copied.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-03-21T07:26:19.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-19T08:46:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-21T09:28:05.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-10T05:31:57.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-27T09:38:38.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-06-27T09:06:45.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-05-28T02:15:16.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-12-18T05:36:16.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-02T01:39:43.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-06-19T09:10:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-01T06:34:27.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-10-27T06:47:22.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CopySnapshot'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CopySnapshot', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/{#snapshotId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SnapshotId\\": \\"s-bp17441ohwka0yui****\\",\\n \\"RequestId\\": \\"C8B26B44-0189-443E-9816-D951F596****\\"\\n}","type":"json"}]', ], 'CreateActivation' => [ 'summary' => 'Creates an activation code that is used to register non-Alibaba Cloud servers as Alibaba Cloud managed instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29248', 'abilityTreeNodes' => ['FEATUREecsLJD94P'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Currently supported regions include China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), Hong Kong (China), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" .'You can call [DescribeRegions](~~25609~~) to query region IDs and other information.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceName', 'in' => 'query', 'schema' => ['description' => 'The default instance name prefix. The value must be 2 to 50 characters in length and must start with a letter. It cannot start with a special character or digit. It can contain only periods (.), underscores (_), hyphens (-), and colons (:). It cannot start with `http://` or `https://`.'."\n" ."\n" .'Instances registered with the activation code created by this operation use this value as the prefix to generate sequential instance names. You can also specify a new instance name when you register a managed instance to override this default value.'."\n" ."\n" .'When you register a managed instance, if you specify a value for InstanceName, a name in the format of `-001` is generated. The number of digits in `001` depends on the number of digits in the `InstanceCount` value. If you do not specify a value for InstanceName, the hostname of the host is used as the instance name.', 'type' => 'string', 'required' => false, 'example' => 'test-InstanceName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the activation code. The value can be 1 to 100 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'InstanceCount', 'in' => 'query', 'schema' => ['description' => 'The maximum number of times that the activation code can be used to register managed instances. Valid values: 1 to 1000.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'TimeToLiveInHours', 'in' => 'query', 'schema' => ['description' => 'The validity period of the activation code. After the validity period expires, the activation code cannot be used to register new instances. Unit: hours. Valid values: 1 to 4.'."\n" ."\n" .'Default value: 4.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'IpAddressRange', 'in' => 'query', 'schema' => ['description' => 'The IP addresses of hosts that are allowed to use the activation code. The value can be an IPv4 address, an IPv6 address, or a CIDR block.', 'type' => 'string', 'required' => false, 'example' => '0.0.0.0/0', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the activation code belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-123******', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the managed instance activation code. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the tag cannot exceed 1000. If you use multiple tags to filter resources, the resource count with all the specified tags attached cannot exceed 1000. If the resource count exceeds 1000, use the [ListTagResources](~~110425~~) operation to query resources.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the managed instance activation code. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], 'ActivationCode' => ['description' => 'The value of the activation code. The code is returned only once when you call this operation and cannot be queried afterward. Store the return value properly.', 'type' => 'string', 'example' => 'a-hz0ch3SwhOlE1234+Xo32lAZC****', 'title' => ''], 'ActivationId' => ['description' => 'The activation code ID.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'InstanceName.ExceedLimit', 'errorMessage' => 'Default instance name prefix length exceeds.', 'description' => 'The length of the instance name prefix exceeds the upper limit.'], ['errorCode' => 'InstanceName.InvalidPattern', 'errorMessage' => 'Default instance name prefix pattern invalid.', 'description' => 'The instance name prefix is invalid.'], ['errorCode' => 'ActivationDesc.ExceedLimit', 'errorMessage' => 'Activation description length exceeds.', 'description' => 'The length of the activation code description exceeds the upper limit.'], ['errorCode' => 'ActivationLimitation.Invalid', 'errorMessage' => 'The specified parameter InstanceCount exceeds the limit of %s.', 'description' => ''], ['errorCode' => 'AddressRange.InvalidPattern', 'errorMessage' => 'Address range should be ipv4 address or cidr.', 'description' => 'The IP addresses of hosts that can use the activation code must be IPv4 addresses, IPv6 addresses, or CIDR blocks.'], ['errorCode' => 'ActivationCount.ExceedLimit', 'errorMessage' => 'The count of activation in current region exceeds the limit of %s.', 'description' => ''], ['errorCode' => 'ActivationTTL.ExceedLimit', 'errorMessage' => 'The specified parameter TimeToLiveInHours exceeds the limit of %s.', 'description' => 'The specified parameter TimeToLiveInHours exceeds the limit of% s.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The Tags parameter number is exceed.', 'description' => 'The number of tags exceeds the maximum limit.'], ['errorCode' => 'MissingParameter.TagKey', 'errorMessage' => 'You must specify Tag.N.Key.', 'description' => 'The tag key is not specified.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidClientToken.Malformed', 'errorMessage' => 'The specified parameter clientToken is not valid.', 'description' => ''], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ['errorCode' => 'InvalidStatus.ResourceGroup', 'errorMessage' => 'You cannot perform an operation on a resource group that is being created or deleted.', 'description' => 'Operation not allowed while resource group is being created or deleted.'], ['errorCode' => 'RealNameAuthenticationError', 'errorMessage' => 'Your account has not passed the real-name authentication yet.', 'description' => 'You have not completed real-name verification. Complete real-name verification and try again.'], ['errorCode' => 'ManagedInstanceCountExceedLimit', 'errorMessage' => 'The count of managed instance in current region exceeds the limit of %s.', 'description' => 'The number of managed instances in the current region exceeds the limit of% s.'], ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', 'description' => ''], ['errorCode' => 'IdempotentProcessing', 'errorMessage' => 'The previous idempotent request(s) is still processing.', 'description' => 'A previous idempotent request is being processed. Try again later.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when dispatch the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F1234****\\",\\n \\"ActivationCode\\": \\"a-hz0ch3SwhOlE1234+Xo32lAZC****\\",\\n \\"ActivationId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F1234****\\"\\n}","type":"json"}]', 'title' => 'Creates an activation code.', 'description' => '## Operation description'."\n" ."\n" .'After you use an activation code to register a non-Alibaba Cloud server as an Alibaba Cloud managed instance, you can use various online services provided by Alibaba Cloud in the managed instance, such as Cloud Assistant, CloudOps Orchestration Service, and Alibaba Cloud DevOps.'."\n" ."\n" .'The operating system of the non-Elastic Compute Service (ECS) server must meet the following version requirements, and the server must have Internet access to be registered as an Alibaba Cloud managed instance.'."\n" ."\n" .'- Alibaba Cloud Linux 2/3 and later'."\n" .'- CentOS 6/7/8 and later'."\n" .'- Debian 8/9/10 and later'."\n" .'- Ubuntu 12/14/16/18 and later'."\n" .'- CoreOS'."\n" .'- OpenSUSE'."\n" .'- RedHat 5/6/7 and later'."\n" .'- SUSE Linux Enterprise Server 11/12/15 and later'."\n" .'- Window Server 2012/2016/2019 and later'."\n" ."\n" .'In each Alibaba Cloud region, you can have up to 10 managed instance activation codes. Each activation code can be used to register up to 10 instances, and each activation code is valid for up to 4 hours.'."\n" ."\n" .'> On the **ECS Cloud Assistant** page, click the **Managed Instances** tab, and then click **Register New Instance** to view the usage data of activation codes.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-10-30T01:32:45.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-18T03:18:23.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-07-31T03:31:55.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-10-24T05:49:39.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2021-10-15T08:59:33.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-10-15T08:59:33.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateActivation'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateActivation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Activation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:activation/*'], ], ], ], ], ], 'CreateAutoProvisioningGroup' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28814', 'abilityTreeNodes' => ['FEATUREecs9VD134'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which the auto provisioning group resides. You can invoke [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the auto provisioning group belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'AutoProvisioningGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the auto provisioning group. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with `http://` or `https://`. It can contain digits, colons (:), underscores (_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'apg-test', 'title' => ''], ], [ 'name' => 'AutoProvisioningGroupType', 'in' => 'query', 'schema' => ['description' => 'The delivery type of the auto provisioning group. Valid values:'."\n" ."\n" .'- request: one-time asynchronous delivery. The group delivers an instance cluster asynchronously only at startup. If scheduling fails, no retry is performed.'."\n" ."\n" .'- instant: one-time synchronous delivery. The group synchronously creates instances only at startup and returns the list of successfully created instances and the causes of creation failures in the response.'."\n" ."\n" .'- maintain: continuous delivery. The group attempts to deliver an instance cluster at startup and monitors real-time capacity. If the target capacity is not reached, the group continues to create ECS instances.'."\n" ."\n" .'Default value: maintain.', 'type' => 'string', 'required' => false, 'example' => 'maintain', 'title' => ''], ], [ 'name' => 'SpotAllocationStrategy', 'in' => 'query', 'schema' => ['description' => 'The policy for creating spot instances. Valid values:'."\n" ."\n" .'- lowest-price: cost optimization policy. Selects the instance type with the lowest price.'."\n" ."\n" .'- diversified: balanced zone distribution policy. Creates instances in the zones specified in the extended launch template and evenly distributes them across zones.'."\n" ."\n" .'- capacity-optimized: capacity optimization distribution policy. Selects the optimal instance type and zone based on inventory availability.'."\n" ."\n" .'Default value: lowest-price.', 'type' => 'string', 'required' => false, 'example' => 'diversified', 'title' => ''], ], [ 'name' => 'SpotInstanceInterruptionBehavior', 'in' => 'query', 'schema' => ['description' => 'The action to take when a spot instance is interrupted. Valid values:'."\n" ."\n" .'- stop: stops the instance.'."\n" ."\n" .'- terminate: releases the instance.'."\n" ."\n" .'Default value: terminate.', 'type' => 'string', 'required' => false, 'example' => 'terminate', 'title' => ''], ], [ 'name' => 'SpotInstancePoolsToUseCount', 'in' => 'query', 'schema' => ['description' => 'Takes effect when `SpotAllocationStrategy` is set to `lowest-price`. Specifies the number of instance types with the lowest prices from which the auto provisioning group creates instances.'."\n" ."\n" .'Valid values: less than the value of N in `LaunchTemplateConfig.N`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'PayAsYouGoAllocationStrategy', 'in' => 'query', 'schema' => ['description' => 'The policy for creating pay-as-you-go instances. Valid values:'."\n" ."\n" .'- lowest-price: cost optimization policy. Selects the instance type with the lowest price.'."\n" ."\n" .'- prioritized: priority-based policy. Creates instances based on the priority specified by `LaunchTemplateConfig.N.Priority`.'."\n" ."\n" .'Default value: lowest-price.', 'type' => 'string', 'required' => false, 'example' => 'prioritized', 'title' => ''], ], [ 'name' => 'ExcessCapacityTerminationPolicy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release instances when the real-time capacity of the auto provisioning group exceeds the target capacity and a scale-in event is triggered. Valid values:'."\n" ."\n" .'- termination: releases the scaled-in instances.'."\n" .'- no-termination: only removes the scaled-in instances from the auto provisioning group.'."\n" ."\n" .'Default value: no-termination.', 'type' => 'string', 'required' => false, 'default' => 'no-termination', 'example' => 'termination', 'title' => ''], ], [ 'name' => 'ValidFrom', 'in' => 'query', 'schema' => ['description' => 'The time when the auto provisioning group is started. Used together with `ValidUntil` to determine the valid period.'."\n" ."\n" .'Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.'."\n" ."\n" .'Default value: the UNIX timestamp at which the request takes effect immediately.', 'type' => 'string', 'required' => false, 'example' => '2019-04-01T15:10:20Z', 'title' => ''], ], [ 'name' => 'ValidUntil', 'in' => 'query', 'schema' => ['description' => 'The time when the auto provisioning group expires. Used together with `ValidFrom` to determine the valid period.'."\n" ."\n" .'Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0.'."\n" ."\n" .'Default value: 2099-12-31T23:59:59Z.', 'type' => 'string', 'required' => false, 'example' => '2019-06-01T15:10:20Z', 'title' => ''], ], [ 'name' => 'TerminateInstancesWithExpiration', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release instances auto provisioning group when the auto-provisioning group expires. Valid values:'."\n" ."\n" .'- true: releases instances auto provisioning group.'."\n" .'- false: only removes instances from the auto-provisioning group.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'TerminateInstances', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release instances auto provisioning group when the auto-provisioning group is deleted. Valid values:'."\n" ."\n" .'- true: releases instances auto provisioning group.'."\n" .'- false: retains instances auto provisioning group.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'MaxSpotPrice', 'in' => 'query', 'schema' => ['description' => 'The maximum price for spot instances in the auto provisioning group.'."\n" ."\n" .'> If both `MaxSpotPrice` and `LaunchTemplateConfig.N.MaxPrice` are specified, the lower value is used.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'TotalTargetCapacity', 'in' => 'query', 'schema' => ['description' => 'The total target capacity of the auto provisioning group. Valid values: positive integers.'."\n" ."\n" .'The total capacity must be greater than or equal to the sum of `PayAsYouGoTargetCapacity` (the target capacity of pay-as-you-go instances) and `SpotTargetCapacity` (the target capacity of spot instances).', 'type' => 'string', 'required' => true, 'example' => '60', 'title' => ''], ], [ 'name' => 'PayAsYouGoTargetCapacity', 'in' => 'query', 'schema' => ['description' => 'The target capacity of pay-as-you-go instances in the auto provisioning group. Valid values: less than or equal to the parameter value of `TotalTargetCapacity`.', 'type' => 'string', 'required' => false, 'example' => '30', 'title' => ''], ], [ 'name' => 'SpotTargetCapacity', 'in' => 'query', 'schema' => ['description' => 'The target capacity of spot instances in the auto provisioning group. Valid values: less than or equal to the parameter value of `TotalTargetCapacity`.', 'type' => 'string', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'DefaultTargetCapacityType', 'in' => 'query', 'schema' => ['description' => 'The billing method for the capacity difference when the sum of `PayAsYouGoTargetCapacity` and `SpotTargetCapacity` is less than `TotalTargetCapacity`. Valid values:'."\n" ."\n" .'- PayAsYouGo: pay-as-you-go instances.'."\n" .'- Spot: spot instances.'."\n" ."\n" .'Default value: Spot.', 'type' => 'string', 'required' => false, 'example' => 'Spot', 'title' => ''], ], [ 'name' => 'LaunchTemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance launch template associated with the auto provisioning group. You can invoke [DescribeLaunchTemplates](~~73759~~) to query active instance launch templates. If you specify both a launch template and launch configuration information (`LaunchConfiguration.*`), the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'lt-bp1fgzds4bdogu03****', 'title' => ''], ], [ 'name' => 'LaunchTemplateVersion', 'in' => 'query', 'schema' => ['description' => 'The version of the instance launch template associated with the auto provisioning group. You can invoke [DescribeLaunchTemplateVersions](~~73761~~) to query active instance launch template versions.'."\n" ."\n" .'Default value: the default version of the launch template.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the auto provisioning group.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe637760', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.ImageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the image used to launch instances. You can call [DescribeImages](~~25534~~) to query available image resources. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'm-bp1g7004ksh0oeuc****', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security group to which the instance belongs. If both a launch template and launch configuration information are specified, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg****', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is an I/O optimized instance. Valid values:'."\n" ."\n" .'- none: non-I/O optimization.'."\n" .'- optimized: I/O optimization.'."\n" ."\n" .'For retired instance types, the default value is none. For other instance types, the default value is optimized.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'optimized ', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.InternetChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method for network usage. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.'."\n" ."\n" .'> In pay-by-traffic mode, the peak inbound and outbound bandwidths are used as upper limits of bandwidths instead of guaranteed performance metrics. When resources are contended, the peak bandwidths may be limited. If you require guaranteed bandwidth, use pay-by-bandwidth.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'PayByTraffic', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.InternetMaxBandwidthIn', 'in' => 'query', 'schema' => ['description' => 'The maximum inbound public bandwidth. Unit: Mbit/s. Valid values:'."\n" ."\n" .'- If the maximum outbound public bandwidth is less than or equal to 10 Mbit/s: 1 to 10. Default value: 10.'."\n" .'- If the maximum outbound public bandwidth is greater than 10 Mbit/s: 1 to the value of `LaunchConfiguration.InternetMaxBandwidthOut`. Default value: the value of `LaunchConfiguration.InternetMaxBandwidthOut`.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.InternetMaxBandwidthOut', 'in' => 'query', 'schema' => ['description' => 'The maximum outbound public bandwidth. Unit: Mbit/s. Valid values: 0 to 100.'."\n" ."\n" .'Default value: 0.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.InstanceName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with `http://` or `https://`. It can contain Chinese characters, letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).'."\n" ."\n" .'Default value: the `InstanceId` of the instance.'."\n" ."\n" .'When you create multiple ECS instances, you can batch configure sequential instance names. For more information, see [Batch configure sequential names or hostnames for multiple instances](~~196048~~).'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'k8s-node-[1,4]-alibabacloud', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.HostName', 'in' => 'query', 'schema' => ['description' => 'The hostname of the instance. The following limits apply:'."\n" ."\n" .'- Periods (.) and hyphens (-) cannot be used as the first or last characters and cannot be used consecutively.'."\n" .'- Windows instances: The hostname must be 2 to 15 characters in length and cannot contain periods (.) or consist entirely of digits. It can contain letters, digits, and hyphens (-).'."\n" .'- Instances of other types (such as Linux): The hostname must be 2 to 64 characters in length and can contain multiple periods (.). Each segment between periods can contain letters, digits, and hyphens (-).'."\n" .'- You cannot specify both `LaunchConfiguration.HostName` and `LaunchConfiguration.HostNames.N`. Otherwise, an error is returned.'."\n" .'- If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'k8s-node-[1,4]-ecshost', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.InstanceDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the instance. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'Instance_Description', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the key pair.'."\n" ."\n" .'- For Windows instances, this parameter is ignored and is empty by default.'."\n" .'- For Linux instances, password-based logon is disabled during initialization.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'KeyPair_Name', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance RAM role. You can call the RAM API [ListRoles](~~28713~~) to query the instance RAM roles that you have created. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'RAM_Name', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SecurityEnhancementStrategy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable security hardening. Valid values:'."\n" ."\n" .'- Active: enables security hardening. This value is applicable only to public images.'."\n" .'- Deactive: disables security hardening. This value is applicable to all image types.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'Active', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.UserData', 'in' => 'query', 'schema' => ['description' => 'Instance user data of the instance. Instance user data must be Base64-encoded. The maximum size of the raw data is 32 KB. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'ZWNobyBoZWxsbyBlY3Mh', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SystemDiskCategory', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.'."\n" ."\n" .'For retired instance types that are non-I/O optimization instances, the default value is cloud. For other instance types, the default value is cloud_efficiency.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SystemDiskSize', 'in' => 'query', 'schema' => ['description' => 'The size of the system disk. Unit: GiB. Valid values: 20 to 500. The value of this parameter must be greater than or equal to max{20, size of the image specified by LaunchConfiguration.ImageId}.'."\n" ."\n" .'Default value: max{40, size of the image specified by LaunchConfiguration.ImageId}.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '40', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SystemDiskName', 'in' => 'query', 'schema' => ['description' => 'The name of the system disk. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with `http://` or `https://`. It can contain digits, periods (.), colons (:), underscores (_), and hyphens (-).'."\n" ."\n" .'Default value: empty.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssdSystem', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SystemDiskDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'SystemDisk_Description', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SystemDiskPerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level (PL) of the enterprise SSD used as the system disk. Valid values:'."\n" ."\n" .'- PL0 (default): a single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1: a single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: a single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: a single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [ESSDs](~~122389~~).'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'PL0', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.PasswordInherit', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the password preset in the image. Valid values:'."\n" ."\n" .'- true: uses the preset password.'."\n" .'- false: does not use the preset password.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the instance belongs. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.CreditSpecification', 'in' => 'query', 'schema' => ['description' => 'The running mode of the burstable instance. Valid values:'."\n" ."\n" .'- Standard: standard mode. For more information about instance performance, see the performance constrained mode section in [Overview of burstable instances](~~59977~~).'."\n" .'- Unlimited: unlimited mode. For more information about instance performance, see the unlimited mode section in [Overview of burstable instances](~~59977~~).'."\n" ."\n" .'Default value: none.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.Password', 'in' => 'query', 'schema' => ['description' => 'The password of the instance. The password must be 8 to 30 characters in length and must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported:'."\n" ."\n" .'``()`~!@#$%^&*-_+=|{}`[]`:;\'<>,.?/``'."\n" ."\n" .'For Windows instances, the password cannot start with a forward slash (/).'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'EcsV587!', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.DeploymentSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'required' => false, 'example' => 'ds-bp1frxuzdg87zh4p****', 'title' => ''], ], [ 'name' => 'LaunchTemplateConfig', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of extended launch templates.', 'type' => 'array', 'items' => [ 'description' => 'The extended launch template information.', 'type' => 'object', 'properties' => [ 'VSwitchId' => ['description' => 'The ID of the vSwitch to which the ECS instance in the extended launch template is connected. The zone of the ECS instance created from the extended template is determined by the vSwitch.'."\n" ."\n" .'> If you specify LaunchTemplateConfig, LaunchTemplateConfig.N.VSwitchId is required.', 'type' => 'string', 'required' => false, 'example' => 'vsw-sn5bsitu4lfzgc5o7****', 'title' => ''], 'MaxPrice' => ['description' => 'The maximum price for spot instances in the extended launch template.'."\n" ."\n" .'> After you set `LaunchTemplateConfig`, `LaunchTemplateConfig.N.MaxPrice` is required.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '3', 'title' => ''], 'Priority' => ['description' => 'The priority of the extended launch template. A value of 0 indicates the highest priority. Valid values: 0 to +∞.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'InstanceType' => ['description' => 'The instance type in the extended launch template. Valid values of N: 1 to 20. For valid values, see [Instance families](~~25378~~).', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5.large', 'title' => ''], 'WeightedCapacity' => ['description' => 'The weight of the instance type in the extended launch template. A higher value indicates that a single instance can meet more computing power requirements, which reduces the number of instances required. Valid values: greater than 0.'."\n" ."\n" .'You can calculate the weight based on the computing power of the specified instance type and the minimum computing power of a single node in the cluster. For example, if the minimum computing power of a single node is 8 vCPUs and 60 GiB:'."\n" ."\n" .'- The weight of an instance type with 8 vCPUs and 60 GiB can be set to 1.'."\n" .'- The weight of an instance type with 16 vCPUs and 120 GiB can be set to 2.', 'type' => 'number', 'format' => 'double', 'required' => false, 'example' => '2', 'title' => ''], 'MaxQuantity' => ['description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => 'false', 'title' => ''], 'Cores' => [ 'description' => 'The list of vCPU core counts for instance types.', 'type' => 'array', 'items' => ['description' => 'The number of vCPU cores for the instance type, used to filter instance types that meet the requirements. For more information, see [Instance families](~~25378~~). Valid values of N: 1 to 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], 'required' => false, 'maxItems' => 5, 'title' => '', 'example' => '', ], 'Memories' => [ 'description' => 'The list of memory sizes for instance types.', 'type' => 'array', 'items' => ['description' => 'The memory size of the instance type. Unit: GiB. Used to filter instance types that meet the requirements. For more information, see [Instance families](~~25378~~). Valid values of N: 1 to 10.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '4', 'title' => ''], 'required' => false, 'maxItems' => 5, 'title' => '', 'example' => '', ], 'InstanceFamilyLevel' => ['description' => 'The level of the instance family, used to filter instance types that meet the requirements. Valid values:'."\n" ."\n" .'- EntryLevel: entry level, which refers to shared instance types. Lower cost but no guarantee of stable computing performance. Suitable for scenarios with low average CPU utilization. For more information, see [Shared instance families](~~108489~~).'."\n" .'- EnterpriseLevel: enterprise level. Stable performance with dedicated resources. Suitable for scenarios that require high stability. For more information, see [Instance families](~~25378~~).'."\n" .'- CreditEntryLevel: credit-based entry level, which refers to burstable instances. Uses CPU credits to ensure computing performance. Suitable for scenarios with low average CPU utilization and occasional bursts. For more information, see [Overview of burstable instances](~~59977~~).'."\n" ."\n" .'Valid values of N: 1 to 10.', 'type' => 'string', 'required' => false, 'example' => 'EnterpriseLevel', 'title' => ''], 'ExcludedInstanceTypes' => [ 'description' => 'The list of instance types to exclude.', 'type' => 'array', 'items' => ['description' => 'The instance type to exclude. You can use wildcards (*) to exclude a single instance type or an entire instance family. Examples:'."\n" ."\n" .'- ecs.c6.large: excludes the ecs.c6.large instance type.'."\n" .'- ecs.c6.*: excludes all instance types in the c6 instance family.', 'type' => 'string', 'required' => false, 'example' => ' ecs.n1.small/ecs.n1.*/*7*', 'title' => ''], 'required' => false, 'maxItems' => 5, 'title' => '', 'example' => '', ], 'Architectures' => [ 'description' => 'The list of architecture types for instance types.', 'type' => 'array', 'items' => ['description' => 'The architecture type of the instance type. Valid values:'."\n" ."\n" .'- X86: x86 computing.'."\n" .'- Heterogeneous: heterogeneous computing, such as GPU or FPGA.'."\n" .'- BareMental: ECS Bare Metal Instance.'."\n" .'- Arm: Arm computing.'."\n" .'- SuperComputeCluster: Super Computing Cluster (SCC).'."\n" ."\n" .'Default value: includes all architecture types.', 'type' => 'string', 'required' => false, 'example' => 'X86', 'title' => ''], 'required' => false, 'maxItems' => 5, 'title' => '', 'example' => '', ], 'BurstablePerformance' => ['description' => 'Specifies whether to include burstable instance types. Valid values:'."\n" ."\n" .'- Exclude: excludes burstable instance types.'."\n" .'- Include: includes burstable instance types.'."\n" .'- Required: includes only burstable instance types.'."\n" ."\n" .'Default value: Include.', 'type' => 'string', 'required' => false, 'example' => 'Include', 'title' => ''], 'ImageId' => ['description' => 'The image ID. You can use this parameter to set the image for the current resource pool. If not set, the image specified in `LaunchConfiguration.ImageId` or the launch template is used by default. You can call [DescribeImages](~~25534~~) to query available image resources.'."\n" .'Note: This parameter is supported only when `AutoProvisioningGroupType = instant`.', 'type' => 'string', 'required' => false, 'example' => 'aliyun_3_x64_20G_alibase_20210425.vhd', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'LaunchConfiguration.DataDisk', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of data disk configurations in the launch configuration.', 'type' => 'array', 'items' => [ 'description' => 'The data disk configuration information in the launch configuration.', 'type' => 'object', 'properties' => [ 'PerformanceLevel' => ['description' => 'The performance level of the enterprise SSD used as a data disk. The value of N must be consistent with the N in `LaunchConfiguration.DataDisk.N.Category`. Valid values:'."\n" ."\n" .'- PL0: a single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1 (default): a single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: a single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: a single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [ESSDs](~~122389~~).'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], 'KmsKeyId' => ['description' => 'The ID of the KMS key for the data disk. If both a launch template and launch configuration are specified, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], 'Description' => ['description' => 'The description of the data disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'DataDisk_Description', 'title' => ''], 'SnapshotId' => ['description' => 'The ID of the snapshot used to create data disk N. Valid values of N: 1 to 16.'."\n" ."\n" .'After you specify this parameter, the `LaunchConfiguration.DataDisk.N.Size` parameter is ignored. The actual size of the created disk is the size of the specified snapshot. Snapshots created on or before July 15, 2013 cannot be used. Requests that use such snapshots are rejected.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 's-bp17441ohwka0yuh****', 'title' => ''], 'Size' => ['description' => 'The size of data disk N. Valid values of N: 1 to 16. Unit: GiB. Valid values:'."\n" ."\n" .'- cloud_efficiency: 20 to 32768.'."\n" .'- cloud_ssd: 20 to 32768.'."\n" .'- cloud_essd: depends on the value of `LaunchConfiguration.DataDisk.N.PerformanceLevel`.'."\n" .' - PL0: 40 to 32768.'."\n" .' - PL1: 20 to 32768.'."\n" .' - PL2: 461 to 32768.'."\n" .' - PL3: 1261 to 32768.'."\n" .'- cloud: 5 to 2000.'."\n" ."\n" .'> The value of this parameter must be greater than or equal to the size of the snapshot specified by `LaunchConfiguration.DataDisk.N.SnapshotId`.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], 'Device' => ['description' => 'The mount point of the data disk. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => '/dev/vd1', 'title' => ''], 'DiskName' => ['description' => 'The name of the data disk. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with `http://` or `https://`. It can contain digits, periods (.), colons (:), underscores (_), and hyphens (-).'."\n" ."\n" .'Default value: empty.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssdData', 'title' => ''], 'Category' => ['description' => 'The category of data disk N. Valid values of N: 1 to 16. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.'."\n" ."\n" .'For I/O optimized instances, the default value is cloud_efficiency. For non-I/O optimized instances, the default value is cloud.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], 'DeleteWithInstance' => ['description' => 'Specifies whether the data disk is released when the instance is released. Valid values:'."\n" .'- true: the data disk is released when the instance is released.'."\n" .'- false: the data disk is not released when the instance is released.'."\n" ."\n" .'Default value: true.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'Encrypted' => ['description' => 'Specifies whether data disk N is encrypted. Valid values:'."\n" ."\n" .'- true: encrypted.'."\n" .'- false: not encrypted.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'EncryptAlgorithm' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50,000, 1000 × capacity - baseline performance}.'."\n" ."\n" .'Baseline performance = min{1,800 + 50 × capacity, 50,000}.'."\n" ."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '40000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Specifies whether to enable the performance burst feature. Valid values:'."\n" ."\n" .'- true: enables the feature.'."\n" .'- false: disables the feature.'."\n" ."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'AutoSnapshotPolicyId' => ['description' => 'The ID of the automatic snapshot policy applied to the data disk.'."\n" ."\n" .'Note:'."\n" .'- This parameter takes effect only when you create a one-time synchronous delivery auto provisioning group (AutoProvisioningGroupType=instant).', 'type' => 'string', 'required' => false, 'example' => 'sp-bp67acfmxazb4p****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'LaunchConfiguration.Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags in the launch configuration.', 'type' => 'array', 'items' => [ 'description' => 'The tag information in the launch configuration.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the instance. Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be up to 128 characters in length and cannot start with aliyun or acs:. It cannot contain `http://` or `https://`. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the instance. Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters in length and cannot start with acs:. It cannot contain `http://` or `https://`. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'SystemDiskConfig', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of system disk configurations.', 'type' => 'array', 'items' => [ 'description' => 'The system disk configuration information.', 'type' => 'object', 'properties' => [ 'DiskCategory' => ['description' => 'The category of the system disk. You can specify multiple candidate disk categories. The specified order determines the priority of each disk category. When a disk category is unavailable, the system automatically switches to the next category. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'DataDiskConfig', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of data disk configurations.', 'type' => 'array', 'items' => [ 'description' => 'The data disk configuration information.', 'type' => 'object', 'properties' => [ 'DiskCategory' => ['description' => 'The category of the data disk. You can specify multiple candidate disk categories. The specified order determines the priority of each disk category. When a disk category is unavailable, the system automatically switches to the next category. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.', 'type' => 'string', 'required' => false, 'example' => 'cloud_efficiency', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'LaunchConfiguration.HostNames', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of hostnames for one or more instances. The following limits apply:'."\n" ."\n" .'- This parameter takes effect only when you create a one-time synchronous delivery auto provisioning group (`AutoProvisioningGroupType=instant`).'."\n" .'- N indicates the number of instances. Valid values of N: 1 to 1000. The value must be consistent with the TotalTargetCapacity parameter.'."\n" .'- Periods (.) and hyphens (-) cannot be used as the first or last characters and cannot be used consecutively.'."\n" .'- If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'array', 'items' => ['description' => 'The hostname. The following limits apply:'."\n" ."\n" .'- Periods (.) and hyphens (-) cannot be used as the first or last characters and cannot be used consecutively.'."\n" .'- Windows instances: The hostname must be 2 to 15 characters in length and cannot contain periods (.) or consist entirely of digits. It can contain letters, digits, and hyphens (-).'."\n" .'- Instances of other types (such as Linux): The hostname must be 2 to 64 characters in length and can contain multiple periods (.). Each segment between periods can contain letters, digits, and hyphens (-).'."\n" .'- You cannot specify both `LaunchConfiguration.HostName` and `LaunchConfiguration.HostNames.N`. Otherwise, an error is returned.', 'type' => 'string', 'required' => false, 'example' => 'ecs-host-01 ', 'title' => ''], 'required' => false, 'example' => 'ecs-host-01', 'maxItems' => 1000, 'title' => '', ], ], [ 'name' => 'MinTargetCapacity', 'in' => 'query', 'schema' => ['description' => 'The minimum target capacity of the auto provisioning group. Valid values', 'type' => 'string', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.SecurityGroupIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of security groups to which the instance belongs.', 'type' => 'array', 'items' => ['description' => 'The ID of the security group to which the instance belongs. If both a launch template and launch configuration information are specified, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'LaunchConfiguration.SystemDisk', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The system disk information of the instance. If you specify both a launch template and launch configuration information, the launch template takes precedence.', 'type' => 'object', 'properties' => [ 'Encrypted' => ['description' => 'Specifies whether the system disk is encrypted. Valid values:'."\n" ."\n" .'- true: encrypted.'."\n" ."\n" .'- false: not encrypted.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'If you specify both.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''], 'KMSKeyId' => ['description' => 'The KMS key ID of the system disk.'."\n" ."\n" .'When both a launch template and launch configuration information are specified, the launch template takes precedence.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], 'EncryptAlgorithm' => ['description' => 'The encryption algorithm for the system disk. Valid values:'."\n" ."\n" .'- aes-256'."\n" .'- sm4-128'."\n" ."\n" .'Default value: aes-256.'."\n" ."\n" .'If you specify both a launch template and launch configuration information, the launch template takes precedence.'."\n" ."\n" .'> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'aes-256', 'title' => ''], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50,000, 1000 × Capacity - Baseline performance}.'."\n" ."\n" .'Baseline performance = min{1,800 + 50 × Capacity, 50,000}.'."\n" .'> This parameter is supported only when SystemDisk.Category is set to cloud_auto. For more information, see [ESSD AutoPL disk](~~368372~~).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '40000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Specifies whether to enable the performance burst feature. Valid values:'."\n" ."\n" .'- true: enables the feature.'."\n" .'- false: does not enable the feature.'."\n" ."\n" .'> This parameter is supported only when `SystemDisk.Category` is set to `cloud_auto`. For more information, see [ESSD AutoPL disk](~~368372~~).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'AutoSnapshotPolicyId' => ['description' => 'The ID of the automatic snapshot policy to apply to the system disk.'."\n" ."\n" .'After you set this parameter, note the following items:'."\n" .'- This parameter takes effect only when you create a one-time synchronization delivery auto provisioning group (AutoProvisioningGroupType=instant).', 'type' => 'string', 'required' => false, 'example' => 'sp-bp67acfmxazb4p****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'LaunchConfiguration.Arn', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'object', 'properties' => [ 'Rolearn' => ['description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'string', 'required' => false, 'example' => 'acs:ram::123456789012****:role/adminrole', 'title' => ''], 'RoleType' => ['description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'string', 'required' => false, 'example' => '34458433936495****:alice', 'title' => ''], 'AssumeRoleFor' => ['description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '123456789012****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'HibernationOptionsConfigured', 'in' => 'query', 'schema' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.AutoReleaseTime', 'in' => 'query', 'schema' => ['description' => 'The automatic release time of the pay-as-you-go instance. Specify the time in the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC.'."\n" ."\n" .'- If the value of seconds (`ss`) is not `00`, the time is automatically rounded down to the start of the current minute (`mm`).'."\n" ."\n" .'- The earliest release time is 30 minutes after the current time.'."\n" ."\n" .'- The latest release time cannot be more than three years from the current time.', 'type' => 'string', 'required' => false, 'example' => '2018-01-01T12:05:00Z', 'title' => ''], ], [ 'name' => 'LaunchConfiguration.ImageFamily', 'in' => 'query', 'schema' => ['description' => 'The name of the image family. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with `aliyun` or `acs:`. The name cannot contain `http://` or `https://`. The name can contain digits, colons (:), underscores (_), or hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'hangzhou-daily-update', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to attach to the auto provisioning group.', 'type' => 'array', 'items' => [ 'description' => 'The tag to attach to the auto provisioning group.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the auto provisioning group.'."\n" ."\n" .'Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with aliyun or acs:. The tag key cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the auto provisioning group.'."\n" ."\n" .'Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourcePoolOptions', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The resource pool policy used to create instances. After you set this parameter, note the following items:'."\n" .'- This parameter takes effect only when you create pay-as-you-go instances.'."\n" .'- This parameter takes effect only when you create a one-time synchronization delivery auto provisioning group (`AutoProvisioningGroupType=instant`).', 'type' => 'object', 'properties' => [ 'Strategy' => ['description' => 'Resource pools include private pools generated after Elasticity Assurance or Capacity Reservation takes effect, and public pools for instance startup. Valid values:'."\n" ."\n" .'- PrivatePoolFirst: private pool first. When you select this strategy and specify ResourcePoolOptions.PrivatePoolIds, the specified private pools are used first. If no private pools are specified or the specified private pools have insufficient capacity, open private pools are automatically matched. If no matching private pools are available, the public pool is used to create instances.'."\n" ."\n" .'- PrivatePoolOnly: private pool only. When you select this strategy, you must specify ResourcePoolOptions.PrivatePoolIds. If the specified private pools have insufficient capacity, the instance fails to start.'."\n" ."\n" .'- PublicPoolOnly: uses the public pool to create instances.'."\n" ."\n" .'Default value: PublicPoolOnly.', 'type' => 'string', 'required' => false, 'example' => 'PrivatePoolFirst', 'title' => ''], 'PrivatePoolIds' => [ 'description' => 'The list of private pool IDs. Valid values: 1 to 20.', 'type' => 'array', 'items' => ['description' => 'The private pool ID, which is the Elasticity Assurance ID or Capacity Reservation ID. Only Target-mode private pool IDs can be specified.', 'type' => 'string', 'required' => false, 'example' => 'eap-bp67acfmxazb4****', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'LaunchConfiguration', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The launch configuration parameters.', 'type' => 'object', 'properties' => [ 'Period' => ['description' => 'The subscription duration of the resource. Unit: specified by `PeriodUnit`. This parameter is required when you create subscription instances. Valid values:'."\n" ."\n" .''."\n" .'- If PeriodUnit is set to Week, valid values of Period: 1, 2, 3, and 4.'."\n" .'- If PeriodUnit is set to Month, valid values of Period: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.'."\n" ."\n" .''."\n" ."\n" .'If PeriodUnit is set to Month, valid values of Period: 1, 2, 3, 6, and 12.'."\n" ."\n" .'If PeriodUnit is set to Month, valid values of Period: 1, 2, 3, 6, and 12.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'PeriodUnit' => ['description' => 'The unit of the subscription billable methods duration. Valid values: '."\n" ."\n" .''."\n" .'- Week'."\n" .'- Month (default)'."\n" ."\n" .''."\n" ."\n" .'Month (default).', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], 'AutoRenew' => ['description' => 'Specifies whether to enable auto-renewal. This parameter takes effect when you create subscription instances. Valid values:'."\n" ."\n" .'- true: enables auto-renewal.'."\n" .'- false (default): does not enable auto-renewal.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'AutoRenewPeriod' => ['description' => 'The auto-renewal period. Valid values: '."\n" .' '."\n" .''."\n" .'- If PeriodUnit is set to Week: 1, 2, and 3.'."\n" .'- If PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, and 60.'."\n" ."\n" .''."\n" ."\n" .'If PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, and 60.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'SpotDuration' => ['description' => 'The protection period of the spot instance. Unit: hours. Default value: 1. Valid values:'."\n" .'- 1: After a spot instance is created, Alibaba Cloud ensures that the instance is not subject to automatic release within 1 hour. After the 1-hour protection period ends, the system compares the bid price with the marketplace price and checks the resource inventory to determine whether to retain or revoke the instance.'."\n" .'- 0: After a spot instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system compares the bid price with the marketplace price and checks the resource inventory to determine whether to retain or revoke the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. Select an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'After you set this parameter, note the following items:'."\n" .'- This parameter takes effect only when you create a one-time synchronization delivery auto provisioning group (AutoProvisioningGroupType=instant).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], 'SpotInterruptionBehavior' => ['description' => 'The spot instance break mode. Valid values:'."\n" ."\n" .'- Terminate: directly releases the instance.'."\n" ."\n" .'- Stop: puts the instance into economical mode.'."\n" ."\n" .'For more information about economical mode, see [Economical mode](~~63353~~).'."\n" ."\n" .'Default value: Terminate.'."\n" ."\n" .'After you set this parameter, note the following items:'."\n" .'- This parameter takes effect only when you create a one-time synchronization delivery auto provisioning group (AutoProvisioningGroupType=instant).', 'type' => 'string', 'required' => false, 'example' => 'Terminate', 'title' => ''], 'ImageOptions' => [ 'description' => 'The image-related property information.'."\n" ."\n" .'After you set this parameter, note the following items:'."\n" .'- This parameter takes effect only when you create a one-time synchronization delivery auto provisioning group (AutoProvisioningGroupType=instant).', 'type' => 'object', 'properties' => [ 'LoginAsNonRoot' => ['description' => 'Specifies whether the instance that uses this image supports logon as the ecs-user user. Valid values:'."\n" .'- true: supported.'."\n" .'- false: not supported.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'SchedulerOptions' => [ 'type' => 'object', 'properties' => [ 'DedicatedHostId' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'DedicatedHostClusterId' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'SecurityOptions' => [ 'type' => 'object', 'properties' => [ 'TrustedSystemMode' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'CpuOptions' => [ 'description' => 'The CPU-related configurations.', 'type' => 'object', 'properties' => [ 'Core' => ['description' => 'The number of CPU cores.'."\n" ."\n" .'Default value: see [Specify and view CPU options](https://www.alibabacloud.com/help/en/ecs/user-guide/specify-and-view-cpu-options).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], 'ThreadsPerCore' => ['description' => 'The number of threads per CPU core. The number of vCPUs of the ECS instance = CpuOptions.Core value × CpuOptions.ThreadsPerCore value.'."\n" ."\n" .'If CpuOptions.ThreadsPerCore is set to 1, CPU hyper-threading is disabled.'."\n" ."\n" .'Only specific instance types support custom CPU thread counts.'."\n" ."\n" .'For valid values and default values, see [Specify and view CPU options](https://www.alibabacloud.com/help/en/ecs/user-guide/specify-and-view-cpu-options).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'PrePaidOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The detailed capacity configuration for subscription instances.', 'type' => 'object', 'properties' => [ 'SpecifyCapacityDistribution' => [ 'description' => 'The minimum capacity set for different instance types. This parameter is supported only when `AutoProvisioningGroupType = request`.', 'type' => 'array', 'items' => [ 'description' => 'The minimum capacity for an instance type.', 'type' => 'object', 'properties' => [ 'InstanceTypes' => [ 'description' => 'The set of instance types. Duplicate values are not allowed, and the instance types must be within the range of LaunchTemplateConfig.InstanceType.', 'type' => 'array', 'items' => ['description' => 'The instance type.', 'type' => 'string', 'required' => false, 'example' => 'ecs.c6.large', 'title' => ''], 'required' => false, 'title' => '', 'example' => '', ], 'MinTargetCapacity' => ['description' => 'The minimum number of instances to deliver within the `InstanceTypes` range.'."\n" ."\n" .'> The sum of all MinTargetCapacity values (`sum(MinTargetCapacity) <= TotalTargetCapacity`) cannot exceed TotalTargetCapacity. If any instance type set cannot meet the MinTargetCapacity requirement due to insufficient inventory or other reasons, the entire request fails.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ExecutionMode', 'in' => 'query', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'CandidateOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'type' => 'object', 'properties' => [ 'TimeoutMinutes' => ['type' => 'integer', 'format' => 'int32', 'example' => '60', 'description' => '', 'title' => ''], 'Evaluate' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'AutoProvisioningGroupId' => ['description' => 'The ID of the auto provisioning group.', 'type' => 'string', 'example' => 'apg-sn54avj8htgvtyh8****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '745CEC9F-0DD7-4451-9FE7-8B752F39****', 'title' => ''], 'LaunchResults' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LaunchResult' => [ 'description' => 'The set of instances created by the auto provisioning group. This value is returned only when the delivery type of the auto provisioning group is one-time synchronization delivery (`instant`).', 'type' => 'array', 'items' => [ 'description' => 'The information about the instances created by the auto provisioning group.', 'type' => 'object', 'properties' => [ 'ZoneId' => ['description' => 'The zone ID of the instance.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'ErrorMsg' => ['description' => 'The error message returned when the instance fails to be created.', 'type' => 'string', 'example' => 'Specific parameter is not valid.', 'title' => ''], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'ErrorCode' => ['description' => 'The error code returned when the instance fails to be created.', 'type' => 'string', 'example' => 'InvalidParameter', 'title' => ''], 'SpotStrategy' => ['description' => 'The bidding policy for the pay-as-you-go instance. Valid values:'."\n" .'- NoSpot: a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: a spot instance with a maximum bid price.'."\n" .'- SpotAsPriceGo: a spot instance priced at the market price at the time of purchase.', 'type' => 'string', 'example' => 'NoSpot', 'title' => ''], 'Amount' => ['description' => 'The number of instances in the list of successfully created instance IDs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceId' => [ 'description' => 'The list of successfully created instance IDs.', 'type' => 'array', 'items' => ['description' => 'The list of successfully created instance IDs.', 'type' => 'string', 'example' => '["i-bp67acfmxazb4p****"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'CandidateEvaluateLevel' => ['type' => 'string', 'example' => 'Low', 'description' => '', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidAutoProvisioningGroupName.Malformed', 'errorMessage' => 'The specified parameter "AutoProvisioningGroupName" is not valid.', 'description' => 'The specified elastic provisioning group name AutoProvisioningGroupName is invalid.'], ['errorCode' => 'InvalidAutoProvisioningGroupType.ValueNotSupported', 'errorMessage' => 'The specified parameter "AutoProvisioningGroupType" is not supported.', 'description' => ''], ['errorCode' => 'InvalidFleetExcessCapacityTerminationPolicy.ValueNotSupported', 'errorMessage' => 'The specified parameter "ExcessCapacityTerminationPolicy" is not supported.', 'description' => ''], ['errorCode' => 'InvalidDefaultTargetCapacityType.ValueNotSupported', 'errorMessage' => 'The specified parameter "DefaultTargetCapacityType" is not supported.', 'description' => ''], ['errorCode' => 'InvalidSpotAllocationStrategy.ValueNotSupported', 'errorMessage' => 'The specified parameter "SpotAllocationStrategy" is not supported.', 'description' => ''], ['errorCode' => 'InvalidSpotInstanceInterruptionBehavior.ValueNotSupported', 'errorMessage' => 'The specified parameter "SpotInstanceInterruptionBehavior" is not supported.', 'description' => ''], ['errorCode' => 'InvalidPayAsYouGoAllocationStrategy.ValueNotSupported', 'errorMessage' => 'The specified parameter "PayAsYouGoAllocationStrategy" is not supported.', 'description' => ''], ['errorCode' => 'MissingParameter.SpotAllocationStrategy', 'errorMessage' => 'The specified parameter "SpotAllocationStrategy" is empty.', 'description' => ''], ['errorCode' => 'MissingParameter.LaunchTemplateConfigs', 'errorMessage' => 'The specified parameter "LaunchTemplateConfigs" is empty.', 'description' => 'The specified LaunchTemplateConfigs parameter is empty'], ['errorCode' => 'InvalidValidTime.MalFormed', 'errorMessage' => 'The specified parameter "ValidTime" is not supported.', 'description' => ''], ['errorCode' => 'InvalidLaunchTemplateVersion.ValueNotSupported', 'errorMessage' => 'The specified parameter "LaunchTemplateVersion" is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified parameter "AutoProvisioningGroup" should not be null.', 'description' => ''], ['errorCode' => 'InvalidRegion.ValueNotSupported', 'errorMessage' => 'The specified Region does not exist.', 'description' => ''], ['errorCode' => 'InvalidDescription.ValueNotSupported', 'errorMessage' => 'The specified description is illegal.', 'description' => ''], ['errorCode' => 'InvalidLaunchTemplate.ValueNotSupported', 'errorMessage' => 'The SecurityGroupId or imageId in LaunchTemplate is not exists.', 'description' => 'The security group ID or image ID in the launch template does not exist.'], ['errorCode' => 'InvalidCapacity.ValueNotSupported', 'errorMessage' => 'The Capacity is illegal, or the TargetCapacity is large than SpotCapacity + PayAsYouGoCapacity.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The instanceType is illegal.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => 'An internal error has occurred. Try again later. '], ['errorCode' => 'InvalidLaunchTemplateConfigs.SizeExceed', 'errorMessage' => 'The size of LaunchTemplateConfigs exceeds limit.', 'description' => 'The number of LaunchTemplateConfig in the elastic supply group exceeds the limit.'], ['errorCode' => 'InvalidParameter.SpotInstancePoolsToUseCount', 'errorMessage' => 'The specified parameter "SpotInstancePoolsToUseCount" is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.ResourceGroupId', 'errorMessage' => 'The specified parameter "ResourceGroupId" is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.TargetCapacity', 'errorMessage' => 'The Capacity is illegal, TotalTargetCapacity, PayAsYouGoTargetCapacity, SpotTargetCapacity must be specified, meanwhile, the TargetCapacity must be larger than or equal to the sum of SpotCapacity and OnDemandCapacity.', 'description' => ''], ['errorCode' => 'MissingParameter.WeightedCapacity', 'errorMessage' => 'The WeightedCapacity of LaunchTemplateConfig should not be empty.', 'description' => ''], ['errorCode' => 'InvalidParameter.WeightedCapacityBeyondRange', 'errorMessage' => 'The WeightedCaTpacity of LaunchTemplateConfig beyond permitted range.', 'description' => ''], ['errorCode' => 'InvalidParameter.MaxPrice', 'errorMessage' => 'The specified parameter "MaxSpotPrice" or "MaxPrice" of LaunchTemplateConfig is not valid.', 'description' => ''], ['errorCode' => 'NoPermission', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Duplicate.DiskCategory', 'errorMessage' => 'The specified disk configs contains duplicate DiskCategory.', 'description' => ''], ['errorCode' => 'InvalidImageFamily.Confict', 'errorMessage' => 'The specified parameter ImageFamily should be empty when the parameter ImageId is specified.', 'description' => 'The specified parameter ImageFamily should be empty when the parameter ImageId is specified.'], ['errorCode' => 'Invalid.ResourcePoolOptions.PrivatePoolIds', 'errorMessage' => 'The zone or instancetype of the ResourcePoolOptions.PrivatePoolIds does not match the LaunchTemplateConfig.', 'description' => 'The zone or instancetype of the ResourcePoolOptions.PrivatePoolIds does not match the LaunchTemplateConfig.'], ['errorCode' => 'Invalid.ResourcePoolOptions.Strategy', 'errorMessage' => 'The specified ResourcePoolOptions.Strategy is invalid.', 'description' => 'The specified ResourcePoolOptions.Strategy is invalid.'], ['errorCode' => 'Invalid.ResourcePoolOptionsPrivatePoolIds.SizeExceed', 'errorMessage' => 'The size of ResourcePoolOptions.PrivatePoolIds exceeds limit.', 'description' => 'The size of ResourcePoolOptions.PrivatePoolIds exceeds limit.'], ['errorCode' => 'MissingParameter.ResourcePoolOptions.PrivatePoolIds', 'errorMessage' => 'The specified ResourcePoolOptions.PrivatePoolIds should not be null when ResourcePoolOptions.Strategy is PrivatePoolOnly.', 'description' => 'The specified ResourcePoolOptions.PrivatePoolIds should not be null when ResourcePoolOptions.Strategy is PrivatePoolOnly.'], ['errorCode' => 'InvalidSpotDuration', 'errorMessage' => 'The specified SpotDuration is not valid.', 'description' => 'The specified SpotDuration parameter is invalid.'], ['errorCode' => 'InvalidSpotInterruptionBehavior', 'errorMessage' => '%s', 'description' => 'The specified SpotInterruptionBehavior parameter is not supported.'], ['errorCode' => 'InvalidParameter.SecurityGroupIdRepeated', 'errorMessage' => 'The SecurityGroupId is repeated.', 'description' => 'Duplicate security group.'], ['errorCode' => 'VpcMismatch.SecurityGroupAndVSwitch', 'errorMessage' => 'Specified security group and virtual switch are not in the same VPC.', 'description' => 'The specified security group is not in the same VPC as the VSwitch.'], ['errorCode' => 'InvalidMinTargetCapacity.NotSatisfied', 'errorMessage' => 'The inventory of specified InstanceType does not meet the MinTargetCapacity.', 'description' => 'The inventory of specified InstanceType does not meet the MinTargetCapacity.'], ['errorCode' => 'InvalidParameterRange.MinTargetCapacity', 'errorMessage' => 'The MinTargetCapacity exceeds the limit[0-TotalTargetCapacity].', 'description' => ''], ['errorCode' => 'InvalidUserData.Base64FormatInvalid', 'errorMessage' => 'The specified parameter UserData must be base64 encoded.', 'description' => 'The specified parameter UserData must be base64-encoded.'], ['errorCode' => 'InvalidUserData.SizeExceeded', 'errorMessage' => 'The specified parameter UserData exceeds the size.', 'description' => 'The size of user data specified by the UserData parameter exceeds the upper limit.'], ['errorCode' => 'InvalidAutoReleaseTime.Malformed', 'errorMessage' => 'The specified parameter AutoReleaseTime is not valid.', 'description' => 'The specified automatic release time AutoReleaseTime is invalid.'], ['errorCode' => 'QuotaExceeded.AutoProvisioningGroup', 'errorMessage' => 'The count of AutoProvisioningGroup exceeds the limit.', 'description' => 'The count of AutoProvisioningGroup exceeds the limit.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool status is not valid.', 'description' => 'The specified private pool state is incorrect.'], ], 403 => [ ['errorCode' => 'TotalTargetCapacityLimitExceed', 'errorMessage' => 'The TotalTargetCapacity exceeds the limit[0-2000].', 'description' => 'The TotalTargetCapacity value exceeds the limit [0~2000].'], ['errorCode' => 'SpotTargetCapacityLimitExceed', 'errorMessage' => 'The SpotTargetCapacity exceeds the limit[0-2000].', 'description' => 'SpotTargetCapacity exceeds limit [0-2000].'], ['errorCode' => 'PayAsYouGoTargetCapacityLimitExceed', 'errorMessage' => 'The PayAsYouGoTargetCapacity exceeds the limit[0-2000].', 'description' => 'PayAsYouGoTargetCapacity capacity exceeds limit [0~2000].'], ['errorCode' => 'OperationDenied.NoStock', 'errorMessage' => 'The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones.', 'description' => 'The requested resources are unavailable in the specified zone. Try a different resource type or select a different region or zone.'], ['errorCode' => 'CandidateDenied.NoStock', 'errorMessage' => 'The resource is out of stock and there are no candidate resources in the specified zone. Please try other types, or choose other regions and zones.', 'description' => 'The resources of the current instance type have been sold out and there are no candidate resources in the near future. Please select another instance type or zone as required.'], ], [ ['errorCode' => 'InvalidResourcePoolOptionsPrivatePoolIds.NotFound', 'errorMessage' => 'The ResourcePoolOptions.PrivatePoolIds do not exist.', 'description' => 'The ResourcePoolOptions.PrivatePoolIds do not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => 'The SecurityGroupId %s provided does not exist in our records.', 'description' => 'The security group provided does not exist.'], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'The specified virtual switch %s does not exist.', 'description' => 'The specified switch does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Create an auto provisioning group', 'summary' => 'Creates an auto provisioning group.', 'description' => '- Auto provisioning is a solution that uses spot instances and pay-as-you-go instances to quickly deploy instance clusters. It supports one-click deployment of instance clusters across billing methods, zones, and instance families. For more information, see [Use the auto provisioning group API to create ECS instances in batches](~~200772~~).'."\n" .'- Auto provisioning uses provisioning groups to schedule and maintain compute resources. You can use an auto provisioning group to steadily provide computing power and mitigate the instability caused by the reclaim mechanism of spot instances.'."\n" .'- Auto provisioning is a free feature, but you are charged for the instance resources created by the auto provisioning group. For more information, see [Spot instance billing](~~52088~~) and [Pay-as-you-go](~~40653~~).'."\n" .'- If you specify both a launch template (`LaunchTemplateId`) and launch configuration information (`LaunchConfiguration.*`), the launch template takes precedence.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-12-01T11:24:22.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-11-06T02:04:19.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-10-10T06:15:38.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-07-09T09:07:10.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-07-07T08:51:31.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-06-27T09:24:44.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-04-29T07:08:53.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-28T09:03:16.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-02-13T09:14:31.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-08T04:31:25.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-11-28T04:52:44.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-10-17T06:48:28.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-15T03:45:26.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-04-26T07:45:49.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-02-29T03:19:06.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-11-06T11:39:09.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2023-06-13T17:16:42.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-04-04T08:32:13.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-09-21T06:08:46.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2021-07-26T07:04:41.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-06-08T08:16:07.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateAutoProvisioningGroup'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateAutoProvisioningGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], 'additionalActions' => [ ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AutoProvisioningGroupId\\": \\"apg-sn54avj8htgvtyh8****\\",\\n \\"RequestId\\": \\"745CEC9F-0DD7-4451-9FE7-8B752F39****\\",\\n \\"LaunchResults\\": {\\n \\"LaunchResult\\": [\\n {\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"ErrorMsg\\": \\"Specific parameter is not valid.\\",\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"ErrorCode\\": \\"InvalidParameter\\",\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"Amount\\": 1,\\n \\"InstanceIds\\": {\\n \\"InstanceId\\": [\\n \\"[\\\\\\"i-bp67acfmxazb4p****\\\\\\"]\\"\\n ]\\n },\\n \\"CandidateEvaluateLevel\\": \\"Low\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'CreateAutoSnapshotPolicy' => [ 'summary' => 'Creates an automatic snapshot policy in a specific region. You can specify the schedule on which to create automatic snapshots, the retention period of the automatic snapshots, and whether to enable cross-region replication for the snapshots in the automatic snapshot policy. The automatic snapshot policy can be applied to create snapshots for system disks or data disks to back up disk data.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28815', 'abilityTreeNodes' => ['FEATUREecsTKAXF8', 'FEATUREecs70JNQP'], ], 'parameters' => [ [ 'name' => 'regionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the automatic snapshot policy. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'autoSnapshotPolicyName', 'in' => 'query', 'schema' => ['description' => 'The name of the automatic snapshot policy. The name must be 2 to 128 characters in length. The name must start with a letter and cannot start with http\\:// or https\\://. The name can contain letters, digits, colons (:), underscores (\\_), and hyphens (-).'."\n" ."\n" .'By default, this parameter is left empty.', 'type' => 'string', 'required' => false, 'example' => 'TestName', 'title' => ''], ], [ 'name' => 'timePoints', 'in' => 'query', 'schema' => ['description' => 'The points in time of the day at which to create automatic snapshots. The time must be in UTC+8. Unit: hours. Valid values: 0 to 23, which correspond to the 24 on-the-hour points in time from 00:00:00 to 23:00:00. For example, 1 indicates 01:00:00. Format description:'."\n" ."\n" .'- Set this parameter to a JSON-formatted array. For example, a value of \\["1"] specifies automatic snapshots to be created at 01:00:00.'."\n" ."\n" .'- To schedule multiple automatic snapshots to be created in a day, you can specify multiple values. Separate the values with commas (,). You can specify up to 24 points in time. For example, a value of \\["1","3","5"] specifies automatic snapshots to be created at 01:00:00, 03:00:00, and 05:00:00.'."\n" ."\n" .'> If an automatic snapshot is being created when the time scheduled for creating another automatic snapshot is due, the new snapshot task is skipped. This may occur when a disk contains a large volume of data. For example, you scheduled snapshots to be automatically created at 09:00, 10:00, 11:00, and 12:00. The system starts to create a snapshot for the disk at 09:00:00. The process takes 80 minutes to complete because the disk contains a large volume of data and ends at 10:20:00. The system skips the automatic snapshot task scheduled for 10:00:00 and creates the next automatic snapshot for the disk at 11:00:00.', 'type' => 'string', 'required' => true, 'example' => '["0", "1", … "23"]', 'title' => ''], ], [ 'name' => 'repeatWeekdays', 'in' => 'query', 'schema' => ['description' => 'The days of the week on which to create automatic snapshots. Valid values: 1 to 7, which correspond to Monday to Sunday. 1 indicates Monday. Format description:'."\n" ."\n" .'- Set this parameter to a JSON-formatted array. For example, a value of \\["1"] specifies automatic snapshots to be created every Monday.'."\n" ."\n" .'- To schedule multiple automatic snapshots to be created in a week, you can specify multiple values. Separate the values with commas (,). You can specify a maximum of seven days. For example, a value of \\["1","3","5"] specifies automatic snapshots to be created every Monday, Wednesday, and Friday.', 'type' => 'string', 'required' => true, 'example' => '["1","2"]', 'title' => ''], ], [ 'name' => 'retentionDays', 'in' => 'query', 'schema' => ['description' => 'The retention period of the automatic snapshot. Unit: days. Valid values:'."\n" ."\n" .'- -1: The automatic snapshot is retained until it is deleted.'."\n" ."\n" .'- 1 to 65535: The automatic snapshot is retained for the specified number of days. After the retention period of the automatic snapshot expires, the automatic snapshot is automatically deleted.'."\n" ."\n" .'Default value: -1.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '30', 'title' => ''], ], [ 'name' => 'EnableCrossRegionCopy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable cross-region replication for snapshots.'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'TargetCopyRegions', 'in' => 'query', 'schema' => ['description' => 'The destination region to which to copy the snapshot. You can specify only a single destination region.', 'type' => 'string', 'required' => false, 'example' => '["cn-hangzhou"]', 'title' => ''], ], [ 'name' => 'StorageLocationArn', 'in' => 'query', 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'CopiedSnapshotsRetentionDays', 'in' => 'query', 'schema' => ['description' => 'The retention period of the snapshot copy in the destination region. Unit: days. Valid values:'."\n" ."\n" .'- -1: The snapshot copy is retained until it is deleted.'."\n" ."\n" .'- 1 to 65535: The snapshot copy is retained for the specified number of days. After the retention period of the snapshot copy expires, the snapshot copy is automatically deleted.'."\n" ."\n" .'Default value: -1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the automatic snapshot policy.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N to add to the automatic snapshot policy. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot contain http\\:// or https\\://. The tag key cannot start with acs: or aliyun.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N to add to the automatic snapshot policy. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain http\\:// or https\\://. The tag value cannot start with acs:.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2kkmhmhs****', 'title' => ''], ], [ 'name' => 'CopyEncryptionConfiguration', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The encryption parameters for cross-region snapshot replication.', 'type' => 'object', 'properties' => [ 'Encrypted' => ['description' => 'Specifies whether to enable cross-region snapshot replication and encryption. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'KMSKeyId' => ['description' => 'The ID of the Key Management Service (KMS) key used in cross-region snapshot replication and encryption.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40826X', 'title' => ''], 'Arn' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RoleType' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], 'Rolearn' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], 'AssumeRoleFor' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000000000', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'AutoSnapshotPolicyId' => ['description' => 'The automatic snapshot policy ID.', 'type' => 'string', 'example' => 'sp-bp12m37ccmxvbmi5****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'DiskCategory.OperationNotSupported', 'errorMessage' => 'The type of the specified disk does not support creating a snapshot.', 'description' => 'The operation is not supported by the current disk category.'], ['errorCode' => 'InvalidSnapshotPolicyName.Malformed', 'errorMessage' => 'The specified autoSnapshotPolicyName is wrongly formed.', 'description' => ''], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidParameter.EncryptedIllegal', 'errorMessage' => 'The specified parameter Encrypted must be true when kmsKeyId is not empty.', 'description' => 'The encryption feature is not enabled after a Key Management Service (KMS) key ID is specified.'], ['errorCode' => 'InvalidParameter.KmsNotEnabled', 'errorMessage' => 'Failed to perform this operation because KMS is not activated.', 'description' => 'You need to activate KMS key management service.'], ['errorCode' => 'InvalidParameter.Encrypted.KmsNotEnable', 'errorMessage' => 'Failed to perform this operation because KMS is not activated.', 'description' => 'You need to activate KMS key escrow service.'], ['errorCode' => 'InvalidParam.EncryptedMismatch', 'errorMessage' => 'Creating encrypted disks with shared encrypted image requires replacing encryption keys.', 'description' => 'You must change the encryption key to create a cloud disk after sharing an encrypted image.'], ], 403 => [ ['errorCode' => 'ParameterInvalid', 'errorMessage' => 'The specified RegionId parameter is invalid.', 'description' => 'The specified region ID is invalid.'], ['errorCode' => 'AutoSnapshotPolicy.QuotaExceed', 'errorMessage' => 'The maximum number of automatic snapshot policy has been reached.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.SnapshotServiceUnavailable', 'errorMessage' => 'Snapshot service has not been opened yet.', 'description' => 'The operation is not supported while the snapshot service is not activated.'], ['errorCode' => 'InvalidParameter.TargetCopyRegions', 'errorMessage' => 'The specified TargetCopyRegions is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.CopiedSnapshotsRetentionDays', 'errorMessage' => 'The specified CopiedSnapshotsRetentionDays is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'InvalidOperation.KMSKeyIdNotFound', 'errorMessage' => 'The specified KMSKeyId not found, %s.', 'description' => 'The associated KMS encryption key cannot be found. Verify that the KMS encryption key is valid.'], ['errorCode' => 'Abs.InvalidAction.RegionNotSupport', 'errorMessage' => 'This region does not support this action.', 'description' => 'The operation is not supported in the region.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK (Customer Master Key) must be in an active state.', 'description' => 'The CMK (Customer Master Key) must be in an active state.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.', 'description' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.'], ['errorCode' => 'InvalidStorageLocationArn.Malformed', 'errorMessage' => 'The specified parameter StorageLocationArn is wrongly formed.', 'description' => 'The format of the specified parameter StorageLocationArn is incorrect.'], ], [ ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], ], 'title' => 'CreateAutoSnapshotPolicy', 'description' => 'Before you call this operation, learn about how to [create an automatic snapshot policy](~~127767~~).'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- You can create up to 100 automatic snapshot policies per region for a single Alibaba Cloud account. If the maximum number of automatic snapshots for a disk is reached and a new snapshot creation task is created, the system deletes the oldest automatic snapshot of the disk.'."\n" ."\n" .'- If the instance to which a disk is attached is being stopped or restarted, the system cannot create snapshots for the disk based on the associated automatic snapshot policy.'."\n" ."\n" .'- If cross-region snapshot replication is enabled and no encryption parameters are configured, encrypted snapshots are copied to the destination region and snapshot copies are encrypted by using the service key of the destination region. For more information about the limits on cross-region snapshot replication, see [Copy a snapshot](~~159441~~).'."\n" ."\n" .'After the automatic snapshot policy is created, call the [ApplyAutoSnapshotPolicy](~~25531~~) operation to apply the policy to disks. If you want to modify the automatic snapshot policy, call the [ModifyAutoSnapshotPolicyEx](~~25529~~) operation.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-04-29T02:58:32.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-19T08:46:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-03-21T02:04:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-02-28T07:48:42.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2022-10-19T05:10:23.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-08-19T11:08:23.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateAutoSnapshotPolicy'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateAutoSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'AutoSnapshotPolicy', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotpolicy/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AutoSnapshotPolicyId\\": \\"sp-bp12m37ccmxvbmi5****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'CreateCapacityReservation' => [ 'summary' => 'To create a Capacity Reservation, specify the instance type, total quantity, start time, and availability zone.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28816', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the capacity reservation. You can call [DescribeRegions](~~25609~~) to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the capacity reservation belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the capacity reservation.', 'type' => 'array', 'items' => [ 'description' => 'A tag.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the capacity reservation. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the capacity reservation. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token that ensures the request is idempotent. You can use the same token to retry a request. The `ClientToken` value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe637760', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Name', 'in' => 'query', 'schema' => ['description' => 'The name of the capacity reservation. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with `http://` or `https://`. It can contain digits, colons (:), underscores (\\_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'crpTestName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the capacity reservation. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'Default value: empty string.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.MatchCriteria', 'in' => 'query', 'schema' => ['description' => 'The type of the private pool that is generated after the capacity reservation takes effect. Valid values:'."\n" ."\n" .'- Open: open mode. When you launch an instance, it is automatically matched with the capacity of an open private pool. If no suitable private pool capacity is available, the instance is launched by using public pool resources.'."\n" ."\n" .'- Target: targeted mode. The instance is launched by using the capacity of a specified private pool. If the capacity is unavailable, the instance fails to launch.'."\n" ."\n" .'Default value: Open.', 'type' => 'string', 'required' => false, 'default' => 'Open', 'example' => 'Open', 'title' => ''], ], [ 'name' => 'InstanceAmount', 'in' => 'query', 'schema' => ['description' => 'The number of instances of the specified instance type for which to reserve capacity.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'minimum' => '1', 'example' => '2', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type for which to reserve capacity. You can call [DescribeInstanceTypes](~~25620~~) to view the instance types that ECS provides.', 'type' => 'string', 'required' => true, 'example' => 'ecs.g6.xlarge', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The time when the capacity reservation takes effect. The capacity reservation takes effect immediately after it is created.'."\n" ."\n" .'> If you do not specify this parameter, the capacity reservation takes effect immediately.', 'type' => 'string', 'required' => false, 'example' => '2021-10-30T05:32:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time of the capacity reservation. Specify the time in the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'required' => false, 'example' => '2021-10-30T06:32:00Z', 'title' => ''], ], [ 'name' => 'EndTimeType', 'in' => 'query', 'schema' => ['description' => 'The release mode of the capacity reservation. Valid values:'."\n" ."\n" .'- Limited: The capacity reservation is automatically released at a specific time. You must also specify the `EndTime` parameter.'."\n" ."\n" .'- Unlimited: The capacity reservation must be released manually.', 'type' => 'string', 'required' => false, 'example' => 'Unlimited', 'title' => ''], ], [ 'name' => 'Platform', 'in' => 'query', 'schema' => ['description' => 'The operating system of the image used by the instance. This parameter corresponds to the `Platform` parameter of a regional reserved instance. If this platform matches the platform of a regional reserved instance, the regional reserved instance can be used to offset the costs of unused capacity in the reservation. Valid values:'."\n" ."\n" .'- Windows: Windows Server operating systems.'."\n" ."\n" .'- Linux: Linux and Unix-like operating systems.'."\n" ."\n" .'Default value: Linux.'."\n" ."\n" .'> This parameter is not yet available for use.', 'type' => 'string', 'required' => false, 'default' => 'linux', 'example' => 'Linux', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'default' => 'PostPaid', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of the zone in which you want to create the capacity reservation. A capacity reservation can reserve resources within only one zone.', 'type' => 'array', 'items' => ['description' => 'The ID of the zone in which you want to create the capacity reservation. A capacity reservation can reserve resources within only one zone.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-h', 'title' => ''], 'required' => true, 'example' => 'cn-hangzhou-h', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PrivatePoolOptionsId' => ['description' => 'The ID of the capacity reservation.', 'type' => 'string', 'example' => 'crp-bp67acfmxazb4****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.RegionId', 'errorMessage' => 'The specified RegionId is invalid.', 'description' => 'The specified region does not exist or is unavailable.'], ['errorCode' => 'NoStock', 'errorMessage' => 'The stock in the availability zone is insufficient.', 'description' => 'The stock in the availability zone is insufficient.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter StartTime is missing.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified instanceType or zone is not available or not authorized.', 'description' => 'Specified specifications or Availability Zones are not available'], ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidStartTime.NotSupported', 'errorMessage' => 'The specified StartTime should be within 180 calendar days from the current date, and you must specify a precision to hour.', 'description' => 'The specified StartTime value is out of range.'], ['errorCode' => 'InvalidStartTime.MalFormed', 'errorMessage' => 'The specified StartTime is out of the permitted range.', 'description' => 'The specified StartTime value exceeds the maximum allowed value.'], ['errorCode' => 'Invalid.PrivatePoolOptionsName.MalFormed', 'errorMessage' => 'The specified PrivatePoolOptions.Name is not valid.', 'description' => 'The specified PrivatePoolOptions.Name is invalid'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The specified ZoneId is not valid.', 'description' => 'The specified ZoneId is invalid.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The specified InstanceType is not valid.', 'description' => 'The specified InstanceType is illegal.'], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool has been used up.', 'description' => 'The resource is exhausted.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'MissingParameter.PackageType', 'errorMessage' => 'The specified parameter "PackageType" can not be empty.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" can not be empty.', 'description' => 'Specifies that the parameter "PrivatePoolOptions.ids" cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" can not be empty.', 'description' => 'The specified parameter \'InstanceCpuCocount\' cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceAmount', 'errorMessage' => 'The specified parameter "InstanceAmount" can not be empty.', 'description' => 'The specified parameter InstanceAmount cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time.', 'description' => 'The specified parameter InstanceCpuCoreCount and InstanceAmount cannot be both empty.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyZoneIds', 'errorMessage' => 'Too many ZoneIds in the request.', 'description' => 'The number of specified zone IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyInstanceTypes', 'errorMessage' => 'Too many InstanceTypes in the request.', 'description' => 'The number of specified instance types exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyUnpaidPrivatePool', 'errorMessage' => 'Too many PrivatePools create but still unpaid.', 'description' => 'Multiple private pools are created but not paid.'], ['errorCode' => 'Invalid.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'Both InstanceCpuCoreCount and InstanceAmount are provided.', 'description' => 'The InstanceCpuCoreCount and InstanceAmount parameters cannot be both specified.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id.', 'description' => 'The specified private pool ID does not exist.'], ['errorCode' => 'Invalid.PackageType', 'errorMessage' => 'The specified parameter "PackageType" is invalid.', 'description' => 'The specified parameter PackageType is invalid.'], ['errorCode' => 'Invalid.PrivatePool.Purchase', 'errorMessage' => 'The PrivatePool has already paid.', 'description' => 'The private pool is already paid.'], ['errorCode' => 'Invalid.AssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'RepeatStartPrivatePool', 'errorMessage' => 'PrivatePool has already been started.', 'description' => 'The private pool is already started.'], ['errorCode' => 'Invalid.TimeSlot', 'errorMessage' => 'The param time slot is invalid.', 'description' => 'Parameter TimeSlot is invalid.'], ['errorCode' => 'Invalid.EndTime', 'errorMessage' => 'The specified parameter "EndTime" is not valid.', 'description' => 'The specified EndTime parameter is illegal.'], ['errorCode' => 'StartTime.NotNeed', 'errorMessage' => 'The specified parameter "StartTime" should leave empty.', 'description' => 'The specified parameter "StartTime" should be empty.'], ['errorCode' => 'AccountForbidden.ProductCreationLimited', 'errorMessage' => 'The commodity must be officially operated by Aliyun and in pay-as-you-go billing method.', 'description' => ''], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => 'There is no authority to create private pool in the specified region.', 'description' => ''], ['errorCode' => 'PriceNotFound', 'errorMessage' => 'The price of your queried resource is not available now, please try other resources.', 'description' => 'The price of the specified resource does not exist. Modify the parameter value and try again later.'], ], 403 => [ ['errorCode' => 'Zone.NotOpen', 'errorMessage' => 'The specified zone is not granted to you to buy resources yet.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotSupported', 'errorMessage' => '%s', 'description' => 'The specified resource combination does not exist. Change to another zone or specification.'], ['errorCode' => 'OperationDenied.NoStock', 'errorMessage' => 'The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones.', 'description' => 'The requested resources are unavailable in the specified zone. Try a different resource type or select a different region or zone.'], ['errorCode' => 'InvalidInstanceType.NotSupported', 'errorMessage' => 'The specified InstanceType is invalid.', 'description' => ''], ['errorCode' => 'Invalid.ZoneIds', 'errorMessage' => 'At least one of the specified ZoneIds are invalid.', 'description' => 'At least one of the specified ZoneIds is invalid.'], ['errorCode' => 'Zone.NotOnSale', 'errorMessage' => 'The specified zone is not available for purchase.', 'description' => 'The requested resources are unavailable in the specified zone. Try a different instance type or select a different region or zone.'], ], [ ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The specified zoneId does not exist.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'CreateCapacityReservation', 'description' => '## API'."\n" ."\n" .'The Capacity Reservation service lets you reserve compute resources by specifying attributes such as the availability zone and instance type. The system then reserves matching resources in a private pool. For more information, see [Overview of immediate capacity reservations](~~193633~~).'."\n" ."\n" .'- This service currently supports only the immediate start mode. After you purchase an immediate capacity reservation, you are billed for the reserved instance type at the standard Pay-As-You-Go rate. This billing applies regardless of whether you launch any Pay-As-You-Go instances and continues until you release the reservation or it expires.'."\n" ."\n" .' - You can specify the private pool option when creating an instance by calling the [CreateInstance](~~25499~~) or [RunInstances](~~63440~~) operations. To change this setting for an existing instance, call the [ModifyInstanceAttachmentAttributes](~~190006~~) operation. After an instance matches a private pool, you are billed for its configured resources, such as the instance type, cloud disks, and public bandwidth.'."\n" ."\n" .' - If you do not launch any Pay-As-You-Go instances into the reserved capacity, you are billed only for the reserved instance type.'."\n" ."\n" .'- You can apply Savings Plans and Regional Reserved Instance Coupons to the hourly bills for both matched instances and unused capacity in your immediate capacity reservations. However, Zonal Reserved Instance Coupons are not supported. We recommend purchasing Savings Plans or Reserved Instance Coupons first. Using the Capacity Reservation service with coverage from these plans provides capacity assurance at no additional cost.'."\n" ."\n" .'> You can use the API to create only immediate capacity reservations. To create either immediate or scheduled capacity reservations, use the ECS Console. For more information, see [Resource Reservation Service](~~193626#section-oil-qh5-xvx~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-02-27T08:46:42.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-19T07:59:28.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-11-14T09:00:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-07-29T02:25:03.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-07-29T02:25:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateCapacityReservation'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateCapacityReservation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'CapacityReservation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:capacityreservation/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PrivatePoolOptionsId\\": \\"crp-bp67acfmxazb4****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'CreateCommand' => [ 'summary' => 'Creates a Cloud Assistant command of the Shell, PowerShell, or Bat script type.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29249', 'abilityTreeNodes' => ['FEATUREecsXZ3H4M'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The command name. All character sets are supported. The name cannot exceed 128 characters in length.', 'type' => 'string', 'required' => true, 'example' => 'testName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The command description. All character sets are supported. The description cannot exceed 512 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The type of the command. Valid values: '."\n" ."\n" .'- RunBatScript: creates a Bat script to run on Windows instances.'."\n" .'- RunPowerShellScript: creates a PowerShell script to run on Windows instances.'."\n" .'- RunShellScript: creates a Shell script to run on Linux instances.', 'type' => 'string', 'required' => true, 'example' => 'RunShellScript', 'title' => ''], ], [ 'name' => 'CommandContent', 'in' => 'query', 'schema' => ['description' => 'The Base64-encoded content of the command.'."\n" ."\n" .'- The value of this parameter must be Base64-encoded, and the script content cannot exceed 18 KB in size after Base64 encoding.'."\n" .'- The command content supports custom parameters. To enable the custom parameter feature, set `EnableParameter=true`:'."\n" .' - Custom parameters are defined by enclosing them in `{{}}`. Spaces and line breaks before and after the parameter name within `{{}}` are ignored.'."\n" .' - The number of custom parameters cannot exceed 20.'."\n" .' - Custom parameter names can contain letters (a-z, A-Z), digits (0-9), hyphens (-), and underscores (_). The acs:: prefix for specifying non-built-in environment parameters is not supported. Other characters are not supported. Parameter names are case-insensitive.'."\n" .' - Each parameter name cannot exceed 64 bytes in length.'."\n" ."\n" .'- You can specify built-in environment parameters as custom parameters. When the command is run, Cloud Assistant automatically replaces them with the corresponding values from the environment without requiring manual assignment. The following built-in environment parameters are supported:'."\n" .' - `{{ACS::RegionId}}`: the region ID.'."\n" .' - `{{ACS::AccountId}}`: the UID of the Alibaba Cloud account.'."\n" .' - `{{ACS::InstanceId}}`: the instance ID. When a command is sent to multiple instances and you want to use `{{ACS::InstanceId}}` as a built-in environment parameter, make sure that the Cloud Assistant Agent version is not earlier than:'."\n" .' - Linux: 2.2.3.309'."\n" .' - Windows: 2.1.3.309'."\n" .' - `{{ACS::InstanceName}}`: the instance name. When a command is sent to multiple instances and you want to use `{{ACS::InstanceName}}` as a built-in environment parameter, make sure that the Cloud Assistant Agent version is not earlier than:'."\n" .' - Linux: 2.2.3.344'."\n" .' - Windows: 2.1.3.344'."\n" ."\n" .' - `{{ACS::InvokeId}}`: the command execution ID. To use `{{ACS::InvokeId}}` as a built-in environment parameter, make sure that the Cloud Assistant Agent version is not earlier than:'."\n" .' - Linux: 2.2.3.309'."\n" .' - Windows: 2.1.3.309'."\n" .' '."\n" .' - `{{ACS::CommandId}}`: the command ID. When you run a command by calling the [RunCommand](~~141751~~) operation and want to use `{{ACS::CommandId}}` as a built-in environment parameter, make sure that the Cloud Assistant Agent version is not earlier than:'."\n" .' - Linux: 2.2.3.309'."\n" .' - Windows: 2.1.3.309.', 'type' => 'string', 'required' => true, 'example' => 'ZWNobyAxMjM=', 'title' => ''], ], [ 'name' => 'WorkingDir', 'in' => 'query', 'schema' => ['description' => 'The directory where the command is run on the ECS instance. The value cannot exceed 200 characters in length.'."\n" ."\n" .'Default value: '."\n" .'- Linux instances: the home directory of the root user, which is `/root`. '."\n" .'- Windows instances: the directory where the Cloud Assistant Agent process is located, such as `C:\\Windows\\System32`.'."\n" ."\n" .'> If you set this parameter to a different directory, make sure that the directory exists on the instance.', 'type' => 'string', 'required' => false, 'example' => '/home/user', 'title' => ''], ], [ 'name' => 'Timeout', 'in' => 'query', 'schema' => ['description' => 'The maximum timeout period for the command to run on the ECS instance. Unit: seconds. If the command cannot be run for any reason, a timeout occurs. After the timeout, the command process is forcefully terminated by canceling the PID of the command.'."\n" ."\n" .'Default value: 60.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '60', 'title' => ''], ], [ 'name' => 'EnableParameter', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the command uses custom parameters.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'ContentEncoding', 'in' => 'query', 'schema' => ['description' => 'The encoding mode of the command content (CommandContent). Valid values:'."\n" ."\n" .'- PlainText: no encoding. The content is transmitted in plaintext.'."\n" ."\n" .'- Base64: Base64 encoding.'."\n" ."\n" .'Default value: Base64.'."\n" ."\n" .'> If an invalid value is specified, it is treated as Base64.', 'type' => 'string', 'required' => false, 'example' => 'PlainText', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. **ClientToken** supports only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the command belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-123******', 'title' => ''], ], [ 'name' => 'Launcher', 'in' => 'query', 'schema' => ['description' => 'The bootstrap program for script execution. The value cannot exceed 1 KB in length.', 'type' => 'string', 'required' => false, 'example' => 'python3 -u {{ACS::ScriptFileName|Ext(".py")}}', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the command. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the specified tag cannot exceed 1,000. If you use multiple tags to filter resources, the resource count of resources that have all specified tags attached cannot exceed 1,000. If the resource count exceeds 1,000, use the [ListTagResources](~~110425~~) operation to query resources.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the command. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'CommandId' => ['description' => 'The command ID.', 'type' => 'string', 'example' => 'c-7d2a745b412b4601b2d47f6a768d****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'CmdParam.EmptyKey', 'errorMessage' => 'You must specify the parameter names.', 'description' => ''], ['errorCode' => 'CmdParam.InvalidParamName', 'errorMessage' => 'Invalid parameter name. The name can contain only lowercase letters (a to z), uppercase letters (A to Z), numbers (0 to 9), hyphens (-), and underscores (_).', 'description' => ''], ['errorCode' => 'CmdContent.DecodeError', 'errorMessage' => 'The CommandContent can not be base64 decoded.', 'description' => ''], ['errorCode' => 'InvalidParameter.WorkingDir', 'errorMessage' => 'The specified parameter WorkingDir is not valid.', 'description' => ''], ['errorCode' => 'InvalidClientToken.Malformed', 'errorMessage' => 'The specified parameter clientToken is not valid.', 'description' => ''], ], 403 => [ ['errorCode' => 'CmdContent.ExceedLimit', 'errorMessage' => 'The length of the command content exceeds the upper limit.', 'description' => 'The length of command content exceeds the upper limit.'], ['errorCode' => 'CmdName.ExceedLimit', 'errorMessage' => 'The length of the command name exceeds the upper limit.', 'description' => 'The length of the command name exceeds the upper limit.'], ['errorCode' => 'CmdDesc.ExceedLimit', 'errorMessage' => 'The length of the command description exceeds the upper limit.', 'description' => 'The length of the command description exceeds the upper limit.'], ['errorCode' => 'CmdCount.ExceedQuota', 'errorMessage' => 'The total number of commands in the current region exceeds the quota.', 'description' => 'The maximum number of Cloud Assistant commands in the current region has been exceeded.'], ['errorCode' => 'CmdParamCount.ExceedLimit', 'errorMessage' => 'The maximum number of custom parameters is exceeded.', 'description' => 'The number of specified parameters exceeds the upper limit.'], ['errorCode' => 'CmdParamName.ExceedLimit', 'errorMessage' => 'The maximum length of a parameter name is exceeded.', 'description' => 'The length of the custom parameter name exceeds the upper limit.'], ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ['errorCode' => 'InvalidStatus.ResourceGroup', 'errorMessage' => 'You cannot perform an operation on a resource group that is being created or deleted.', 'description' => 'Operation not allowed while resource group is being created or deleted.'], ['errorCode' => 'InvalidParameterCharacter.CommandName', 'errorMessage' => 'The command Name contains illegal characters.', 'description' => 'The command Name contains illegal characters.'], ['errorCode' => 'InvalidParameterCharacter.CommandDescription', 'errorMessage' => 'The command Description contains illegal characters.', 'description' => 'The command Description contains illegal characters.'], ['errorCode' => 'InvalidParameterCharacter.CommandWorkingDir', 'errorMessage' => 'The command WorkingDir contains illegal characters.', 'description' => 'The command WorkingDir contains illegal characters.'], ['errorCode' => 'InvalidLauncher.LengthLimitExceeded', 'errorMessage' => 'The length of the parameter Launcher exceeds the limit of 1 KB characters.', 'description' => 'The length of the argument Launcher exceeds the limit of 1 KB characters.'], ['errorCode' => 'InvalidTimeout.ExceedLimit', 'errorMessage' => 'The specified parameter Timeout exceeds the upper limit.', 'description' => ''], ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', 'description' => ''], ['errorCode' => 'IdempotentProcessing', 'errorMessage' => 'The previous idempotent request(s) is still processing.', 'description' => 'A previous idempotent request is being processed. Try again later.'], ], [ ['errorCode' => 'InvalidCmdType.NotFound', 'errorMessage' => 'The specified command type does not exist.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"CommandId\\": \\"c-7d2a745b412b4601b2d47f6a768d****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => 'Creates a Cloud Assistant command.', 'description' => '## Operation description'."\n" ."\n" .'- You can create the following types of commands: '."\n" .' - Bat scripts for Windows instances (RunBatScript).'."\n" .' - PowerShell scripts for Windows instances (RunPowerShellScript).'."\n" .' - Shell scripts for Linux instances (RunShellScript).'."\n" .'- You can specify the Timeout parameter to set the maximum timeout period for a command to run on an ECS instance. If the command times out, [Cloud Assistant Agent](~~64921~~) forcefully terminates the command process by canceling the PID of the command.'."\n" .' - For a one-time execution, after the command times out, the execution status ([InvokeRecordStatus](~~64845~~)) of the command on the specified ECS instance changes to Failed. '."\n" .' - For a scheduled execution: '."\n" .' - The timeout period takes effect for each execution record. '."\n" .' - After a specific execution times out, the status ([InvokeRecordStatus](~~64845~~)) of that execution record changes to Failed. '."\n" .' - The timeout of a previous execution does not affect the next execution. '."\n" .'- You can retain up to 500 to 50,000 Cloud Assistant commands in a region. You can also request a quota increase. For information about how to query and increase quotas, refer to [Quota management](~~184116~~).'."\n" .'- You can specify the WorkingDir parameter to set the execution path of a command. For Linux instances, the default path is the home directory of the root user, which is `/root`. For Windows instances, the default path is the directory where the Cloud Assistant Agent process is located, such as `C:\\Windows\\System32`.'."\n" .'- You can set EnableParameter to true to enable the custom parameter feature. When you set CommandContent, you can define custom parameters in the {{parameter}} format and pass in custom parameter key-value pairs when you run the command by calling [InvokeCommand](~~64841~~). For example, if you create the command `echo {{name}}` and pass in the key-value pair `` through the Parameters parameter when you call InvokeCommand, the custom parameter is automatically replaced. The resulting command `echo Jack` is then run on the instance.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-12-09T02:03:15.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-21T01:40:34.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-05-11T06:19:27.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-10-24T05:49:39.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2023-05-12T05:58:07.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-11-02T12:08:37.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2022-06-28T12:41:41.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-02-25T07:28:10.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateCommand'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateCommand', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Command', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:command/*'], ], ], ], ], ], 'CreateDedicatedHostCluster' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '28819', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the host group. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run, without performing the actual request. Valid values:'."\n" ."\n" .'- true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized Resource Access Management (RAM) users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.'."\n" ."\n" .'- false: performs a dry run and performs the actual request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the host group.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the host group.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key. Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be no more than 64 characters in length, and can neither contain `http://` or `https://` nor start with `acs:` or `aliyun`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value. Valid values of N: 1 to 20. The tag value cannot be an empty string. It can be no more than 64 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID of the host group.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the host group. You can call the [DescribeZones](~~25610~~) operation to query the most recent zone list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou-f', 'title' => ''], ], [ 'name' => 'DedicatedHostClusterName', 'in' => 'query', 'schema' => ['description' => 'The name of the host group. It must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).'."\n" ."\n" .'This parameter is left empty by default.', 'type' => 'string', 'required' => false, 'example' => 'myDDHCluster', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the host group. It must be 2 to 256 characters in length, and cannot start with `http://` or `https://`.'."\n" ."\n" .'This parameter is left empty by default.', 'type' => 'string', 'required' => false, 'example' => 'This-is-my-DDHCluster', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'DedicatedHostClusterId' => ['description' => 'The ID of the host group.', 'type' => 'string', 'example' => 'dc-bp12wlf6bw0vz9v2****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'E2A664A6-2933-4C64-88AE-5033D003****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ], 404 => [ ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'InvalidZone.NotFound', 'errorMessage' => 'The ZoneId provided does not exist in our records.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'QuotaExceed.Region', 'errorMessage' => 'The maximum region quota of Dedicated Host Cluster has exceeded.', 'description' => ''], ['errorCode' => 'QuotaExceed.Zone', 'errorMessage' => 'The maximum zone quota of Dedicated Host Cluster has exceeded.', 'description' => ''], ['errorCode' => 'InvalidParam.Zone', 'errorMessage' => 'The specified zone not match region.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The regionId provided does not exist in our records.', 'description' => 'The RegionId provided does not exist'], ], ], 'title' => 'CreateDedicatedHostCluster', 'summary' => 'Creates a dedicated host group.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-06-13T09:56:21.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2021-05-07T11:26:48.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateDedicatedHostCluster'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateDedicatedHostCluster', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DedicatedHostClusterId\\": \\"dc-bp12wlf6bw0vz9v2****\\",\\n \\"RequestId\\": \\"E2A664A6-2933-4C64-88AE-5033D003****\\"\\n}","type":"json"}]', ], 'CreateDeploymentSet' => [ 'summary' => 'Creates a deployment set in a specified region.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28821', 'abilityTreeNodes' => ['FEATUREecsZSKDHB'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region for the deployment set. You can call the [DescribeRegions](~~25609~~) operation to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'OnUnableToRedeployFailedInstance', 'in' => 'query', 'schema' => ['description' => 'The policy for an instance that fails to be redeployed after a failover due to insufficient resources. Valid values:'."\n" ."\n" .'- CancelMembershipAndStart: Removes the instance from the deployment set and starts the instance immediately after failover.'."\n" ."\n" .'- KeepStopped: Keeps the instance in the deployment set and in the Stopped state.'."\n" ."\n" .'Default value: CancelMembershipAndStart.', 'type' => 'string', 'required' => false, 'example' => 'CancelMembershipAndStart', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the deployment set. The description must be 2 to 256 characters long and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token that you can use to ensure request idempotence. The token must be unique across requests.'."\n" ."\n" .'The **ClientToken** value must be an ASCII string of up to 64 characters. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'DeploymentSetName', 'in' => 'query', 'schema' => ['description' => 'The name of the deployment set. The name must be 2 to 128 characters long and start with a letter. It can contain digits, colons (:), underscores (\\_), and hyphens (-). The name cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testDeploymentSetName', 'title' => ''], ], [ 'name' => 'Domain', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'Granularity', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'Strategy', 'in' => 'query', 'schema' => ['description' => 'The deployment strategy. Valid values:'."\n" ."\n" .'- Availability: High availability strategy.'."\n" ."\n" .'- AvailabilityGroup: High availability strategy for deployment set groups.'."\n" ."\n" .'- LowLatency: Low-latency strategy.'."\n" ."\n" .'Default value: Availability.', 'type' => 'string', 'required' => false, 'example' => 'Availability', 'title' => ''], ], [ 'name' => 'GroupCount', 'in' => 'query', 'schema' => ['description' => 'The number of partitions in the deployment set group. Valid values: 1 to 7.'."\n" ."\n" .'Default value: 3.'."\n" ."\n" .'> This parameter is valid only when `Strategy` is set to `AvailabilityGroup`.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The deployment granularity. Valid values:'."\n" ."\n" .'- host: Spreads instances across different hosts.'."\n" ."\n" .'- sw: Spreads instances across different switches.'."\n" ."\n" .'- rack: Spreads instances across different racks.'."\n" ."\n" .'Default value: host.', 'type' => 'string', 'required' => false, 'example' => 'host', 'title' => ''], ], [ 'name' => 'Affinity', 'in' => 'query', 'schema' => ['description' => 'The affinity level of the deployment set. This level determines how instances are distributed within the set. The value must be an integer from 1 to 10. Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '3', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'DeploymentSetId' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'example' => 'ds-bp1frxuzdg87zh4pzq****', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter RegionId that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidDeploymentSetName.Malformed', 'errorMessage' => 'Specified deployment set name is not valid.', 'description' => 'The specified DeploymentSetName parameter is invalid.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified parameter Description is not valid.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ['errorCode' => 'InvalidParameter.Domain', 'errorMessage' => 'The specified parameter Domain is not valid.', 'description' => 'The specified Domain parameter is invalid.'], ['errorCode' => 'InvalidParameter.Strategy', 'errorMessage' => 'The specified parameter Strategy is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.granularity', 'errorMessage' => 'The specified parameter Granularity is not valid.', 'description' => 'The specified Granularity parameter is invalid.'], ['errorCode' => 'DependencyViolation.domain.granularity', 'errorMessage' => 'The DeploymentSet domain and granularity is violation.', 'description' => 'The specified Domain and Granularity parameters do not correspond to each other.'], ['errorCode' => 'DependencyViolation.strategy.granularity', 'errorMessage' => 'The DeploymentSet strategy and granularity is violation.', 'description' => 'The DeploymentSet strategy conflicts with granularity.'], ['errorCode' => 'DeploymentSet.GroupQuotaFull', 'errorMessage' => 'The deploymentSet group quota is full.', 'description' => 'The maximum number of deployment set groups that can be created is exceeded. Reduce the number of deployment set groups to be created.'], ['errorCode' => 'InvalidParameter.GroupCount', 'errorMessage' => 'The specified parameter "GroupCount" is not valid.', 'description' => ''], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The zoneId provided does not exist in our records.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'QuotaExceed.DeploymentSet', 'errorMessage' => 'The deploymentSet quota is full.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DeploymentSetId\\": \\"ds-bp1frxuzdg87zh4pzq****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => 'CreateDeploymentSet', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-08-21T07:19:52.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-06-10T03:56:17.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateDeploymentSet'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateDeploymentSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateDiagnosticMetricSet' => [ 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '142759', 'abilityTreeNodes' => ['FEATUREecsE0CAY4'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => [ 'description' => 'The type of the resource.'."\n" ."\n" .'Default value: instance.', 'type' => 'string', 'required' => true, 'enum' => ['instance', 'account'], 'example' => 'instance', 'title' => '', ], ], [ 'name' => 'MetricSetName', 'in' => 'query', 'schema' => ['description' => 'The name of the diagnostic metric set.', 'type' => 'string', 'maxLength' => 128, 'required' => false, 'example' => '远程连接问题诊断', 'title' => ''], ], [ 'name' => 'MetricIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of diagnostic metrics. You can specify up to 100 diagnostic metric IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of diagnostic metric N. You can specify up to 100 diagnostic metric IDs.', 'type' => 'string', 'required' => false, 'example' => 'Instance.DiskLoadFailure', 'title' => ''], 'required' => true, 'maxItems' => 100, 'minItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the diagnostic metric set.', 'type' => 'string', 'maxLength' => 255, 'required' => false, 'example' => '远程连接问题诊断', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****'], 'MetricSetId' => ['description' => 'The ID of the diagnostic metric set, which is the unique identifier of the set.', 'type' => 'string', 'example' => 'dms-o7ymuutup5l*****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.MetricId', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'CreateDiagnosticMetricSet', 'summary' => 'Creates a diagnostic metric set. You can group diagnostic metrics into diagnostic metric sets.', 'changeSet' => [ ['createdAt' => '2022-08-12T01:03:06.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateDiagnosticMetricSet'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateDiagnosticMetricSet', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\",\\n \\"MetricSetId\\": \\"dms-o7ymuutup5l*****\\"\\n}","type":"json"}]', ], 'CreateDiagnosticReport' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '142819', 'abilityTreeNodes' => ['FEATUREecsE0CAY4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'cn-hangzhou'], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'i-uf6i0tv2refv8wz*****'], ], [ 'name' => 'MetricSetId', 'in' => 'query', 'schema' => ['description' => 'The diagnostic metric set ID. If this parameter is omitted, the default diagnostic metric set for ECS instances, `dms-instancedefault`, is used.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'dms-uf6i0tv2refv8wz*****'], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time. This parameter applies only to diagnostic metrics that do not require running Cloud Assistant commands in the guest OS.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '2022-07-11T12:00Z'], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time. This parameter applies only to diagnostic metrics that do not require running Cloud Assistant commands in the guest OS.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '2022-07-11T14:00Z'], ], [ 'name' => 'AdditionalOptions', 'in' => 'query', 'style' => 'json', 'schema' => [ 'type' => 'object', 'additionalProperties' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****'], 'ReportId' => ['description' => 'The diagnostic report ID.', 'type' => 'string', 'example' => 'dr-uf6i0tv2refv8wz*****', 'title' => ''], ], 'example' => '', ], ], [ 'headers' => [], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidResource.NotExists ', 'errorMessage' => 'The specified resource not exists.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidOperation.CloudAssistantNotReady', 'errorMessage' => 'Cloud Assistant is not installed, or the service is unavailable. Install Cloud Assistant or check the status of Cloud Assistant first.', 'description' => 'Cloud Assistant is not installed, or the service is unavailable. Install Cloud Assistant or check the status of Cloud Assistant first.'], ], 403 => [ ['errorCode' => 'InvalidAxt.ServiceNotReady ', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbidden.CreateSLR', 'errorMessage' => 'You are not authorized to do this action.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'CreateDiagnosticReport', 'summary' => 'Call `CreateDiagnosticReport` to create a diagnostic report for a resource. This operation uses the specified diagnostic metric set ID to generate a report with multiple diagnostic metrics. You can then call `DescribeDiagnosticReportAttributes` with the returned diagnostic report ID to query the report\'s details.', 'changeSet' => [ ['createdAt' => '2025-03-25T05:37:44.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-09-20T02:40:29.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateDiagnosticReport'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateDiagnosticReport', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\",\\n \\"ReportId\\": \\"dr-uf6i0tv2refv8wz*****\\"\\n}","type":"json"}]', ], 'CreateDisk' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'high', 'chargeType' => 'paid', 'abilityTreeCode' => '28822', 'abilityTreeNodes' => ['FEATUREecs70JNQP', 'FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the zone in which to create a pay-as-you-go disk.'."\n" ."\n" .'- If you do not specify InstanceId, ZoneId is required.'."\n" .'- You cannot specify both ZoneId and InstanceId.'."\n" ."\n\n" .'> You do not need to set ZoneId for disks of the `cloud_regional_disk_auto` type.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'SnapshotId', 'in' => 'query', 'schema' => ['description' => 'The ID of the snapshot to use to create the disk. Snapshots created on or before July 15, 2013 cannot be used to create disks. '."\n" ."\n" .'The `SnapshotId` and `Size` parameters have the following restrictions:'."\n" ."\n" .'- If the snapshot specified by `SnapshotId` is larger than the specified `Size` value, the snapshot size of the created disk equals the size of the specified snapshot.'."\n" .'- If the snapshot specified by `SnapshotId` is smaller than the specified `Size` value, the snapshot size of the created disk equals the specified `Size` value.'."\n" .'- Elastic ephemeral disks cannot be created from snapshots.', 'type' => 'string', 'required' => false, 'example' => 's-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DiskName', 'in' => 'query', 'schema' => ['description' => 'The name of the disk. The name must be 2 to 128 characters in length and can contain letters in the Unicode letter category (including English and Chinese characters) and ASCII digits (0-9). The name can contain colons (:), underscores (_), periods (.), or hyphens (-). The name must start with a character in the Unicode letter category.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'testDiskName', 'title' => ''], ], [ 'name' => 'Size', 'in' => 'query', 'schema' => ['description' => 'The size of the disk. Unit: GiB. You must specify a value for this parameter. Valid values:'."\n" ."\n" .'- cloud: 5 to 2,000.'."\n" .'- cloud_efficiency: 20 to 32,768.'."\n" .'- cloud_ssd: 20 to 32,768.'."\n" .'- cloud_essd: The valid values depend on the `PerformanceLevel` value.'."\n" .' - PL0: 1 to 65,536.'."\n" .' - PL1: 20 to 65,536.'."\n" .' - PL2: 461 to 65,536.'."\n" .' - PL3: 1,261 to 65,536.'."\n" .'- cloud_auto: 1 to 65,536.'."\n" .'- cloud_essd_entry: 10 to 32,768.'."\n" .'- cloud_regional_disk_auto: 10 to 65,536.'."\n" .'- elastic_ephemeral_disk_standard: 64 to 8,192.'."\n" .'- elastic_ephemeral_disk_premium: 64 to 8,192.'."\n" ."\n" .'If you specify `SnapshotId`, the `SnapshotId` and `Size` parameters have the following restrictions:'."\n" ."\n" .'- If the snapshot specified by `SnapshotId` is larger than the specified `Size` value, the snapshot size of the created disk equals the size of the specified snapshot.'."\n" .'- If the snapshot specified by `SnapshotId` is smaller than the specified `Size` value, the snapshot size of the created disk equals the specified `Size` value.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '262144', 'minimum' => '1', 'example' => '2000', 'title' => ''], ], [ 'name' => 'DiskCategory', 'in' => 'query', 'schema' => [ 'description' => 'The category of the data disk. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .'- cloud_regional_disk_auto: regional Enterprise SSD (ESSD).'."\n" .'- elastic_ephemeral_disk_standard: elastic ephemeral disk - Standard Edition.'."\n" .'- elastic_ephemeral_disk_premium: elastic ephemeral disk - Premium Edition.'."\n" ."\n" .'Default value: cloud.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => '', ], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to encrypt the disk. Valid values:'."\n" ."\n" .'- true: Encrypted.'."\n" .'- false: Not encrypted.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the subscription instance to which the created subscription disk is automatically attached.'."\n" ."\n" .'- After you specify the instance ID, the ResourceGroupId, Tag.N.Key, Tag.N.Value, ClientToken, and KMSKeyId parameters are ignored.'."\n" .'- You cannot specify both ZoneId and InstanceId.'."\n" ."\n" .'Default value: empty. A pay-as-you-go disk is created, and the region of the disk is determined by RegionId and ZoneId.', 'type' => 'string', 'required' => false, 'example' => 'i-bp18pnlg1ds9rky4****', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the disk belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'KMSKeyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Key Management Service (KMS) key used by the disk.'."\n" ."\n" .'> If Encrypted is set to true and KMSKeyId is not specified, the default key is used for encryption. The KMSKeyId value is returned after the instance is created.'."\n" .'> - - If the disk is created from a non-shared encrypted snapshot, the encryption key used by the snapshot is used by default.'."\n" .'> - - If the disk is created from a shared encrypted snapshot, the service key is used by default.'."\n" .'> - - If the disk is created in a region where account-level default encryption for block storage is enabled, the specified account-level key is used by default.'."\n" .'> - - In other cases, the service key is used by default.', 'type' => 'string', 'required' => false, 'maxLength' => 64, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40826X', 'title' => ''], ], [ 'name' => 'PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the enterprise SSD to create. Set this parameter to one of the following values:'."\n" ."\n" .'- PL0: A single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1: A single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: A single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: A single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'Default value: PL1.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [Enterprise SSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'AdvancedFeatures', 'in' => 'query', 'schema' => ['description' => 'This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], ], [ 'name' => 'StorageSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the storage set.'."\n" ."\n" .'> You can set either the storage set parameters (`StorageSetId` and `StorageSetPartitionNumber`) or the dedicated block storage cluster parameter (`StorageClusterId`), but not both. If you set both, the API call fails.', 'type' => 'string', 'required' => false, 'example' => 'ss-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'EncryptAlgorithm', 'in' => 'query', 'schema' => ['description' => 'This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], ], [ 'name' => 'StorageSetPartitionNumber', 'in' => 'query', 'schema' => ['description' => 'The number of partitions in the storage set. Valid values: 2 and greater. The maximum value cannot exceed the privilege quota limit returned by calling [DescribeAccountAttributes](~~73772~~).'."\n" ."\n" .'Default value: 2.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '3', 'title' => ''], ], [ 'name' => 'StorageClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the dedicated block storage cluster. To create a disk in a specific dedicated block storage cluster, specify this parameter.'."\n" ."\n" .'> You can set either the storage set parameters (`StorageSetId` and `StorageSetPartitionNumber`) or the dedicated block storage cluster parameter (`StorageClusterId`), but not both. If you set both, the API call fails.', 'type' => 'string', 'required' => false, 'example' => 'dbsc-j5e1sf2vaf5he8m2****', 'title' => ''], ], [ 'name' => 'MultiAttach', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the multi-attach feature. Valid values:'."\n" ."\n" .'- Disabled: Disabled.'."\n" .'- Enabled: Enabled. Only enterprise SSDs support setting this parameter to `Enabled`.'."\n" ."\n" .'Default value: Disabled.'."\n" ."\n" .'> Disks with the multi-attach feature enabled support only the pay-as-you-go billing method. Therefore, when `MultiAttach=Enabled`, you cannot specify the `InstanceId` parameter. After the disk is created, you can call [AttachDisk](~~25515~~) to attach it. Note that a disk with the multi-attach feature enabled can be attached only as a data disk.', 'type' => 'string', 'required' => false, 'example' => 'Disabled', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags for the disk.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags for the disk.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the disk.'."\n" ."\n" .'> To improve backward compatibility, use Tag.N.Key.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], 'Key' => ['description' => 'The tag key of the disk. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. The tag key cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the disk. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the disk.'."\n" ."\n" .'> To improve backward compatibility, use Tag.N.Value.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'Arn', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'object', 'properties' => [ 'RoleType' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], 'Rolearn' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'hide', 'title' => ''], 'AssumeRoleFor' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1000000000', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'ProvisionedIops', 'in' => 'query', 'schema' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values:'."\n" ."\n" .'- Capacity (GiB) <= 3: Provisioned performance is not supported.'."\n" ."\n" .'- Capacity (GiB) >= 4: [0, min{(1,000 IOPS/GiB × Capacity - Baseline IOPS), 50,000}]'."\n" ."\n\n" .'Baseline performance = max{min{1,800 + 50 × Capacity, 50,000}, 3,000}.'."\n" ."\n\n" .'> This parameter is supported only when `DiskCategory` is set to `cloud_auto`. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'integer', 'format' => 'int64', 'minimum' => '0', 'required' => false, 'example' => '40000', 'title' => ''], ], [ 'name' => 'BurstingEnabled', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the performance burst feature. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Disabled.'."\n" ."\n" .'> This parameter is supported only when `DiskCategory` is set to `cloud_auto`. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'DiskId' => ['description' => 'The ID of the disk.', 'type' => 'string', 'example' => 'd-bp131n0q38u3a4zi****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'OrderId' => ['description' => 'The ID of the order.'."\n" ."\n" .'> An order ID is returned only when you create a subscription disk.', 'type' => 'string', 'example' => '20413515388****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidSize.ValueNotSupported', 'errorMessage' => 'The specified parameter Size is not valid.', 'description' => 'The specified Size parameter is invalid.'], ['errorCode' => 'InvalidDiskName.Malformed', 'errorMessage' => 'The specified disk name is wrongly formed.', 'description' => 'The disk name is invalid. The name must be 2 to 128 characters in length and start with a letter. It can contain letters, digits, periods (.), underscores (_), and hyphens (-) and cannot start with http:// or https.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified description is wrongly formed.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter either "SnapshotId" or "Size" should be specified.', 'description' => 'You must specify at least one of SnapshotId and Size in the parameter.'], ['errorCode' => 'InvalidDiskCategory.NotSupported', 'errorMessage' => 'The specified disk category is not support.', 'description' => 'The specified disk category is not supported.'], ['errorCode' => 'Account.Arrearage', 'errorMessage' => 'Your account has an outstanding payment.', 'description' => 'Your account has overdue payments.'], ['errorCode' => 'InvalidDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DiskCategory" is not valid.', 'description' => 'The specified cloud disk type DiskCategory is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Check whether parameter conflicts exist. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified Zone is not available or not authorized.', 'description' => ''], ['errorCode' => 'InvalidDiskSize.NotSupported', 'errorMessage' => 'The specified parameter size is not valid.', 'description' => ''], ['errorCode' => 'InvalidDiskSizeOrCategory', 'errorMessage' => 'The specified disk category or size is invalid.', 'description' => 'The specified disk category or size is invalid.'], ['errorCode' => 'InvalidParameter.EncryptedIllegal', 'errorMessage' => 'The specified parameter Encrypted must be true when kmsKeyId is not empty.', 'description' => 'The encryption feature is not enabled after a Key Management Service (KMS) key ID is specified.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidParameter.Arns', 'errorMessage' => 'The specified Arns is not valid.', 'description' => 'The Arns parameter is invalid. Please check and pass it again.'], ['errorCode' => 'InvalidPerformanceLevel.Malformed', 'errorMessage' => 'The specified parameter PerformanceLevel is not valid.', 'description' => 'The specified PerformanceLevel parameter is invalid.'], ['errorCode' => 'InvalidDiskCategory.ConflictSnapshotCategory', 'errorMessage' => 'The specified disk category conflict with snapshot category.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchEncryptAlgorithm', 'errorMessage' => 'The specified parameter Encrypted must be true when EncryptAlgorithm is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchKmsKeyId', 'errorMessage' => 'The specified parameter Encrypted must be true when KmsKeyId is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncryptAlgorithm.NotMatchSnapshot', 'errorMessage' => 'The specified parameter EncryptAlgorithm is different from the encrypt algorithm of the snapshot.', 'description' => ''], ['errorCode' => 'InvalidKmsKeyId.NotMatchSnapshot', 'errorMessage' => 'The specified parameter KmsKeyId is different from the KmsKeyId of the snapshot.', 'description' => ''], ['errorCode' => 'InvalidEncryptAlgorithm', 'errorMessage' => 'The specified parameter EncryptAlgorithm is not valid.', 'description' => ''], ['errorCode' => 'InvalidPerformanceLevel.ValueNotSupported', 'errorMessage' => 'The current ZoneId does not support PL0 of cloud_essd.', 'description' => ''], ['errorCode' => 'InvalidKMSKeyId.NotSymmetric', 'errorMessage' => 'The specified parameter KmsKeyId must be symmetric.', 'description' => 'The KMSKey used for encryption must be a symmetric encryption key.'], ['errorCode' => 'InvalidStorageSetId.NotFound', 'errorMessage' => 'The specified storage set does not exist.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.StatusNotSupport', 'errorMessage' => 'The current status of the dedicated storage cluster cannot create a cloud disk yet.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.ConflictWithStorageSetId', 'errorMessage' => 'The specified StorageClusterId is in conflict with storageSetId.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.ConflictWithInstanceId', 'errorMessage' => 'The specified StorageClusterId is in conflict with instanceId.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.CategoryNotMatch', 'errorMessage' => 'The current dedicated storage cluster cannot create this category of disk.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.PerformanceLevelNotMatch', 'errorMessage' => 'The current dedicated storage cluster cannot create this performance level of disk.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.CapacityNotEnough', 'errorMessage' => 'The remaining capacity of the current dedicated storage cluster is less than the size of disk.', 'description' => 'The remaining capacity of the dedicated block storage cluster to which the disk belongs is insufficient.'], ['errorCode' => 'InvalidCloudBoxZone.EncryptedNotSupported', 'errorMessage' => 'The cloud box zone does not support creating encrypted disks.', 'description' => ''], ['errorCode' => 'InvalidInstance.NotFoundSystemDisk', 'errorMessage' => 'The specified instance has no system disk.', 'description' => 'The specified instance does not have a system disk. Make sure that the instance has a system disk. You can call the DescribeInstances operation to query the details of the instance.'], ['errorCode' => 'ProvisionedIopsForDiskCategoryUnsupported', 'errorMessage' => 'The specified disk category does not support provisioned iops.', 'description' => ''], ['errorCode' => 'InvalidProvisionedIops.LimitExceed', 'errorMessage' => 'The provisioned iops exceeds the limit.', 'description' => 'The filled ProvisionedIops parameter exceeds the limit.'], ['errorCode' => 'BurstingEnabledForDiskCategoryUnsupported', 'errorMessage' => 'The specified disk category does not support bursting enabled.', 'description' => ''], ['errorCode' => 'BurstingEnabledForMultiAttachDiskUnsupported', 'errorMessage' => 'The multi attach disk does not support bursting enabled.', 'description' => ''], ['errorCode' => 'ProvisionedIopsForDiskCategoryRequired', 'errorMessage' => 'The provisioned iops is required for this disk category.', 'description' => ''], ['errorCode' => 'NotSupportSnapshotEncrypted.RegionId', 'errorMessage' => 'The specified region does not support creating encrypted disks with native snapshot encrypt.', 'description' => ''], ['errorCode' => 'NotSupportSnapshotEncrypted.ZoneId', 'errorMessage' => 'The specified zone does not support creating encrypted disks with native snapshot encrypt.', 'description' => ''], ['errorCode' => 'NotSupportSnapshotEncrypted.ShareImage', 'errorMessage' => 'Shared snapshot creating encrypted disks with native snapshot encrypt is not supported.', 'description' => 'When you create encrypted disks based on a shared image, only the encryption key provided by the shared image can be used for these disks and you cannot specify encryption keys for the disks.'], ['errorCode' => 'NotSupport.SnapshotEncryptedAlgorithmConflict', 'errorMessage' => 'Changing encrypt algorithm with encrypted snapshot is not supported.', 'description' => ''], ['errorCode' => 'QuotaExceed.DiskCapacity', 'errorMessage' => 'The used capacity of disk type has exceeded the quota in the zone, %s.', 'description' => 'The capacity of disks that belong to the specified disk category exceeds the quota limit for the zone.'], ['errorCode' => 'InsufficientBalance.AgentAccount', 'errorMessage' => 'The account balance is insufficient. Please contact your channel partner to recharge in time.', 'description' => 'The account balance is insufficient. Contact your customer service representative to add funds to the account in a timely manner.'], ['errorCode' => 'InvalidParam.EncryptedMismatch', 'errorMessage' => 'Creating encrypted disks with shared encrypted snapshots requires replacing encryption keys.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance, please contact your partner to increase your account balance.', 'description' => ''], ['errorCode' => 'InvalidParameter.KmsNotEnabled', 'errorMessage' => 'Failed to perform this operation because KMS is not activated.', 'description' => 'You need to activate KMS key management service.'], ['errorCode' => 'InvalidParameter.Encrypted.KmsNotEnable', 'errorMessage' => 'Failed to perform this operation because KMS is not activated.', 'description' => 'You need to activate KMS key escrow service.'], ['errorCode' => 'InvalidZoneId.DiskCategoryUnsupported', 'errorMessage' => 'The specified disk category does not support setting the ZoneId.', 'description' => 'The specified disk category does not support setting the ZoneId.'], ['errorCode' => 'InvalidStorageSetId.DiskCategoryUnsupported', 'errorMessage' => 'The specified disk category does not support setting the StorageSetId.', 'description' => 'The specified disk category does not support setting the StorageSetId.'], ['errorCode' => 'InvalidStorageClusterId.DiskCategoryUnsupported', 'errorMessage' => 'The specified disk category does not support setting the StorageClusterId.', 'description' => 'The specified disk category does not support setting the StorageClusterId.'], ['errorCode' => 'InvalidParameter.Encrypted', 'errorMessage' => 'Creating non-encrypted disks with encrypted snapshots is not supported.', 'description' => 'Creating a non-encrypted disk with an encrypted snapshot is not supported.'], ['errorCode' => 'EncryptedOption.Conflict', 'errorMessage' => 'Disk encryption attributes conflict.', 'description' => 'Disk encryption attributes conflict.'], ['errorCode' => 'InvalidDataDiskCategory.NotSupported', 'errorMessage' => 'Specified disk category is not supported.', 'description' => 'The specified disk category is not supported.'], ['errorCode' => 'InvalidBurstingEnabled.DiskSizeTooSmall', 'errorMessage' => 'The disk size must be greater than 3 GiB to enable burst.', 'description' => 'The disk size must be greater than 3 GiB to enable burst.'], ['errorCode' => 'OperationDenied.RiskIssue', 'errorMessage' => 'Your action is denied by risk issue, please contact customer service.', 'description' => ''], ['errorCode' => 'InvalidDiskSize.ExceedsMultiAttachLimit', 'errorMessage' => 'The specified disk size exceeds the maximum limit 65536 for enabling multi-attach.', 'description' => 'The specified disk size exceeds the maximum limit 65536 for enabling multi-attach.'], ['errorCode' => 'InvalidStatus.ValueNotSupported', 'errorMessage' => 'The specified instance status is not supported for this operation, expect status is Running or Stopped.', 'description' => 'The status of the specified instance is not satisfied. The status of the instance should be Running or Stopped.'], ['errorCode' => 'InvalidSnapshot.NotReady', 'errorMessage' => 'The specified snapshot creation is not completed yet.', 'description' => 'The specified snapshot is not created.'], ], 403 => [ ['errorCode' => 'InvalidDataDiskCategory.NotSupported', 'errorMessage' => 'Specified disk category is not supported.', 'description' => ''], ['errorCode' => 'InstanceDiskCategoryLimitExceed', 'errorMessage' => 'The total size of specified disk category in an instance exceeds.', 'description' => 'The total size of disks of the specified category exceeds the maximum capacity allowed for an instance.'], ['errorCode' => 'InvalidSnapshot.NotReady', 'errorMessage' => 'The specified snapshot creation is not completed yet.', 'description' => ''], ['errorCode' => 'InvalidSnapshot.TooOld', 'errorMessage' => 'This operation is forbidden because the specified snapshot is created before 2013-07-15.', 'description' => ''], ['errorCode' => 'InvalidSnapshot.TooLarge', 'errorMessage' => 'The capacity of snapshot exceeds 2000GB.', 'description' => 'The snapshot size exceeds 2,000 GB.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified snapshot is not allowed to create disk.', 'description' => ''], ['errorCode' => 'QuotaExceed.PortableCloudDisk', 'errorMessage' => 'The quota of portable cloud disk exceeds.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.ValueUnauthorized', 'errorMessage' => 'The disk category is not authorized.', 'description' => 'You need permission to operate this disk category.'], ['errorCode' => 'InvalidSnapshotId.NotReady', 'errorMessage' => 'The specified snapshot has not completed yet.', 'description' => ''], ['errorCode' => 'InvalidSnapshotId.NotDataDiskSnapshot', 'errorMessage' => 'The specified snapshot is system disk snapshot.', 'description' => ''], ['errorCode' => 'InvalidDiskSize.TooSmall', 'errorMessage' => 'Specified disk size is less than the size of snapshot.', 'description' => ''], ['errorCode' => 'InvalidDiskSize.NotSupported', 'errorMessage' => 'Disk size is not supported.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.SnapshotServiceUnavailable', 'errorMessage' => 'Snapshot service has not been opened yet.', 'description' => 'The operation is not supported while the snapshot service is not activated.'], ['errorCode' => 'InvalidPayMethod', 'errorMessage' => 'The specified pay method is not valid.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.NotSupported', 'errorMessage' => 'The specified disk category is not supported.', 'description' => 'The specified disk category does not support this operation.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in disk white list.', 'description' => 'You are not authorized to manage the disk. Try again when you are authorized.'], ['errorCode' => 'QuotaExceed.PostPaidDisk', 'errorMessage' => 'Living postPaid disks quota exceeded.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support byok.', 'description' => 'The bring your own key (BYOK) feature is not supported in the region.'], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'SecurityRisk.3DVerification', 'errorMessage' => 'We have detected a security risk with your default credit or debit card. Please proceed with verification via the link in your email.', 'description' => ''], ['errorCode' => 'InvalidParameter.AdvancedFeatures', 'errorMessage' => 'The specified parameter AdvancedFeatures is not valid.', 'description' => ''], ['errorCode' => 'InvalidInstanceChargeType.ValueNotSupported', 'errorMessage' => 'The InstanceChargeType does not support this action.', 'description' => ''], ['errorCode' => 'InvalidStatus.Upgrading', 'errorMessage' => 'The instance is upgrading; please try again later.', 'description' => ''], ['errorCode' => 'InvalidParam.ZoneIdAndInstanceId.Conflict', 'errorMessage' => 'The specified parameter \'ZoneId\' and \'InstanceId\' are not blank at the same time.', 'description' => ''], ['errorCode' => 'OperationDenied.PerformanceLevelNotMatch', 'errorMessage' => 'The specified PerformanceLevel and Size do not match.', 'description' => ''], ['errorCode' => 'InvalidStorageSetName.Malformed', 'errorMessage' => 'Specified parameter StorageSetName is not valid.', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'Specified parameter Description is not valid.', 'description' => ''], ['errorCode' => 'InvalidMaxPartitionNumber.Malformed', 'errorMessage' => 'Specified parameter MaxPartitionNumber is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.StorageSetPartitionNumber', 'errorMessage' => 'Specified parameter StorageSetPartitionNumber is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.StorageSetId', 'errorMessage' => 'Specified parameter StorageSetId is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.StorageSetZoneId', 'errorMessage' => 'Specified parameter StorageSetZoneId is not valid.', 'description' => ''], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'QuotaExceeded.PostpaidDataDiskCapacity', 'errorMessage' => 'The quota of postpaid data disk capacity exceeds.', 'description' => 'The used capacity of the pay-as-you-go disk reaches the quota limit.'], ['errorCode' => 'InvalidRegionId.NotSupportEncryptAlgorithm', 'errorMessage' => 'The current region does not support creating encrypted disks with EncryptAlgorithm.', 'description' => ''], ['errorCode' => 'OperationDenied.SnapshotNotAllowed', 'errorMessage' => 'The specified snapshot is not allowed to create disk.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'InvalidParameter.MultiAttach', 'errorMessage' => 'The specified param MultiAttach is not valid.', 'description' => 'The specified MultiAttach parameter is invalid.'], ['errorCode' => 'InvalidParameter.MultiAttachAndInstanceIdConflict', 'errorMessage' => 'The parameter MultiAttach and InstanceId are conflict.', 'description' => 'The MultiAttach and InstanceId parameters cannot be both specified.'], ['errorCode' => 'InvalidParameter.DiskCategoryAndMultiAttachConflict', 'errorMessage' => 'The specified disk category does not support multi attach set.', 'description' => 'The MultiAttach parameter is not supported by Shared Block Storage devices.'], ['errorCode' => 'InvalidParameter.DiskCategoryAndMultiAttachNotMatch', 'errorMessage' => 'The specified disk category does not support multi attach enabled.', 'description' => 'The specified disk category does not support the multi-attach feature.'], ['errorCode' => 'OperationDenied.ZoneNotSupportMultiAttachDisk', 'errorMessage' => 'The specified zone does support multi attach disk.', 'description' => 'Disks for which the multi-attach feature is enabled cannot be created in the specified zone.'], ['errorCode' => 'InvalidAccountStatus.CouponAmountNotEnough', 'errorMessage' => 'Your coupon balance is insufficient or has expired.', 'description' => 'Your coupon balance is insufficient or your coupons have expired.'], ['errorCode' => 'InvalidOperation.CreateFromSnapshotUnsupported', 'errorMessage' => 'The elastic ephemeral disk cannot be created from snapshot.', 'description' => 'The elastic ephemeral disk cannot be created from snapshot.'], ['errorCode' => 'NotSupportSnapshotEncrypted.DiskCategory', 'errorMessage' => 'The specified disk category does not support creating encrypted system disks or creating encrypted data disks from snapshots. Check the DiskCategory or Encrypted parameter, or check your account for default encryption settings.', 'description' => 'This disk type does not support creating encrypted system disks or creating encrypted data disks in snapshot mode. Please check the disk type and encryption parameters you entered, or check whether you have configured the default encryption configuration for account cloud disks.'], ['errorCode' => 'InvalidParameter.DataEncryptedKeyCreateFailed', 'errorMessage' => 'Create kms data encrypted key fail. If you need further assistance, you can contact the KMS Technical Support.', 'description' => 'Failed to create a data key using the KMS master key. Please contact the KMS attendant for further troubleshooting.'], ['errorCode' => 'Zone.NotOnSale', 'errorMessage' => 'The resource in the specified zone is no longer available for sale. Please try other regions and zones.', 'description' => ''], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => 'You are not authorized to perform the operation in the specified region.', 'description' => 'You are not authorized to perform the operation in the specified region.'], ['errorCode' => 'InvalidDataDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified Category of Data Disk is not valid.', 'description' => 'The specified data disk type is not supported.'], ['errorCode' => 'InvalidParameter.EncryptedNotSupported', 'errorMessage' => 'The current disk category does not support encryption. If encryption is required, please switch to a different disk category.', 'description' => 'The current disk category does not support encryption. If encryption is required, please switch to a different disk category.'], ['errorCode' => 'InvalidDataDiskSize.ValueNotSupported', 'errorMessage' => 'The specified disk size is beyond the permitted range, or the snapshot capacity exceeds the size limit for the specified disk category.', 'description' => 'The specified disk size is beyond the permitted range, or the snapshot capacity exceeds the size limit for the specified disk category.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK (Customer Master Key) must be in an active state.', 'description' => 'The CMK (Customer Master Key) must be in an active state.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.', 'description' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.'], ['errorCode' => 'InvalidEncrypted.NotMatchSnapshot', 'errorMessage' => 'The specified parameter Encrypted must be set to true when creating disks with encrypted snapshots.', 'description' => 'When you create a disk using an encrypted snapshot, the specified parameter Encrypted must be set to true.'], ['errorCode' => 'InvalidEncrypted.NotMatchDiskDefaultEncryption', 'errorMessage' => 'Enabling disk default encryption prevents the creation of non-encrypted disks.', 'description' => 'After the default encryption of the cloud disk account is enabled, an unencrypted disk cannot be created.'], ['errorCode' => 'InvalidInstanceStatus', 'errorMessage' => 'The current status of the instance does not support this operation.', 'description' => 'The instance is in a state that does not support the current operation.'], ['errorCode' => 'InvalidDiskSize.NotSupportMultiAttachDisk', 'errorMessage' => 'The specified disk size exceeds the maximum limit 65536 for enabling multi-attach.', 'description' => 'The specified disk size exceeds the maximum limit 65536 for enabling multi-attach.'."\n"], ['errorCode' => 'InstanceDiskLimitExceeded', 'errorMessage' => 'The amount of the disk on instance reach its limits.', 'description' => ''], ['errorCode' => 'InvalidOperation.PrepaidDiskUnsupported', 'errorMessage' => 'The specified DataSource does not support prepaid disk charge type.', 'description' => 'The specified DataSource does not support the prepaid disk type.'], ['errorCode' => 'UnsupportedUserType', 'errorMessage' => 'The specified DataSource is not enabled.', 'description' => 'The DataSource mode disk creation function has not been enabled.'], ['errorCode' => 'InvalidDataSource.NotAvailable', 'errorMessage' => 'The specified DataSource is not available. Please contact the ACS Service team to verify DataSource availability.', 'description' => 'The DataSource is not available. Contact the ACS service team to check the resource availability.'], ['errorCode' => 'InvalidParameter.DataSourceType', 'errorMessage' => 'The specified DataSourceType is not valid. The DataSourceType only supports ImageCache.', 'description' => 'The specified DataSource type is invalid. DataSourceType only supports ImageCache.'], ['errorCode' => 'InvalidParameter.DataSource', 'errorMessage' => 'Both DataSourceId and DataSourceType must be specified.', 'description' => 'Both DataSourceId and DataSourceType must be specified.'], ['errorCode' => 'InvalidDataSource.EncryptedResourceNotSupported', 'errorMessage' => 'Encrypted DataSources are not supported. Please switch to a non-encrypted DataSource and try again.', 'description' => 'Encrypted DataSource is not supported. Please use a non-encrypted DataSource and try again.'], ['errorCode' => 'ParameterConflict.DataSourceAndSnapshotId', 'errorMessage' => 'The specified parameter DataSource is incompatible with SnapshotId. You can specify either DataSource or SnapshotId but not both.', 'description' => 'The specified DataSource is incompatible with the SnapshotId. You can specify only one of the DataSource or SnapshotId. You cannot specify both.'], ['errorCode' => 'InvalidZoneId.EncryptedUnsupported', 'errorMessage' => 'The specified ZoneId does not support creating encrypted disks.', 'description' => 'The zone in this region does not support creating an encryption disk.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The specified zone does not exist.', 'description' => ''], ['errorCode' => 'InvalidSnapshotId.NotFound', 'errorMessage' => 'The specified SnapshotId does not exist.', 'description' => ''], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'InvalidParameter.KMSKeyId.NotFound', 'errorMessage' => 'The specified KMSKeyId does not exist.', 'description' => 'The specified KMSKeyId parameter does not exist.'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.NotExist', 'errorMessage' => 'The specified StorageClusterId does not exist in current region.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'Create a data disk', 'summary' => 'Creates a pay-as-you-go or subscription data disk.', 'description' => '- When you create a disk, you can enable the multi-attach feature (`MultiAttach`). Learn about this attribute and its limits before you use it. For more information, see [ESSD cloud disks that support NVMe](~~256487~~) and [Use the multi-attach feature](~~262105~~).'."\n" .'- The following disk types can be created: basic disks, ultra disks, standard SSDs, enterprise SSDs, ESSD Entry disks, regional Enterprise SSDs (ESSDs), ESSD AutoPL disks, elastic ephemeral disks - Standard Edition, and elastic ephemeral disks - Premium Edition.'."\n" .'- To create a disk, complete [real-name registration](https://account.console.aliyun.com/#/auth/home).'."\n" .'- Creating a disk incurs fees. Learn about the billing method of Elastic Compute Service (ECS) in advance. For more information, see [Billing overview](~~25398~~).'."\n" ."\n" .'- Default settings when you create a disk:'."\n" ."\n" .' - Automatic snapshots of the disk are deleted when the disk is deleted. That is, `DeleteAutoSnapshot` is set to `true`. You can call [DescribeDisks](~~2679767~~) to query the parameter settings, and call [ModifyDiskAttribute](~~25517~~) to modify the property.'."\n" .' - When you create an enterprise SSD, if you do not configure a performance level, the default level is PL1. You can call [ModifyDiskSpec](~~123780~~) to change the performance level.'."\n" .' - The billing method is pay-as-you-go, which means the `Portable` property defaults to `true`.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-17T08:25:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-05-22T06:02:34.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-05-08T05:54:23.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-19T08:46:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-27T01:50:33.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-17T08:25:07.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-30T03:42:36.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-09T02:24:32.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-07-12T07:24:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-06-27T09:06:45.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-05-08T01:30:52.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-03-21T02:04:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-01-15T13:06:32.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-11-24T01:41:12.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-11-21T02:05:28.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-10-09T03:08:36.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-08-29T05:39:26.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-02T08:36:18.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-06-28T06:56:28.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-01-10T03:46:18.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-01-04T07:07:36.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-07-11T02:20:43.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-03-06T07:39:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-02-28T10:03:43.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-01-21T09:39:22.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2021-11-29T03:12:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-03T10:27:27.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2021-05-20T12:45:01.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-05-13T09:57:06.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateDisk'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateDisk', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'ecs:IsDiskEncrypted', 'validationType' => 'always'], ['conditionKey' => 'ecs:IsDiskByokEncrypted'], ], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/{#snapshotId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DiskId\\": \\"d-bp131n0q38u3a4zi****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"OrderId\\": \\"20413515388****\\"\\n}","type":"json"}]', ], 'CreateElasticityAssurance' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28824', 'abilityTreeNodes' => ['FEATUREecsC0XNJQ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the elasticity assurance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which to assign the elasticity assurance.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the elasticity assurance.', 'type' => 'array', 'items' => [ 'description' => 'The tag to add to the elasticity assurance.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of tag N to add to the elasticity assurance. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with `acs:`. The tag value cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'Key' => ['description' => 'The key of tag N to add to the elasticity assurance. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot contain `http://` or `https://`. The tag key cannot start with `acs:` or `aliyun`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The validity period of the elasticity assurance. The unit of the validity period is determined by the value of `PeriodUnit`. Specifies whether to check the image used by the instance supports hot migration. Valid values:'."\n" ."\n" .'- When the value of `PeriodUnit` is `Month`, the valid values are 1, 2, 3, 4, 5, 6, 7, 8, and 9.'."\n" ."\n" .'- When the value of `PeriodUnit` is `Year`, the valid values are 1, 2, 3, 4, and 5.'."\n" ."\n" .'- When the value of `PeriodUnit` is `Day`, the valid values are 1 to 365.'."\n" ."\n" .'Default value: 1', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => ['description' => 'The unit of the validity period of the elasticity assurance. Valid values:'."\n" ."\n" .'- Month'."\n" ."\n" .'- Year'."\n" ."\n" .'- Day'."\n" ."\n" .' \\*\\*'."\n" ."\n" .' **Note** If you set `PeriodUnit` to `Day`, you must specify RecurrenceRules to create a time-segmented elasticity assurance.'."\n" ."\n" .'Default value: Year.', 'type' => 'string', 'required' => false, 'default' => 'Year', 'example' => 'Year', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that you want to use to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The `token` can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe637760', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Name', 'in' => 'query', 'schema' => ['description' => 'The name of the elasticity assurance. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (\\_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'eapTestName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the elasticity assurance. The description must be 2 to 256 characters in length. It cannot start with `http://` or `https://`.'."\n" ."\n" .'This parameter is empty by default.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.MatchCriteria', 'in' => 'query', 'schema' => ['description' => 'The type of the private pool with which you want to associate the elasticity assurance. Valid values:'."\n" ."\n" .'- Open: open private pool. If you use the elasticity assurance to create ECS instances, the open private pool that is associated with the elasticity assurance is automatically matched. If no capacity is available in the open private pool, resources in the public pool are automatically used to create the ECS instances.'."\n" ."\n" .'- Target: targeted private pool. If you use the elasticity assurance to create ECS instances, the specified private pool that is associated with the elasticity assurance is automatically matched. If no capacity is available in the private pool, the ECS instances fail to be created.'."\n" ."\n" .'Default value: Open.', 'type' => 'string', 'required' => false, 'default' => 'Open', 'example' => 'Open', 'title' => ''], ], [ 'name' => 'AssuranceTimes', 'in' => 'query', 'schema' => ['description' => 'The total number of times that the elasticity assurance can be used. Set the value to Unlimited. This value specifies that the elasticity assurance can be used for an unlimited number of times within its validity period.'."\n" ."\n" .'Default value: Unlimited.', 'type' => 'string', 'required' => false, 'default' => 'Unlimited', 'example' => 'Unlimited', 'title' => ''], ], [ 'name' => 'InstanceAmount', 'in' => 'query', 'schema' => ['description' => 'The total number of instances of an instance type for which you want to reserve capacity.'."\n" ."\n" .'Valid values: 1 to 1000.'."\n" ."\n" .'> You must specify this parameter.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '2', 'title' => ''], ], [ 'name' => 'InstanceCpuCoreCount', 'in' => 'query', 'schema' => ['description' => '> This parameter is no longer used.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => 'null', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The time when the elasticity assurance takes effect. The default value is the time when the CreateElasticityAssurance operation is called to create the elasticity assurance. Specify the time in the ISO 8601 standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'required' => false, 'example' => '2020-10-30T06:32:00Z', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of the zone in which to create the elasticity assurance. An elasticity assurance can be used to reserve resources within a single zone.', 'type' => 'array', 'items' => ['description' => 'The ID of the zone in which to create the elasticity assurance. An elasticity assurance can be used to reserve resources within a single zone.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-h', 'title' => ''], 'required' => true, 'example' => 'cn-hangzhou-h', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'InstanceType', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance type. An elasticity assurance can be created to reserve the capacity of a single instance type.', 'type' => 'array', 'items' => ['description' => 'The instance type. An elasticity assurance can be created to reserve the capacity of a single instance type.', 'type' => 'string', 'required' => false, 'example' => 'ecs.c6.xlarge', 'title' => ''], 'required' => true, 'example' => 'ecs.c6.xlarge', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'RecurrenceRules', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The assurance schedules based on which the capacity reservation takes effect.'."\n" ."\n" .'> Time-segmented elasticity assurances are available only in specific regions and to specific users. To use time-segmented elasticity assurances, [submit a ticket](https://smartservice.console.aliyun.com/service/create-ticket-intl).', 'type' => 'array', 'items' => [ 'description' => 'The assurance schedule based on which the capacity reservation takes effect.', 'type' => 'object', 'properties' => [ 'StartHour' => ['description' => 'The start time of the assurance period for the capacity reservation. Specify an on-the-hour point in time.'."\n" ."\n" .'> You must specify both `StartHour` and `EndHour`. EndHour must be at least four hours later than StartHour.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], 'RecurrenceType' => ['description' => 'The type of the assurance schedule. Valid values:'."\n" ."\n" .'- Daily'."\n" ."\n" .'- Weekly'."\n" ."\n" .'- Monthly'."\n" ."\n" .'> You must specify both `RecurrenceType` and `RecurrenceValue`.', 'type' => 'string', 'required' => false, 'example' => 'Daily', 'title' => ''], 'EndHour' => ['description' => 'The end time of the assurance period for the capacity reservation. Specify an on-the-hour point in time.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], 'RecurrenceValue' => ['description' => 'The days of the week or month on which the capacity reservation takes effect or the interval, in number of days, at which the capacity reservation takes effect.'."\n" ."\n" .'- If you set `RecurrenceType` to `Daily`, you can specify only one value for this parameter. Valid values: 1 to 31. The value specifies that the capacity reservation takes effect every few days.'."\n" ."\n" .'- If you set `RecurrenceType` to `Weekly`, you can specify multiple values for this parameter. Separate the values with commas (,). Valid values: 0, 1, 2, 3, 4, 5, and 6, which specify Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday, respectively. Example: `1,2`, which specifies that the capacity reservation takes effect on Monday and Tuesday.'."\n" ."\n" .'- If you set `RecurrenceType` to `Monthly`, you can specify two values in the `A-B` format for this parameter. Valid values of A and B: 1 to 31. B must be greater than or equal to A. For example, `1-5` indicates that the execution is repeated from the 1st to 5th of each month.'."\n" ."\n" .'> You must specify both `RecurrenceType` and `RecurrenceValue`.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable auto-renewal for the elasticity assurance. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'AutoRenewPeriod', 'in' => 'query', 'schema' => ['description' => 'The auto-renewal period. Unit: month. Valid values: 1, 2, 3, 6, 12, 24, and 36.'."\n" ."\n" .'- Default value when `PeriodUnit` is set to Month: 1.'."\n" ."\n" .'- Default value when `PeriodUnit` is set to Year: 12.'."\n" ."\n" .'> If you set `AutoRenew` to `true`, you must specify this parameter.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PrivatePoolOptionsId' => ['description' => 'The elasticity assurance ID.', 'type' => 'string', 'example' => 'eap-bp67acfmxazb4****', 'title' => ''], 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '1234567890', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidOperation.PeriodUnitUnsupported', 'errorMessage' => 'TimeDivisionElasticityAssurance only supports PeriodUnit of Day.', 'description' => ''], ['errorCode' => 'InvalidParameter.RegionId', 'errorMessage' => 'The specified RegionId is invalid.', 'description' => 'The specified region does not exist or is unavailable.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified instanceType or zone is not available or not authorized.', 'description' => 'Specified specifications or Availability Zones are not available'], ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidStartTime.NotSupported', 'errorMessage' => 'The specified StartTime should be within 180 calendar days from the current date, and you must specify a precision to hour.', 'description' => 'The specified StartTime value is out of range.'], ['errorCode' => 'InvalidStartTime.MalFormed', 'errorMessage' => 'The specified StartTime is out of the permitted range.', 'description' => 'The specified StartTime value exceeds the maximum allowed value.'], ['errorCode' => 'Invalid.PrivatePoolOptionsName.MalFormed', 'errorMessage' => 'The specified PrivatePoolOptions.Name is not valid.', 'description' => 'The specified PrivatePoolOptions.Name is invalid'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The specified ZoneId is not valid.', 'description' => 'The specified ZoneId is invalid.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The specified InstanceType is not valid.', 'description' => 'The specified InstanceType is illegal.'], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool status is not valid.', 'description' => 'The specified private pool state is incorrect.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'MissingParameter.PackageType', 'errorMessage' => 'The specified parameter "PackageType" can not be empty.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" can not be empty.', 'description' => 'Specifies that the parameter "PrivatePoolOptions.ids" cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" can not be empty.', 'description' => 'The specified parameter \'InstanceCpuCocount\' cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceAmount', 'errorMessage' => 'The specified parameter "InstanceAmount" can not be empty.', 'description' => 'The specified parameter InstanceAmount cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time.', 'description' => 'The specified parameter InstanceCpuCoreCount and InstanceAmount cannot be both empty.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyZoneIds', 'errorMessage' => 'Too many ZoneIds in the request.', 'description' => 'The number of specified zone IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyInstanceTypes', 'errorMessage' => 'Too many InstanceTypes in the request.', 'description' => 'The number of specified instance types exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyUnpaidPrivatePool', 'errorMessage' => 'Too many PrivatePools create but still unpaid.', 'description' => 'Multiple private pools are created but not paid.'], ['errorCode' => 'Invalid.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'Both InstanceCpuCoreCount and InstanceAmount are provided.', 'description' => 'The InstanceCpuCoreCount and InstanceAmount parameters cannot be both specified.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id.', 'description' => 'The specified private pool ID does not exist.'], ['errorCode' => 'Invalid.PackageType', 'errorMessage' => 'The specified parameter "PackageType" is invalid.', 'description' => 'The specified parameter PackageType is invalid.'], ['errorCode' => 'Invalid.PrivatePool.Purchase', 'errorMessage' => 'The PrivatePool has already paid.', 'description' => 'The private pool is already paid.'], ['errorCode' => 'Invalid.AssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'RepeatStartPrivatePool', 'errorMessage' => 'PrivatePool has already been started.', 'description' => 'The private pool is already started.'], ['errorCode' => 'Invalid.PeriodUnit', 'errorMessage' => 'Only Month or Year is supported for PeriodUnit.', 'description' => 'Purchase duration unit value does not match.'], ['errorCode' => 'AccountForbidden.ProductCreationLimited', 'errorMessage' => 'The commodity must be officially operated by Aliyun and in pay-as-you-go billing method.', 'description' => ''], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => 'There is no authority to create private pool in the specified region.', 'description' => ''], ['errorCode' => 'PriceNotFound', 'errorMessage' => 'The price of your queried resource is not available now, please try other resources.', 'description' => 'The price of the specified resource does not exist. Modify the parameter value and try again later.'], ['errorCode' => 'InvalidRecurrenceRules.CountLimitExceeded', 'errorMessage' => 'The count of RecurrenceRules exceeds the limit.', 'description' => 'The number of parameter RecurrenceRules exceeds the limit value.'], ['errorCode' => 'InvalidRecurrenceRulesStartHourEndHour.TooShort', 'errorMessage' => 'The recurrence hour between RecurrenceRules.StartHour and RecurrenceRules.EndHour is too short.', 'description' => 'The effective time between parameter RecurrenceRules.StartHour and RecurrenceRules.EndHour is less than the minimum requirement.'."\n"], ['errorCode' => 'InvalidParameter.RecurrenceRulesStartHourEndHour', 'errorMessage' => 'The specified parameter RecurrenceRules.StartHour or RecurrenceRules.EndHour is invalid.', 'description' => 'The parameter RecurrenceRules.StartHour or RecurrenceRules.EndHour specified for the RecurrenceRules does not conform to the specification.'], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceValueMonthly', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceValue for Monthly is invalid.', 'description' => 'The parameter RecurrenceRules.RecurrenceValue specified for the RecurrenceRules.RecurrenceType = Monthly does not conform to the specification.'."\n"], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceValueWeekly', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceValue for Weekly is invalid.', 'description' => 'The parameter RecurrenceRules.RecurrenceType specified for RecurrenceRules.RecurrenceValue = Weekly is out of specification.'], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceValueDaily', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceValue for Daily is invalid.', 'description' => 'The parameter RecurrenceRules.RecurrenceType specified for RecurrenceRules.RecurrenceValue = Daily does not conform to the specification.'], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceType', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceType is invalid.', 'description' => 'The specified parameter RecurrenceRules.RecurrenceType does not conform to specification.'], ['errorCode' => 'InvalidAutoRenewPeriod.ValueNotSupported', 'errorMessage' => 'The specified autoRenewPeriod is invalid.', 'description' => 'The specified auto-renewal duration is invalid.'], ['errorCode' => 'InvalidOperation.ElasticityAssuranceActiveTimeTooShort', 'errorMessage' => 'The total active time of the ElasticityAssurance is too short.', 'description' => 'The total active time of the ElasticityAssurance is too short.'], ], 403 => [ ['errorCode' => 'Zone.NotOpen', 'errorMessage' => 'The specified zone is not granted to you to buy resources yet.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotSupported', 'errorMessage' => '%s', 'description' => 'The specified resource combination does not exist. Change to another zone or specification.'], ['errorCode' => 'OperationDenied.NoStock', 'errorMessage' => 'The resource is out of stock in the specified zone. Please try other types, or choose other regions and zones.', 'description' => 'The requested resources are unavailable in the specified zone. Try a different resource type or select a different region or zone.'], ['errorCode' => 'InvalidInstanceType.NotSupported', 'errorMessage' => 'The specified InstanceType is invalid.', 'description' => ''], ['errorCode' => 'Invalid.ZoneIds', 'errorMessage' => 'At least one of the specified ZoneIds are invalid.', 'description' => 'At least one of the specified ZoneIds is invalid.'], ['errorCode' => 'Zone.NotOnSale', 'errorMessage' => 'The specified zone is not available for purchase.', 'description' => 'The requested resources are unavailable in the specified zone. Try a different instance type or select a different region or zone.'], ['errorCode' => 'QuotaExceed.ElasticityAssuranceCapacity', 'errorMessage' => 'ElasticityAssurance Capacity quota exceeded.', 'description' => 'ElasticityAssurance Capacity quota exceeded.'], ['errorCode' => 'InvalidAccount.NotSupportEA', 'errorMessage' => 'According to business rules, this account cannot purchase ECS ElasticityAssurance.', 'description' => 'According to business rules, this account cannot purchase ECS ElasticityAssurance.'], ], [ ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The specified zoneId does not exist.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'CreateElasticityAssurance', 'summary' => 'Creates an elasticity assurance in a region. When you call this operation, you can specify parameters, such as ZoneId, InstanceType, Period, PeriodUnit, and AutoRenew, in the request.', 'description' => 'Elasticity Assurance provides a new method to purchase and use guaranteed resources in a flexible manner. Elasticity Assurance is a resource reservation service that provides assured access to resources for pay-as-you-go Elastic Compute Service (ECS) instances. For more information, see [Overview of Elasticity Assurance](~~193630~~).'."\n" ."\n" .'- After you purchase an elasticity assurance, you cannot request a refund for the elasticity assurance. For information about the billing of elasticity assurances, see [Resource assurance](~~432502~~).'."\n" ."\n" .'- Elasticity assurances can be used to create only pay-as-you-go ECS instances.'."\n" ."\n" .'- Elasticity assurances only support the unlimited mode. You can set `AssuranceTimes` only to `Unlimited`. Elasticity assurances in unlimited mode can be used for an unlimited number of times within their terms. Elasticity assurances in unlimited mode take effect immediately after creation.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-08-20T09:10:15.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-04-02T03:46:21.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-27T08:46:41.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-19T07:59:29.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-02-13T09:46:26.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2022-11-14T09:00:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-07-29T02:25:03.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateElasticityAssurance'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateElasticityAssurance', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ElasticityAssurance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:elasticityassurance/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PrivatePoolOptionsId\\": \\"eap-bp67acfmxazb4****\\",\\n \\"OrderId\\": \\"1234567890\\"\\n}","type":"json"}]', ], 'CreateForwardEntry' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the DNAT table is located. You can call the [DescribeRegions](https://help.aliyun.com/document_detail/36063.html) operation to retrieve a list of available regions.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ForwardTableId', 'in' => 'query', 'schema' => ['description' => 'The ID of the DNAT table.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ExternalIp', 'in' => 'query', 'schema' => ['description' => 'The public IP address for the DNAT entry. This must be a public IP address of the NAT gateway associated with the DNAT table.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ExternalPort', 'in' => 'query', 'schema' => ['description' => 'The external port used for DNAT. Valid values: 1 to 65535.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'InternalIp', 'in' => 'query', 'schema' => ['description' => 'The private IP address to which traffic is forwarded.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'InternalPort', 'in' => 'query', 'schema' => ['description' => 'The internal port to which traffic is forwarded. Valid values: 1 to 65535.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'IpProtocol', 'in' => 'query', 'schema' => ['description' => 'The protocol. Valid values: TCP, UDP, and Any. If you set this parameter to Any, the DNAT entry applies to all protocols.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'headers' => [], 'schema' => [ 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'ForwardEntryId' => ['description' => 'The ID of the forwarding entry.', 'type' => 'string', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationUnsupported.ForwardEntry', 'errorMessage' => 'Duplicated destination ip port is unsupported.', 'description' => ''], ['errorCode' => 'InvalidExternalIp.Malformed', 'errorMessage' => 'The specified ExternalIp is not a valid IP address.', 'description' => 'The specified public IP address is invalid.'], ['errorCode' => 'InvalidInternalIp.Malformed', 'errorMessage' => 'The specified InternalIp is not a valid IP address.', 'description' => 'The specified internal IP address is invalid.'], ['errorCode' => 'InvalidExternalPort.Malformed', 'errorMessage' => 'The specified ExternalPort is not a valid port.', 'description' => ''], ['errorCode' => 'InvalidInternalPort.Malformed', 'errorMessage' => 'The specified InternalPort is not a valid port.', 'description' => 'The specified InternalPort parameter is invalid.'], ['errorCode' => 'Forbidden.DestnationIpOutOfVpcCIDR', 'errorMessage' => 'The specified Internal Ip is Out of VPC CIDR.', 'description' => ''], ['errorCode' => 'InvalidProtocal.ValueNotSupported', 'errorMessage' => 'The specified IpProtocol does not support.', 'description' => 'The specified IpProtocol parameter is invalid.'], ['errorCode' => 'IncorretForwardEntryStatus', 'errorMessage' => 'Some Forward entry status blocked this operation..', 'description' => 'The DNAT entry is in a state that does not support the current operation.'], ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'Forward entry quota exceeded in this route table.', 'description' => 'The maximum number of the forward entry is exceeded.'], ['errorCode' => 'ForwardEntry.Duplicated', 'errorMessage' => 'The specified ExternalIp, IpProtocol, ExternalPort,InternalIp, InternalPort is duplicated.', 'description' => ''], ['errorCode' => 'Invalid.natgwNotExist', 'errorMessage' => 'The specified natgateway not exist.', 'description' => ''], ['errorCode' => 'InvalidIp.NotInNatgw', 'errorMessage' => 'The specified ip not belong to natgateway.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'Missing mandatory parameter.', 'description' => 'Required parameters must be specified.'], ['errorCode' => 'OperationFailed.InstacneBindEip', 'errorMessage' => 'Private ip instance already bind eip.', 'description' => ''], ['errorCode' => 'DuplicatedParam.ExternalPort', 'errorMessage' => 'The param of %s is duplicated.', 'description' => ''], ['errorCode' => 'DuplicatedParam.InternalPort', 'errorMessage' => 'The param of %s is duplicated.', 'description' => ''], ['errorCode' => 'UnsupportedFeature.PrivateLinkEnabled', 'errorMessage' => 'The feature of PrivateLinkEnabled is not supported.', 'description' => ''], ['errorCode' => 'UnsupportedFeature.PortSegment', 'errorMessage' => 'The feature of PortSegment is not supported.', 'description' => ''], ['errorCode' => 'ExclusiveParam.%sAnd%s', 'errorMessage' => 'The param of %s and %s are mutually exclusive.', 'description' => ''], ['errorCode' => 'OperationFailed.AnyPortConfig', 'errorMessage' => 'Operation failed because any port correspondence any protocol.', 'description' => ''], ['errorCode' => 'QuotaExceeded.ForwardEntry', 'errorMessage' => 'The quota of %s is exceeded, usage %s/%s.', 'description' => ''], ['errorCode' => 'IncorrectStatus.NatIp', 'errorMessage' => 'The status of %s [%s] is incorrect.', 'description' => ''], ['errorCode' => 'Forbidden.IpHasBeenUsedInSnat', 'errorMessage' => 'The source ip can\'t be used. Because it has been used in snat.', 'description' => ''], ['errorCode' => 'Forbidden.DestinationIpOutOfVswitchCIDR', 'errorMessage' => 'The specified Internal Ip is Out of VSwitch CIDR.', 'description' => ''], ['errorCode' => 'Forbidden.ExternalIp.UsedInSnatTable', 'errorMessage' => 'The specified ExternalIp is already used in SnatTable.', 'description' => ''], ['errorCode' => 'Forbidden.InternalIpOutOfVpcCIDR', 'errorMessage' => 'The specified Internal Ip is Out of VPC CIDR.', 'description' => ''], ['errorCode' => 'AnyPort.PortMustBeZero', 'errorMessage' => 'Any port port must be zero.', 'description' => ''], ['errorCode' => 'InvalidParameter.Name.Malformed', 'errorMessage' => 'The specified Name is not valid.', 'description' => ''], ['errorCode' => 'IncorrectStatus.ForwardEntry', 'errorMessage' => 'The status of %s [%s] is incorrect.', 'description' => ''], ['errorCode' => 'Duplicated.DestinationPort', 'errorMessage' => 'The specified param DestinationPort is duplicated.', 'description' => ''], ['errorCode' => 'OperationUnsupported.EipInBinding', 'errorMessage' => 'Create snat entry with eip in associating status is unsupported.', 'description' => ''], ['errorCode' => 'QuotaExceeded.ForwardEntrySessionManytoOne', 'errorMessage' => 'The dnat session quota is exceed.', 'description' => ''], ['errorCode' => 'DuplicatedParam.%s', 'errorMessage' => 'The param of %s is duplicated.', 'description' => ''], ['errorCode' => 'UnsupportedFeature.%s', 'errorMessage' => 'The feature of %s is not supported.', 'description' => ''], ['errorCode' => 'Operation.Conflict', 'errorMessage' => 'The operation may conflicts with others.', 'description' => 'The operation conflicts with other operations.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidForwardTableId.NotFound', 'errorMessage' => 'Specified forward table does not exist.', 'description' => ''], ['errorCode' => 'InvalidExternalIp.NotFound', 'errorMessage' => 'Specified External Ip address does not found on the VRouter.', 'description' => ''], ['errorCode' => 'ResourceNotFound.NatIp', 'errorMessage' => 'The specified resource of %s is not found.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ['errorCode' => 'System.Error', 'errorMessage' => 'ERROR SYSTEM ERROR.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateForwardEntry'], ], 'changeSet' => [ ['createdAt' => '2023-04-24T06:08:14.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-11T03:59:53.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateForwardEntry'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateForwardEntry', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ForwardTable', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:forwardtable/{#ForwardTableId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ForwardEntryId\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreateForwardEntry', 'summary' => 'CreateForwardEntry', ], 'CreateHaVip' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsYLNQGM'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'IpAddress', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'HaVipId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified Description is wrongly formed.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ['errorCode' => 'InvalidIPAddress.OutOfRange', 'errorMessage' => 'The specified IPAddress is out of VSwitch CIDR.', 'description' => 'The specified IP address does not fall within the CIDR block of the vSwitch.'], ['errorCode' => 'InvalidIPAddress.NotAvailable', 'errorMessage' => 'The specified IPAddress is not available because it is a system reserved IPAddress.', 'description' => 'The specified IP address is reserved and unusable.'], ['errorCode' => 'InvalidIPAddress.AlreadyUsed', 'errorMessage' => 'The specified IPAddress is already used by other resource.', 'description' => 'The specified IP address is being used by another resource.'], ['errorCode' => 'InvalidIPAddress.Malformed', 'errorMessage' => 'The specified IPAddress is not a valid or strict address.', 'description' => ''], ['errorCode' => 'InvalidVSwitch.NotFound', 'errorMessage' => 'The specified VSwitch does not exist in the specified region.', 'description' => ''], ['errorCode' => 'InvalidPrivateIp.NotFound', 'errorMessage' => 'The specified private ip is not exist in vswitch.', 'description' => ''], ['errorCode' => 'Forbidden.HaVip', 'errorMessage' => 'No permissions to perform operations on HAVIPs. Please apply for privilege--vpc_privilege_allow_buy_havip_instance.', 'description' => 'You do not have the permissions to manage the HAVIP. Go to the Quota Center to apply for the permissions.'], ], 403 => [ ['errorCode' => 'CountLimitExceed.HaVipInVpc', 'errorMessage' => 'Specified Vpc exceeds the quota of max number of ha-vip count.', 'description' => ''], ['errorCode' => 'QuotaExceeded.HaVip', 'errorMessage' => 'Living HaVip quota exceeded.', 'description' => ''], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'Specified value of "regionId" is not supported.', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'The specified VSwitch does not exist in the specified region.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateHaVip'], ], 'changeSet' => [ ['createdAt' => '2023-06-12T07:10:42.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHaVip'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateHaVip', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HaVipId\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreateHaVip', 'summary' => 'Creates a high-availability virtual IP address (HaVip).', ], 'CreateHpcCluster' => [ 'summary' => 'Creates an HPC cluster by calling CreateHpcCluster.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '29250', 'abilityTreeNodes' => ['FEATUREecsVE4GXS'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the HPC cluster. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The value of **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the HPC cluster. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'testHPCDescription', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the HPC cluster. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with `http://` or `https://`. It can contain digits, periods (.), underscores (_), or hyphens (-).', 'type' => 'string', 'required' => true, 'example' => 'hpc-Cluster-01', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'HpcClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'example' => 'hpc-pnlg1ds9rky4****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter RegionId that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidHpcClusterName.Malformed', 'errorMessage' => 'Specified hpc cluster name is not valid.', 'description' => 'The specified HPC cluster name is invalid.'], ['errorCode' => 'InvalidHpcClusterDescription.Malformed', 'errorMessage' => 'The specified parameter Description is not valid.', 'description' => 'The specified HPC cluster description is invalid.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter "RegionId" is not valid.', 'description' => ''], ['errorCode' => 'Invalid.Parameter', 'errorMessage' => 'Invalid parameters', 'description' => 'Invalid parameters.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter "RegionId" is not valid.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'Failed to create hpc cluster', 'description' => 'The HPC cluster cannot be created.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HpcClusterId\\": \\"hpc-pnlg1ds9rky4****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Create an HPC cluster', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateHpcCluster'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateHpcCluster', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'HpcCluster', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:hpc/*'], ], ], ], ], ], 'CreateImage' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28829', 'abilityTreeNodes' => ['FEATUREecsJ8B02D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the image. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SnapshotId', 'in' => 'query', 'schema' => ['description' => 'The snapshot ID used to create the custom image.'."\n" ."\n" .'> If you want to create a custom image only from the system disk snapshot of an instance, you can use this parameter or the `DiskDeviceMapping.N.SnapshotId` parameter. To include data disk snapshots, use only the `DiskDeviceMapping.N.SnapshotId` parameter to specify snapshots.', 'type' => 'string', 'required' => false, 'example' => 's-bp17441ohwkdca0****', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. This parameter is required when you create a custom image from an instance.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1g6zv0ce8oghu7****', 'title' => ''], ], [ 'name' => 'ImageName', 'in' => 'query', 'schema' => ['description' => 'The image name. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with http:// or https://. It can contain digits, colons (:), underscores (_), or hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'TestCentOS', 'title' => ''], ], [ 'name' => 'ImageFamily', 'in' => 'query', 'schema' => ['description' => 'The image family name. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with aliyun or acs:. It cannot contain http:// or https://. It can contain digits, colons (:), underscores (_), or hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'hangzhou-daily-update', 'title' => ''], ], [ 'name' => 'ImageVersion', 'in' => 'query', 'schema' => ['description' => 'The image version.'."\n" ."\n" .'> If you specify an instance ID (`InstanceId`) and the image of the instance is an Alibaba Cloud Marketplace image or a custom image created from an Alibaba Cloud Marketplace image, this parameter must be the same as the `ImageVersion` of the current instance image or left empty.', 'type' => 'string', 'required' => false, 'example' => '2017011017', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the image. The description must be 2 to 256 characters in length and cannot start with http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'ImageTestDescription', 'title' => ''], ], [ 'name' => 'Platform', 'in' => 'query', 'schema' => ['description' => 'The operating system distribution. After a data disk snapshot is specified as the system disk of the image, use this parameter to specify the operating system distribution of the system disk. Valid values:'."\n" ."\n" .'- Aliyun'."\n" .'- Anolis'."\n" .'- CentOS'."\n" .'- Ubuntu'."\n" .'- CoreOS'."\n" .'- SUSE'."\n" .'- Debian'."\n" .'- OpenSUSE'."\n" .'- FreeBSD'."\n" .'- RedHat'."\n" .'- Kylin'."\n" .'- UOS'."\n" .'- Fedora'."\n" .'- Fedora CoreOS'."\n" .'- CentOS Stream'."\n" .'- AlmaLinux'."\n" .'- Rocky Linux'."\n" .'- Gentoo'."\n" .'- Customized Linux'."\n" .'- Others Linux'."\n" .'- Windows Server 2022'."\n" .'- Windows Server 2019'."\n" .'- Windows Server 2016'."\n" .'- Windows Server 2012'."\n" .'- Windows Server 2008'."\n" .'- Windows Server 2003'."\n" ."\n" .'Default value: Others Linux.', 'type' => 'string', 'required' => false, 'example' => 'CentOS', 'title' => ''], ], [ 'name' => 'BootMode', 'in' => 'query', 'schema' => [ 'description' => 'The boot mode of the image. Valid values:'."\n" ."\n" .'- BIOS: BIOS boot mode.'."\n" .'- UEFI: UEFI boot mode.'."\n" .'- (Default) UEFI-Preferred: dual boot mode. '."\n" ."\n" .''."\n" ."\n" .'To prevent instances from failing to start due to an unsupported boot mode, make sure that you understand the boot modes supported by the target image before specifying this parameter. For more information about image boot modes, see [Image boot modes](~~2244655#b9caa9b8bb1wf~~).'."\n" ."\n" .'', 'enumValueTitles' => ['BIOS' => 'BIOS', 'UEFI' => 'UEFI', 'UEFI-Preferred' => 'UEFI-Preferred'], 'type' => 'string', 'required' => false, 'example' => 'BIOS', 'title' => '', ], ], [ 'name' => 'Architecture', 'in' => 'query', 'schema' => ['description' => 'The system architecture. After a data disk snapshot is specified as the system disk of the image, use this parameter to specify the system architecture of the system disk. Valid values:'."\n" ."\n" .'- i386.'."\n" .'- x86_64.'."\n" .'- arm64.'."\n" ."\n" .'Default value: x86_64.', 'type' => 'string', 'required' => false, 'example' => 'x86_64', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the custom image belongs. If this parameter is not set, the created image belongs to the default resource group.'."\n" ."\n" .'> If you invoke this operation as a Resource Access Management (RAM) user and `ResourceGroupId` is left empty, note that when the RAM user does not have permissions on the default resource group, the error message `Forbidden: User not authorized to operate on the specified resource` is returned. Set a resource group ID that the RAM user has permissions on, or grant the RAM user permissions on the default resource group before invoking this operation again.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DiskDeviceMapping', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The disk and snapshot information used to create the custom image. Use this parameter to specify snapshots when you want to create a custom image from system disk and data disk snapshots.', 'type' => 'array', 'items' => [ 'description' => 'The disk and snapshot used to create the custom image.', 'type' => 'object', 'properties' => [ 'SnapshotId' => ['description' => 'The snapshot ID.', 'type' => 'string', 'required' => false, 'example' => 's-bp17441ohwkdca0****', 'title' => ''], 'Size' => ['description' => 'The size of the disk, in GiB. The valid values and default value of DiskDeviceMapping.N.Size depend on DiskDeviceMapping.N.SnapshotId:'."\n" ."\n" .'- If SnapshotId is not specified, the valid values and default value of Size are:'."\n" .' - Basic disk: 5 to 2000 GiB. Default value: 5.'."\n" .' - Other disk types: 20 to 32768 GiB. Default value: 20.'."\n" .'- If SnapshotId is specified, the value of Size must be greater than or equal to the size of the snapshot. Default value: the size of the snapshot.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2000', 'title' => ''], 'Device' => ['description' => 'The device name in the custom image. Valid values:'."\n" ."\n" .'- The device name of the system disk must be /dev/xvda.'."\n" ."\n" .'- Data disk device names are sequentially ordered from /dev/xvdb to /dev/xvdz and cannot be duplicated.', 'type' => 'string', 'required' => false, 'example' => '/dev/xvdb', 'title' => ''], 'DiskType' => ['description' => 'The type of the disk in the new image. You can use this parameter to specify a data disk snapshot as the system disk of the image. If this parameter is not specified, the disk type defaults to the type of the disk corresponding to the snapshot. Valid values:'."\n" ."\n" .'- system: system disk. Only one system disk snapshot can be specified.'."\n" .'- data: data disk. Up to 16 data disk snapshots can be specified.', 'type' => 'string', 'required' => false, 'example' => 'system', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 17, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the image.'."\n" ."\n" .'> For better compatibility, use Tag.N.Key instead.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Key' => ['description' => 'The tag key of the image. Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'KeyTest', 'title' => ''], 'Value' => ['description' => 'The tag value of the image. Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters in length and cannot start with `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'ValueTest', 'title' => ''], 'value' => ['description' => 'The tag value of the image.'."\n" ."\n" .'> For better compatibility, use Tag.N.Value instead.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'DetectionStrategy', 'in' => 'query', 'schema' => ['description' => 'The image detection strategy. If this parameter is not specified, detection is not triggered. Only the Standard detection mode is supported. '."\n" ."\n" .'> Most Linux and Windows versions are supported. For more information about image detection items and operating system limitations, see [Image detection overview](~~439819~~) and [Operating system limitations for image detection](~~475800~~).', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'Features', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The image feature properties.', 'type' => 'object', 'properties' => [ 'ImdsSupport' => ['description' => 'The metadata access mode of the image. Valid values:'."\n" .'- v1: When you create an ECS instance from this image, you cannot set the metadata access mode to "security hardening mode only".'."\n" .'- v2: When you create an ECS instance from this image, you can set the metadata access mode to "security hardening mode only".'."\n" ."\n" .'Default value: When creating an image from a snapshot, the default is v1. When creating an image from an instance, the default is the ImdsSupport value of the image used when the instance was created.', 'type' => 'string', 'required' => false, 'example' => 'v2', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'example' => 'm-bp146shijn7hujku****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C8B26B44-0189-443E-9816-*******', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidImageName.Malformed', 'errorMessage' => 'The specified Image name is wrongly formed.', 'description' => 'The specified image name is invalid. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It cannot contain http:// or https://.'], ['errorCode' => 'InvalidImageName.Duplicated', 'errorMessage' => 'The specified image name is already in use.', 'description' => 'The specified image name is already in use.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified description is wrongly formed.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ['errorCode' => 'InvalidImageVersion.Malformed', 'errorMessage' => 'The specified ImageVersion is wrongly formed.', 'description' => 'The specified image version is invalid, or you are not authorized to use the snapshot.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the instance does not support this operation.', 'description' => 'The instance is in a state that does not support the current operation.'], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The specified operation is denied as your instance is locked for security reasons.', 'description' => ''], ['errorCode' => 'InvalidDevice.Malformed', 'errorMessage' => 'The specified parameter DiskDeviceMapping.n.Device is not valid.', 'description' => 'The specified DiskDeviceMapping.N.Device parameter is invalid.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter SnapshotId or InstanceId or DiskDeviceMapping that is mandatory for processing this request is not supplied.', 'description' => 'The SnapshotId, InstanceId, and DiskDeviceMapping parameters are required.'], ['errorCode' => 'InvalidSize.ValueNotSupported', 'errorMessage' => 'The specified parameter DiskDeviceMapping.n.Size beyond the permitted range.', 'description' => 'The specified DiskDeviceMapping.N.Size parameter is out of range.'], ['errorCode' => 'InvalidDevice.InUse', 'errorMessage' => 'The specified parameter DiskDeviceMapping.n.Device has been occupied.', 'description' => 'Device names specified in the DiskDeviceMapping.N.Device value are already in use.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified parameter DiskDeviceMapping.n.SnapshotId does not contain system disk snapshot.', 'description' => 'The specified DiskDeviceMapping.N.SnapshotID parameter does not contain a system disk snapshot ID.'], ['errorCode' => 'InvalidDiskCategory.CreateImage', 'errorMessage' => 'The specified diskCategory is not allowed to create image.', 'description' => 'Disks of the specified category cannot be used to create custom images.'], ['errorCode' => 'InvalidArchitecture.Malformed', 'errorMessage' => 'The specified Architecture is wrongly formed.', 'description' => 'The specified Architecture parameter is invalid.'], ['errorCode' => 'InvalidPlatform.Malformed', 'errorMessage' => 'The specified Platform is wrongly formed.', 'description' => 'The specified platform is invalid.'], ['errorCode' => 'InvalidParameter.AllEmpty', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.DiskType', 'errorMessage' => 'The specified disk type which has kms key can\'t convert to system disk.', 'description' => ''], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidInstance.NotFoundSystemDisk', 'errorMessage' => 'The specified instance does not have system disk.', 'description' => ''], ['errorCode' => 'InvalidImageFamily.Malformed', 'errorMessage' => 'The format of the specified image family is invalid.', 'description' => 'The format of the specified image family is invalid.'], ['errorCode' => 'ImageQuotaExceed.ImageFamily', 'errorMessage' => 'The specified image family exceeds the maximum number of images for one image family.', 'description' => ''], ['errorCode' => 'ImageFamilyQuotaExceed', 'errorMessage' => 'The number of image families exceeds the limit in the region.', 'description' => ''], ['errorCode' => 'InvalidDiskType.ValueNotSupported', 'errorMessage' => 'The specified disk type is not supported.', 'description' => 'The specified disk type is not supported.'], ['errorCode' => 'IdempotenceParamNotMatch', 'errorMessage' => 'Request uses a client token in a previous request but is not identical to that request.', 'description' => 'This request and the previous request contain the same client token but different other parameters.'], ['errorCode' => 'InvalidBootMode.NotSupport', 'errorMessage' => 'The specified parameter BootMode is not supported for current image architecture.', 'description' => 'The current image architecture does not support setting this boot mode.'], ['errorCode' => 'InvalidParameter.FeaturesImdsSupport', 'errorMessage' => 'The specified parameter Features.ImdsSupport is not supported.', 'description' => 'The specified parameter Features.ImdsSupport is not supported.'], ['errorCode' => 'InvalidOperation.DiskCategoryUnsupported', 'errorMessage' => 'The current category of the disk does not support this operation.', 'description' => 'The disk type does not support the current operation.'], ['errorCode' => 'AccountForbidden.CreateOrder', 'errorMessage' => 'Order cannot be created due to abnormal account.', 'description' => 'The current account is not allowed to create orders.'], ['errorCode' => 'InvalidBootMode.Malformed', 'errorMessage' => 'The specified parameter BootMode is invalid. Valid options are BIOS, UEFI, and UEFI-Preferred.', 'description' => 'The specified parameter BootMode is invalid. Valid options are BIOS, UEFI, and UEFI-Preferred.'], ['errorCode' => 'InvalidDetectionStrategy.Malformed', 'errorMessage' => 'The specified value for parameter DetectionStrategy is not supported. Please refer to the documentation for accepted values.', 'description' => 'The specified DetectionStrategy parameter value is not supported. Refer to the documentation for acceptable values.'], ['errorCode' => 'InvalidParameter.SecureBootSupport', 'errorMessage' => 'The specified parameter SecureBootOptions.SecureBootSupport is not valid.', 'description' => 'The specified parameter SecureBootOptions.SecureBootSupport is not valid.'], ], 403 => [ ['errorCode' => 'IncorrectDiskStatus.NeverAttached', 'errorMessage' => 'The specified disk has never been attached to instance.', 'description' => ''], ['errorCode' => 'InvalidSnapshotId.NotReady', 'errorMessage' => 'The current status of the DiskDeviceMapping.n.SnapshotId or SnapshotId does not support this operation.', 'description' => 'The current disk has a snapshot being created, please try again later.'], ['errorCode' => 'InvalidSnapshot.TooOld', 'errorMessage' => 'This operation is denied because the specified snapshot by DiskDeviceMapping.n.SnapshotId or SnapshotId is created before 2013-07-15.', 'description' => 'The operation is denied because the snapshot specified by the DiskDeviceMapping.N.SnapshotId or SnapshotId parameter was created before July 15, 2013.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified snapshot is not allowed to create image.', 'description' => 'The specified snapshot cannot be used to create images.'], ['errorCode' => 'QuotaExceed.Image', 'errorMessage' => 'The Image Quota exceeds.', 'description' => ''], ['errorCode' => 'InvalidParamter.Conflict', 'errorMessage' => 'The specified same token is trying to make requests with different parameters.', 'description' => 'The same token is used to make requests that contain different parameters.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.SnapshotServiceUnavailable', 'errorMessage' => 'Snapshot service has not been opened yet.', 'description' => 'The operation is not supported while the snapshot service is not activated.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in the white list of create image by data disk snapshot.', 'description' => 'You are not authorized to create an image based on data disk snapshots. Try again when you are authorized to do so.'], ['errorCode' => 'IncorrectDiskStatus.Invalid', 'errorMessage' => 'Device status is invalid, please restart instance and try again.', 'description' => 'The device is in an invalid state. Restart the instance and try again.'], ['errorCode' => 'OperationDenied.InvalidSnapshotCategory', 'errorMessage' => '%s', 'description' => 'This type of snapshot does not support the operation.'], ['errorCode' => 'QuotaExceed.Snapshot', 'errorMessage' => 'The snapshot quota exceeds.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.Transferring', 'errorMessage' => 'The specified device is transferring, you can retry after the process is finished.', 'description' => 'The specified disk is being migrated. Wait until the migration is complete and try again.'], ['errorCode' => 'IncorrectDiskStatus', 'errorMessage' => 'The current disk status does not support this operation.', 'description' => ''], ['errorCode' => 'InvalidSystemSnapshot.Missing', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.CreatingSnapshot', 'errorMessage' => 'A previous snapshot creation is in process.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK needs to be added ECS tag.', 'description' => 'ECS does not have the permission to encrypt or decrypt your CMK.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK needs to be enabled.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidSnapshotCategory.NotSupportImageCreation', 'errorMessage' => 'The specified snapshot category does not support create image.', 'description' => ''], ['errorCode' => 'TooManySnapshot.Unfinished', 'errorMessage' => 'There are too many snapshots being created, please wait for them to be created done.', 'description' => ''], ['errorCode' => 'HibernationConfigured.InstanceOperationForbidden', 'errorMessage' => 'The operation is not permitted due to limit of the hibernation configured instance.', 'description' => 'The operation cannot be performed due to the limitations of instances for which the instance hibernation feature is enabled.'], ['errorCode' => 'SnapshotNotReady', 'errorMessage' => 'The specified snapshot is not ready.', 'description' => 'The specified snapshot is being created and cannot be used to create images.'], ['errorCode' => 'IncorrectInstanceStatus.NeedRestart', 'errorMessage' => 'The instance needs to be restarted after adding a disk in a shutdown status.', 'description' => 'If you have attached disks to an instance in the Stopped state, you must start the instance before you can create a custom image from the instance.'], ['errorCode' => 'QuotaExceed.ConcurrentSnapshotQuota', 'errorMessage' => 'The number of snapshots being created for the disk %s has exceeded the concurrent quota (%s). Please wait for the previous snapshots to complete before trying again.', 'description' => 'The number of snapshots being created for this disk has exceeded the concurrent quota. Please wait for the previous snapshots to complete before trying again.'], ['errorCode' => 'InvalidOperation.SnapshotStorageLocationUnsupported', 'errorMessage' => 'Snapshots with storage location in CloudBox do not support the current operation.', 'description' => 'The snapshot of the storage location in the CloudBox does not support the current operation.'], ['errorCode' => 'AccountEnterpriseStatusInvalid', 'errorMessage' => 'Your enterprise registration is marked as revoked/deregistered in the National Enterprise Credit Information Publicity System. Account transaction features (purchase/renewal/recharge) are disabled. Please update real-name certification via Account Center. Restrictions will auto-remove after verification.', 'description' => 'The registration status of your enterprise has been canceled (or revoked) in the national enterprise credit information publicity system, and your account will not be able to carry out transaction operations such as new purchase, renewal and recharge of products. Please change the real name authentication through the account center as soon as possible. After the change is completed, Aliyun will automatically lift the purchase restriction.'], ['errorCode' => 'InvalidOperation.DefaultFreeSnapshotNotSupport', 'errorMessage' => 'The specified snapshot is a default free snapshot and does not support this operation.', 'description' => 'The specified snapshot is a default free snapshot and does not support the current operation.'], ], [ ['errorCode' => 'InvalidSnapshotId.NotFound', 'errorMessage' => 'The specified SnapshotId does not exist.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified instance %s does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The process of creating snapshot has failed due to some unknown error.', 'description' => 'The snapshot cannot be created.'], ], ], 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Create a custom image', 'summary' => 'Creates a custom image. You can use the created custom image to create ECS instances (RunInstances) or replace the system disk of an instance (ReplaceSystemDisk).', 'description' => '### Before you begin'."\n" ."\n" .'- This is an asynchronous operation. After a request to create a custom image is sent, the image ID is returned. However, the image creation is not immediately complete. Call [DescribeImage](~~2679797~~) to query the image information. When the status in the response is `Available`, the image is created and ready for use. For more information, see [Custom image overview](~~172789~~).'."\n" ."\n" .'- When you query ECS instance information, if the response contains {"OperationLocks": {"LockReason" : "security"}}, you cannot create a custom image.'."\n" ."\n" .'- Configure the image detection parameter `DetectionStrategy` when creating an image to help the system optimize your image. For more information, see [Image detection overview](~~439819~~).'."\n" ."\n" .'The following describes three methods to create a custom image by calling this operation. The priority of request parameters is: InstanceId > DiskDeviceMapping > SnapshotId. If your request contains two or more of these parameters, the image is created based on the parameter with the highest priority.'."\n" ."\n" .'- **Create a custom image from an instance**: Specify the instance ID (`InstanceId`).'."\n" .' - The instance must be in the Running (`Running`) or Stopped (`Stopped`) state.'."\n" .' - After the operation is called, a new snapshot is created for each disk of the instance.'."\n" ."\n" .' >Because a running instance may have cached data that has not been written to disks, the data of the created custom image may be inconsistent with the instance data. Stop the instance ([StopInstances](~~155372~~)) before creating the image.>'."\n" ."\n" .'- **Create a custom image from a snapshot (the specified snapshot cannot be one created on or before July 15, 2013.)**'."\n" .' - **Create a custom image from a system disk snapshot**: Specify only the snapshot ID of the instance system disk (`SnapshotId`).'."\n" .' - **Create a custom image from system disk and data disk snapshots**: Establish data associations among multiple disks (`DiskDeviceMapping`).'."\n" .' - Only one system disk snapshot can be specified. '."\n" .' - You can specify multiple data disk snapshots, up to a maximum of 16. If `DiskDeviceMapping.N.SnapshotId` is not specified, an empty data disk with the default capacity is created. '."\n" .' '."\n" .'> When an instance is released, the system disk is retained as a pay-as-you-go data disk. Snapshots created from this disk do not support creating custom images. Create a custom image before releasing the instance as needed.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-10T03:35:04.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-07-07T09:10:30.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-06-17T03:03:35.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-06-09T07:21:56.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-04-29T06:23:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-27T06:39:45.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-16T05:31:55.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-05T05:48:16.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-10-22T02:39:43.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-06-12T01:38:00.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-05-09T06:14:12.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-11-24T11:47:06.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-11-18T01:58:05.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-11-03T04:01:52.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2022-03-06T07:39:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-17T08:45:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateImage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateImage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/{#snapshotId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ImageId\\": \\"m-bp146shijn7hujku****\\",\\n \\"RequestId\\": \\"C8B26B44-0189-443E-9816-*******\\"\\n}","type":"json"}]', ], 'CreateImageComponent' => [ 'summary' => 'Creates an image component. Image components are used to store commonly used build template commands for image building.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29251', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the enterprise resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the tag. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with aliyun or acs:. The tag key cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of the tag. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with acs:. The tag value cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The component name. The name must be 2 to 128 characters in length and must start with a letter or a Chinese character. The name cannot start with http:// or https://. The name can contain letters, Chinese characters, digits, colons (:), underscores (_), periods (.), or hyphens (-).'."\n" ."\n" .'> If you do not specify `Name`, the `ImageComponentId` return value is used by default.', 'type' => 'string', 'required' => false, 'example' => 'testComponent', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description. The description must be 2 to 256 characters in length and cannot start with http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'SystemType', 'in' => 'query', 'schema' => ['description' => 'The operating system supported by the component.'."\n" ."\n" .'Valid values:'."\n" .'- Linux'."\n" .'- Windows'."\n" ."\n" .'Default value: Linux.', 'type' => 'string', 'required' => false, 'example' => 'Linux', 'title' => ''], ], [ 'name' => 'ComponentType', 'in' => 'query', 'schema' => ['description' => 'The component type. Image build components and test components are supported.'."\n" ."\n" .'Valid values:'."\n" .'- Build'."\n" .'- Test'."\n" ."\n" .'Default value: Build.'."\n" .'> Build components can be used only in build templates, and test components can be used only in test templates.', 'type' => 'string', 'required' => false, 'example' => 'Build', 'title' => ''], ], [ 'name' => 'Content', 'in' => 'query', 'schema' => ['description' => 'The component content. The content consists of multiple commands and cannot exceed 16 KB. For more information about supported commands and command formats, see [Commands supported by Image Builder](~~200206~~).', 'type' => 'string', 'required' => false, 'example' => 'Tasks:'."\n" .' - Name: HelloWorld'."\n" .' Action: RunShellCommand'."\n" .' Properties:'."\n" .' commandContent: echo hello world', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The value of **ClientToken** can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'ComponentVersion', 'in' => 'query', 'schema' => ['description' => 'The component version number. This parameter is used together with the component name. The format is major.minor.patch, where all values are non-negative integers.'."\n" ."\n" .'Default value: (x+1).0.0, where x is the current maximum major version number of the component.', 'type' => 'string', 'required' => false, 'example' => '1.0.0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ImageComponentId' => ['description' => 'The image component ID.', 'type' => 'string', 'example' => 'ic-bp67acfmxazb4p****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidCommand.Component', 'errorMessage' => 'Image component does not support component command.', 'description' => ''], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSystemType.NotSupportedValue', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidComponentType.NotSupportedValue', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidContent.LengthExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageTemplateCommandSize.ExceededMaxNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageTemplateCommand.NotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.RUN', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.ENV', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.WORKDIR', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.COPY', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.USER', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.CMD', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.ENTRYPOINT', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'MissingParameter.Content', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'EmptyCommandContent.RUN', 'errorMessage' => '%s.', 'description' => 'If the RUN command exists in the template, you must specify RUN.'], ['errorCode' => 'EmptyCommandContent.ENV', 'errorMessage' => '%s.', 'description' => 'If the ENV command exists in the template, you must specify ENV.'], ['errorCode' => 'EmptyCommandContent.LABEL', 'errorMessage' => '%s.', 'description' => 'If the LABEL command exists in the template, you must specify LABEL.'], ['errorCode' => 'EmptyCommandContent.COPY', 'errorMessage' => '%s.', 'description' => 'If the COPY command exists in the template, you must specify COPY.'], ['errorCode' => 'EmptyCommandContent.ENTRYPOINT', 'errorMessage' => '%s.', 'description' => 'If the ENTRYPOINT command exists in the template, you must specify ENTRYPOINT.'], ['errorCode' => 'EmptyCommandContent.CMD', 'errorMessage' => '%s.', 'description' => 'If the CMD command exists in the template, you must specify CMD.'], ['errorCode' => 'NotEmptyCommandContent.RESTART', 'errorMessage' => '%s.', 'description' => 'If the RESTART command exists in the template, you must specify RESTART.'], ['errorCode' => 'EmptyCommandContent.WORKDIR', 'errorMessage' => '%s.', 'description' => 'If the WORKDIR command exists in the template, you must specify WORKDIR.'], ['errorCode' => 'EmptyCommandContent.USER', 'errorMessage' => '%s.', 'description' => 'If the USER command exists in the template, you must specify USER.'], ['errorCode' => 'QuotaExceed.ImageComponent', 'errorMessage' => '%s.', 'description' => 'Image component quota exceeded in current region.'], ['errorCode' => 'InvalidParameter.Content', 'errorMessage' => '%s.', 'description' => 'The image component content is invalid.'], ['errorCode' => 'InvalidImage.OsTypeUnsupported', 'errorMessage' => 'The specified base image does not support image building.', 'description' => ''], ['errorCode' => 'InvalidParameter.ComponentVersion', 'errorMessage' => 'The specified ComponentVersion is invalid.', 'description' => 'The specified ComponentVersion is invalid.'], ], 403 => [ ['errorCode' => 'InvalidComponentVersion.Exist', 'errorMessage' => 'The specified ComponentVersion does exist with the specified Name.', 'description' => 'The specified ComponentVersion does exist with the specified Name.'], ['errorCode' => 'InvalidOperation.NoPermissionCreateServiceLinkedRole', 'errorMessage' => 'You are not authorized to create Service-linked role. The system will automatically create it when the API is called for the first time. Check your RAM policies, and ensure that you are using the correct credentials.', 'description' => 'You are not authorized to create Service-linked role. The system will automatically create it when the API is called for the first time. Check your RAM policies, and ensure that you are using the correct credentials.'], ], [ ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'NotSupportedCommand.FROM', 'errorMessage' => '%s', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ImageComponentId\\": \\"ic-bp67acfmxazb4p****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Create an image component', 'description' => '## Operation description'."\n" ."\n" .'Before you create an image component, take note of the following items:'."\n" ."\n" .'- Only custom image components can be created.'."\n" .'- Component version numbers must be unique for the same component name. When using a component in a template, you can reference it by name and version number.'."\n" .'- The content size of an image component cannot exceed 16 KB. For details about supported commands, see [Commands supported by Image Builder](~~200206~~).'."\n" ."\n" .'For more information, see [Image Builder overview](~~197410~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-12-26T05:32:47.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-10T06:14:46.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2023-03-28T08:07:44.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateImageComponent'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateImageComponent', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImageComponent', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagecomponent/*'], ], ], ], ], ], 'CreateImagePipeline' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '65905', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the image pipeline.', 'type' => 'array', 'items' => [ 'description' => 'A list of tags.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N, where N is from 1 to 20. The tag key must be 1 to 128 characters in length. It cannot start with `aliyun` or `acs:` or contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N, where N is from 1 to 20. The tag value can be empty or up to 128 characters long. It cannot start with `acs:` or contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call the [DescribeRegions](~~25609~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'AddAccount', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the Alibaba Cloud accounts to share the destination images with. You can specify up to 20 account IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of an Alibaba Cloud account to share the destination images with.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1234567890', 'title' => ''], 'required' => false, 'example' => '1234567890', 'maxItems' => 21, 'title' => '', ], ], [ 'name' => 'ToRegionId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of destination regions for image distribution. You can specify up to 20 region IDs.'."\n" ."\n" .'If you do not specify this parameter, the images are created only in the current region.', 'type' => 'array', 'items' => ['description' => 'The ID of a destination region for image distribution.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], 'required' => false, 'example' => 'cn-hangzhou', 'maxItems' => 21, 'title' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call the [DescribeRegions](~~25609~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'BaseImageType', 'in' => 'query', 'schema' => ['description' => 'The type of the base image. Valid values:'."\n" ."\n" .'- IMAGE: An ECS image.'."\n" ."\n" .'- IMAGE\\_FAMILY: An image family.'."\n" ."\n" .'- OSS: An OSS object.', 'type' => 'string', 'required' => true, 'example' => 'IMAGE', 'title' => ''], ], [ 'name' => 'BaseImage', 'in' => 'query', 'schema' => ['description' => 'The base image. The value of this parameter varies based on the value of `BaseImageType`:'."\n" ."\n" .'- If `BaseImageType` is `IMAGE`, specify the ID of the base image.'."\n" ."\n" .'- If `BaseImageType` is `IMAGE_FAMILY`, specify the name of the base image family.'."\n" ."\n" .'- If `BaseImageType` is `OSS`, this parameter is not required.', 'type' => 'string', 'required' => false, 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the image pipeline. It must be 2 to 128 characters long, start with a letter or a Chinese character, and cannot start with `http://` or `https://`. Allowed characters include letters, digits, Chinese characters, colons (:), underscores (\\_), periods (.), and hyphens (-).'."\n" ."\n" .'> If you do not specify this parameter, the value of `ImagePipelineId` is used as the name.', 'type' => 'string', 'required' => false, 'example' => 'testImagePipeline', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the image pipeline template. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'ImageName', 'in' => 'query', 'schema' => ['description' => 'The prefix of the destination image name.'."\n" .'>This parameter is deprecated. Use `ImageOptions.ImageName` instead.>', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'testImageName', 'title' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VSwitch in the VPC that is used to launch the intermediate instance.'."\n" ."\n" .'If you do not specify this parameter, a new VPC and VSwitch are created. Ensure that you have a sufficient quota of VPC resources. For more information, see [Usage limits](~~27750~~).', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type of the intermediate instance. You can call the [DescribeInstanceTypes](~~25620~~) operation to query instance types.'."\n" ."\n" .'If you do not specify this parameter, the system automatically selects an instance type with the minimum vCPUs and memory, subject to inventory. For example, `ecs.g6.large` is selected by default. If `ecs.g6.large` is out of stock, `ecs.g6.xlarge` is selected.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large', 'title' => ''], ], [ 'name' => 'SystemDiskSize', 'in' => 'query', 'schema' => ['description' => 'The size of the system disk of the intermediate instance. Unit: GiB. Valid values: 20 to 500.'."\n" ."\n" .'Default value: 40.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '40', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthOut', 'in' => 'query', 'schema' => ['description' => 'The outbound public bandwidth of the intermediate instance. Unit: Mbit/s. Valid values: 0 to 100.'."\n" ."\n" .'Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'DeleteInstanceOnFailure', 'in' => 'query', 'schema' => ['description' => 'Determines whether to release the intermediate instance when the image build fails. Valid values:'."\n" ."\n" .'- true: The instance is released.'."\n" ."\n" .'- false: The instance is not released.'."\n" ."\n" .'Default value: true.'."\n" ."\n" .'> If an intermediate instance cannot be started, it is not retained by default.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'BuildContent', 'in' => 'query', 'schema' => ['description' => 'The content of the image build template. The content can be up to 16 KB in size. For more information about the supported commands, see [Command reference for Image Builder](~~200206~~).', 'type' => 'string', 'required' => false, 'example' => 'COMPONENT ic-bp12dvdzvr9k9*****'."\n" .'COMPONENT acs:ecs:cn-hangzhou:18689161186*****:imagecomponent/ComponentName/1.*.*', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated, globally unique token to ensure the idempotence of the request. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'RepairMode', 'in' => 'query', 'schema' => ['description' => 'The image repair mode in the image template.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Standard: The standard mode.'."\n" ."\n" .' The check items for Linux systems include the following:'."\n" ."\n" .' - GUESTOS.CloudInit'."\n" ."\n" .' - GUESTOS.Dhcp'."\n" ."\n" .' - GUESTOS.Virtio'."\n" ."\n" .' - GUESTOS.OnlineResizeFS'."\n" ."\n" .' - GUESTOS.Grub'."\n" ."\n" .' - GUESTOS.Fstab'."\n" ."\n" .' The check items for Windows systems include the following:'."\n" ."\n" .' - GUESTOS.Virtio'."\n" ."\n" .' - GUESTOS.Update'."\n" ."\n" .' - GUESTOS.Hotfix'."\n" ."\n" .' - GUESTOS.Server'."\n" ."\n" .'> The repair items may change as the check and repair capabilities are improved. For more information about each repair item, see [Image check overview](~~439819~~).', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'ImageFamily', 'in' => 'query', 'schema' => ['description' => 'The name of the destination image family.'."\n" .'>This parameter is deprecated. Use `ImageOptions.ImageFamily` instead.>', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'family', 'title' => ''], ], [ 'name' => 'TestContent', 'in' => 'query', 'schema' => ['description' => 'The content of the image test template. The content can be up to 16 KB in size. For more information about the supported commands, see [Command reference for Image Builder](~~200206~~).', 'type' => 'string', 'required' => false, 'example' => 'COMPONENT ic-bp12dvdzvr9k9*****'."\n" .'COMPONENT acs:ecs:cn-hangzhou:18689161186*****:imagecomponent/ComponentName/1.*.*', 'title' => ''], ], [ 'name' => 'ImportImageOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The settings for importing an image. This parameter is required when `BaseImageType` is set to `OSS`.', 'type' => 'object', 'properties' => [ 'Architecture' => ['description' => 'The architecture of the image to import. Valid values:'."\n" ."\n" .'- x86\\_64'."\n" ."\n" .'- arm64'."\n" ."\n" .'Default value: x86\\_64.', 'type' => 'string', 'required' => false, 'example' => 'x86_64', 'title' => ''], 'OSType' => ['description' => 'The type of the operating system. Valid values:'."\n" ."\n" .'- windows'."\n" ."\n" .'- linux'."\n" ."\n" .'Default value: linux.', 'type' => 'string', 'required' => false, 'example' => 'linux', 'title' => ''], 'Platform' => ['description' => 'The operating system distribution. Valid values:'."\n" ."\n" .'- Aliyun'."\n" ."\n" .'- Anolis'."\n" ."\n" .'- CentOS'."\n" ."\n" .'- Ubuntu'."\n" ."\n" .'- CoreOS'."\n" ."\n" .'- SUSE'."\n" ."\n" .'- Debian'."\n" ."\n" .'- OpenSUSE'."\n" ."\n" .'- FreeBSD'."\n" ."\n" .'- RedHat'."\n" ."\n" .'- Kylin'."\n" ."\n" .'- UOS'."\n" ."\n" .'- Fedora'."\n" ."\n" .'- Fedora CoreOS'."\n" ."\n" .'- CentOS Stream'."\n" ."\n" .'- AlmaLinux'."\n" ."\n" .'- Rocky Linux'."\n" ."\n" .'- Gentoo'."\n" ."\n" .'- Customized Linux'."\n" ."\n" .'- Others Linux'."\n" ."\n" .'- Windows Server 2022'."\n" ."\n" .'- Windows Server 2019'."\n" ."\n" .'- Windows Server 2016'."\n" ."\n" .'- Windows Server 2012'."\n" ."\n" .'- Windows Server 2008'."\n" ."\n" .'- Windows Server 2003'."\n" ."\n" .'- Other Windows'."\n" ."\n" .'Default value: Others Linux if OSType is set to Linux, or Other Windows if OSType is set to Windows.', 'type' => 'string', 'required' => false, 'example' => 'Aliyun', 'title' => ''], 'BootMode' => ['description' => 'The boot mode of the image. Valid values:'."\n" ."\n" .'- BIOS: BIOS boot mode.'."\n" ."\n" .'- UEFI: UEFI boot mode.'."\n" ."\n" .'Default value: BIOS. If `Architecture` is set to `arm64`, the default value is UEFI and this parameter can be set only to UEFI.'."\n" ."\n" .'>'."\n" ."\n" .'To prevent startup failures, ensure the boot mode is supported by the image.'."\n" ."\n" .'>', 'type' => 'string', 'required' => false, 'example' => 'BIOS', 'title' => ''], 'LicenseType' => ['description' => 'The license type used to activate the operating system after the image is imported. Valid values:'."\n" ."\n" .'- Auto: Alibaba Cloud attempts to assign a license based on the detected operating system. If an official Alibaba Cloud license for the specified `Platform` is unavailable, the system defaults to BYOL.'."\n" ."\n" .'- Aliyun: A license from an official Alibaba Cloud channel is used based on the specified `Platform`.'."\n" ."\n" .'- BYOL: The license that comes with the base operating system is used. When you use the BYOL mode, you must make sure that your license key is supported in Alibaba Cloud.'."\n" ."\n" .'Default value: Auto.', 'type' => 'string', 'required' => false, 'example' => 'Auto', 'title' => ''], 'DiskDeviceMappings' => [ 'description' => 'The information about the disks of the custom image.'."\n" ."\n" .'- When N is 1, the disk is a system disk.'."\n" ."\n" .'- When N is a value from 2 to 17, the disk is a data disk.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'OSSBucket' => ['description' => 'The OSS bucket that contains the image file.', 'type' => 'string', 'required' => false, 'example' => 'ecsimageos', 'title' => ''], 'OSSObject' => ['description' => 'The name (key) of the image file that is stored in the OSS bucket.', 'type' => 'string', 'required' => false, 'example' => 'CentOS_5.4_32.raw', 'title' => ''], 'Format' => ['description' => 'The format of the image. Valid values:'."\n" ."\n" .'- RAW'."\n" ."\n" .'- VHD'."\n" ."\n" .'- QCOW2'."\n" ."\n" .'Default value: If left empty, the system automatically detects the image format.', 'type' => 'string', 'required' => false, 'example' => 'RAW', 'title' => ''], 'DiskImageSize' => ['description' => 'The size of the disk to create from the image file, in GiB. For the system disk, this value must be greater than or equal to the size of the image file.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- When N is 1, the disk is the system disk. The size of the system disk can range from 1 GiB to 2,048 GiB.'."\n" ."\n" .'- When N is a value from 2 to 17, the disk is a data disk. The size of a data disk can range from 1 GiB to 2,048 GiB.'."\n" ."\n" .'After you upload the base image file to an OSS bucket, you can view the size of the image file in the bucket.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '40', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], 'Features' => [ 'description' => 'The image feature attributes.', 'type' => 'object', 'properties' => [ 'NvmeSupport' => ['description' => 'Specifies whether the base image to be imported supports NVMe. Valid values:'."\n" ."\n" .'- supported: Instances created from this image support the NVMe protocol.'."\n" ."\n" .'- unsupported: Instances created from this image do not support the NVMe protocol.'."\n" ."\n" .'Default value: unsupported.', 'type' => 'string', 'required' => false, 'example' => 'supported', 'title' => ''], 'ImdsSupport' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'RetainImportedImage' => ['description' => '> This parameter is in invitational preview.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'RetentionStrategy' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'ImageName' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'Description' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'RoleName' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'ImportImageTags' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'Value' => ['type' => 'string', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'NvmeSupport', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the destination image supports NVMe.'."\n" .'>This parameter is deprecated. Use `ImageOptions.ImageFeatures.NvmeSupport` instead.>', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'auto', 'title' => ''], ], [ 'name' => 'AdvancedOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The advanced settings.', 'type' => 'object', 'properties' => [ 'RetainCloudAssistant' => ['description' => 'Specifies whether to retain Cloud Assistant in the destination image. During the image building process, Cloud Assistant is automatically installed on the intermediate instance to run commands. You can select whether to retain Cloud Assistant after the process is complete. Valid values:'."\n" ."\n" .'- true: Retain Cloud Assistant.'."\n" ."\n" .'- false: Do not retain Cloud Assistant.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This setting does not affect the Cloud Assistant client that is already installed in your image.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'ImageNameSuffix' => ['description' => 'Specifies whether to disable the feature that automatically appends a suffix to the destination image name. Valid values:'."\n" ."\n" .'- disable: Disables the feature.', 'type' => 'string', 'required' => false, 'example' => 'disable', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ImageOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The properties of the destination image.', 'type' => 'object', 'properties' => [ 'ImageName' => ['description' => 'The prefix of the destination image name. The prefix must be 2 to 64 characters in length. It must start with a letter or a Chinese character. It cannot start with `http://` or `https://`. It can contain Chinese characters, letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).'."\n" ."\n" .'The complete image name is automatically generated by concatenating the prefix and the build task ID (`ExecutionId`) in the `{ImageName}_{ExecutionId}` format.', 'type' => 'string', 'required' => false, 'example' => 'testImageName', 'title' => ''], 'ImageFamily' => ['description' => 'The name of the destination image family. The name must be 2 to 128 characters long and start with a letter or a Chinese character. It cannot start with `aliyun` or `acs:` or contain `http://` or `https://`. Allowed characters include letters, digits, Chinese characters, colons (:), underscores (\\_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'family', 'title' => ''], 'Description' => ['description' => 'The description of the destination image. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], 'ImageFeatures' => [ 'description' => 'The feature attributes of the destination image.', 'type' => 'object', 'properties' => [ 'NvmeSupport' => ['description' => 'Specifies whether the destination image supports NVMe. Valid values:'."\n" ."\n" .'- supported: Instances created from this image support the NVMe protocol.'."\n" ."\n" .'- unsupported: Instances created from this image do not support the NVMe protocol.'."\n" ."\n" .'- auto: The system automatically checks whether the NVMe driver is installed on your image. This check is performed before the build phase. If you install or uninstall the NVMe driver during the build, the result may be inaccurate. We recommend that you set this parameter to supported or unsupported based on the build content.', 'type' => 'string', 'required' => false, 'example' => 'auto', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'ImageTags' => [ 'description' => 'The tags of the destination image.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the tag. The tag key must be 1 to 128 characters in length, cannot start with `aliyun` or `acs:`, and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of the tag. The tag value can be empty or up to 128 characters long. It cannot start with `acs:` and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'ImagePipelineId' => ['description' => 'The ID of the image pipeline.', 'type' => 'string', 'example' => 'ip-2ze5tsl5bp6nf2b3****', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidSourceInstance.NotFound', 'errorMessage' => 'The specified source instance is not found.', 'description' => 'The specified source instance is not found.'], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageName.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidBaseImageType.NotSupportedValue', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.NotSupportedValue', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInternetMaxBandwidthOut.NotSupportedValue', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidAddAccountSize.ExceededMaxNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidToRegionIdSize.ExceededMaxNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidBuildContent.LengthExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageTemplateCommandSize.ExceededMaxNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'DuplicatedCommand.FROM', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandOrder.FROM', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageTemplateCommand.NotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.RUN', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.ENV', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.WORKDIR', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.COPY', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.USER', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.FROM', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.CMD', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidCommandContent.ENTRYPOINT', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'QuotaExceed.ImagePipeline', 'errorMessage' => '%s.', 'description' => 'The image template quota of your account in this region is used up.'], ['errorCode' => 'NoPermission', 'errorMessage' => '%s.', 'description' => 'This operation is not allowed. Apply for the permissions required to perform the operation.'], ['errorCode' => 'EmptyCommandContent.LABEL', 'errorMessage' => '%s.', 'description' => 'If the LABEL command exists in the template, you must specify LABEL.'], ['errorCode' => 'EmptyCommandContent.ENV', 'errorMessage' => '%s.', 'description' => 'If the ENV command exists in the template, you must specify ENV.'], ['errorCode' => 'EmptyCommandContent.ENTRYPOINT', 'errorMessage' => '%s.', 'description' => 'If the ENTRYPOINT command exists in the template, you must specify ENTRYPOINT.'], ['errorCode' => 'EmptyCommandContent.CMD', 'errorMessage' => '%s.', 'description' => 'If the CMD command exists in the template, you must specify CMD.'], ['errorCode' => 'EmptyCommandContent.COPY', 'errorMessage' => '%s.', 'description' => 'If the COPY command exists in the template, you must specify COPY.'], ['errorCode' => 'EmptyCommandContent.WORKDIR', 'errorMessage' => '%s.', 'description' => 'If the WORKDIR command exists in the template, you must specify WORKDIR.'], ['errorCode' => 'NotEmptyCommandContent.RESTART', 'errorMessage' => '%s.', 'description' => 'If the RESTART command exists in the template, you must specify RESTART.'], ['errorCode' => 'EmptyCommandContent.USER', 'errorMessage' => '%s.', 'description' => 'If the USER command exists in the template, you must specify USER.'], ['errorCode' => 'EmptyCommandContent.RUN', 'errorMessage' => '%s.', 'description' => 'If the RUN command exists in the template, you must specify RUN.'], ['errorCode' => 'InvalidImage.OsTypeUnsupported', 'errorMessage' => 'The specified base image does not support image building.', 'description' => ''], ['errorCode' => 'InvalidParameter.BuildContent', 'errorMessage' => '%s.', 'description' => 'The build content is invalid.'], ['errorCode' => 'InvalidParameter.TestContent', 'errorMessage' => '%s.', 'description' => 'The test content is invalid.'], ['errorCode' => 'InvalidImageComponent.NotSupported', 'errorMessage' => '%s.', 'description' => 'The specified image component is not available.'], ['errorCode' => 'InvalidParameterCombination', 'errorMessage' => '%s.', 'description' => 'Invalid combination of parameters.'], ['errorCode' => 'InvalidParameter.RepairMode', 'errorMessage' => 'The specified parameter RepairMode is invalid.', 'description' => ''], ['errorCode' => 'InvalidImageFamily.Malformed', 'errorMessage' => 'The format of the specified image family is invalid.', 'description' => 'The format of the specified image family is invalid.'], ['errorCode' => 'InvalidImage.ImageOwnerAliasUnsupported', 'errorMessage' => 'The specified base image does not support distributing.', 'description' => 'The specified base image does not support distributing.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsArchitecture', 'errorMessage' => 'The specified parameter ImportImageOptions.Architecture is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter ImportImageOptionsArchitecture is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsOSType', 'errorMessage' => 'The specified parameter ImportImageOptions.OSType is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter ImportImageOptions.OSType is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsBootMode', 'errorMessage' => 'The specified parameter ImportImageOptions.BootMode is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter ImportImageOptions.BootMode is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidImportImageOptionsDiskDeviceMappings.LengthLimitExceeded', 'errorMessage' => 'The length of the specified parameter ImportImageOptions.DiskDeviceMappings exceeds the limit(17).', 'description' => 'The specified parameter ImportImageOptions.DiskDeviceMappings length exceeds the limit, the maximum length is 17.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsDiskDeviceMappingsOSSObject', 'errorMessage' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSObject is invalid. OSSObject supports up to 1023 characters, and cannot start with http:// or https://.', 'description' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSObject is invalid. OSSObject supports up to 1023 characters, and cannot start with "http://" or "https://".'], ['errorCode' => 'InvalidParameter.ImportImageOptionsDiskDeviceMappingsOSSBucket', 'errorMessage' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSBucket is invalid. OSSBucket supports up to 63 characters, only lowercase letters, numbers, and dashes are allowed, and cannot start or end with a dash.', 'description' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSBucket is invalid. OSSBucket supports up to 63 characters, only lowercase letters, numbers, and dashes are allowed, and cannot start or end with a dash.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsPlatform', 'errorMessage' => 'The specified parameter ImportImageOptions.Platform is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter ImportImageOptions.Platform is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsLicenseType', 'errorMessage' => 'The specified parameter ImportImageOptions.LicenseType is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter ImportImageOptions.LicenseType is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsFeaturesNvmeSupport', 'errorMessage' => 'The specified parameter ImportImageOptions.Features.NvmeSupport is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter ImportImageOptions.Features.NvmeSupport is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidParameter.NvmeSupport', 'errorMessage' => 'The specified parameter NvmeSupport is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter NvmeSupport is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidParameter.ImportImageOptionsDiskDeviceMappingsFormat', 'errorMessage' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.Format is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.Format is invalid. The correct value can refer to the error message or the document to fill in.'], ['errorCode' => 'InvalidOperation.DiskImageSizeExceeded', 'errorMessage' => 'The disk size exceeds the limit. Please check the specified parameter ImportImageOptions.DiskDeviceMappings.DiskImageSize and ImportImageOptions.DiskDeviceMappings.OSSObject. Ensure that each of them is between 1 and 2048 in size.', 'description' => 'The disk size exceeds the limit. Please check the specified parameter ImportImageOptions.DiskDeviceMappings.DiskImageSize and ImportImageOptions.DiskDeviceMappings.OSSObject. Ensure that each of them is between 1 and 2048 in size.'], ['errorCode' => 'InvalidImageOptions.Description', 'errorMessage' => 'The specified parameter ImageOptions.Description is invalid. The length should be between 2 to 256 characters, and cannot start with http:// or https://.', 'description' => 'The specified parameter ImageOptions.Description is invalid. The length should be between 2 to 256 characters, and cannot start with http:// or https://.'], ['errorCode' => 'InvalidImageName.Duplicated', 'errorMessage' => 'The specified image name is already in use in the target region. Please try a different one.', 'description' => 'The specified image name is already in use in the target region. Please try another one.'], ['errorCode' => 'InvalidImage.NotSupportRepair', 'errorMessage' => 'The specified base image does not support repair.', 'description' => 'The specified base image does not support repair.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.N.Key is not valid. Tag keys cannot be empty or null, support up to 128 characters, cannot start with "aliyun" or "acs:", and cannot contain "http://" or "https://".', 'description' => 'The specified Tag.N.Key is not valid. Tag keys cannot be empty or null, support up to 128 characters, cannot start with "aliyun" or "acs:", and cannot contain "http://" or "https://".'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.N.Value is not valid. Tag values support up to 128 characters, and cannot contain "http://" or "https://".', 'description' => 'The specified Tag.N.Value is not valid. Tag values support up to 128 characters, and cannot contain "http://" or "https://".'], ['errorCode' => 'InvalidAdvancedOptions.ImageNameSuffix', 'errorMessage' => 'The specified parameter AdvancedOptions.ImageNameSuffix is invalid. The correct value should be in [%s].', 'description' => 'The specified parameter AdvancedOptions.ImageNameSuffix is invalid. The correct enumeration value can be obtained by referring to the error message.'], ['errorCode' => 'InvalidImportImageOptions.DockerOptionsImageMalformed', 'errorMessage' => 'The specified parameter ImportImageOptions.DockerOptions.Image is invalid. The length should be between 1 to 512 characters.', 'description' => 'The specified parameter ImportImageOptions.DockerOptions.Image is invalid. The length should be between 1 to 512 characters.'], ['errorCode' => 'InvalidImportImageOptions.DockerOptionsImageSizeMalformed', 'errorMessage' => 'The specified parameter ImportImageOptions.DockerOptions.ImageSize is invalid. The size should be between 1GB to 2048GB.', 'description' => 'The specified parameter ImportImageOptions.DockerOptions.ImageSize is invalid. The size should be between 1GB to 2048GB.'], ], 403 => [ ['errorCode' => 'ImagePipeline.NotSupportWindowsInstance', 'errorMessage' => 'Image pipeline does not support windows instance at this time.', 'description' => ''], ['errorCode' => 'InvalidOSSObject.NotAuthorized', 'errorMessage' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is not allowed to be accessed.', 'description' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is not allowed to be accessed.'], ['errorCode' => 'InvalidOperation.NoPermissionCreateServiceLinkedRole', 'errorMessage' => 'You are not authorized to create Service-linked role. The system will automatically create it when the API is called for the first time. Check your RAM policies, and ensure that you are using the correct credentials.', 'description' => 'You are not authorized to create Service-linked role. The system will automatically create it when the API is called for the first time. Check your RAM policies, and ensure that you are using the correct credentials.'], ['errorCode' => 'InvalidOSSObject.NeedRestore', 'errorMessage' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is an archived object and needs to be restored first.', 'description' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is an archived object and needs to be restored first.'], ['errorCode' => 'InvalidOperation.NoRightAccessOSS', 'errorMessage' => 'ECS service is not authorized to access your OSS. Check your RAM roles and policies, and ensure that ecs.aliyuncs.com is authorized to assume AliyunECSImageImportDefaultRole.', 'description' => 'ECS service is not authorized to access your OSS. Check your RAM roles and policies, and ensure that "ecs.aliyuncs.com" is authorized to assume "AliyunECSImageImportDefaultRole".'], ['errorCode' => 'InvalidOperation.OSSObjectIsImporting', 'errorMessage' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is importing.', 'description' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is importing.'], ], [ ['errorCode' => 'InvalidImage.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'ImageComponent.NotFound', 'errorMessage' => '%s.', 'description' => 'The specified image component ID is not found.'], ['errorCode' => 'InvalidInstanceType.NotFound', 'errorMessage' => 'The specified instance type does not exist.', 'description' => 'The specified InstanceType parameter does not exist.'], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'The specified VSwitchId does not exist.', 'description' => 'The specified VSwitchId does not exist'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidImportImageOptionsDiskDeviceMappingsOSSObject.NotFound', 'errorMessage' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is not found in this region.', 'description' => 'The specified ImportImageOptions.DiskDeviceMappings.OSSObject is not found in the current region.'], ['errorCode' => 'MissingParameter.RepairMode', 'errorMessage' => 'The specified parameter RepairMode is missing.', 'description' => 'The specified parameter RepairMode is missing.'], ['errorCode' => 'MissingParameter.ImportImageOptions', 'errorMessage' => 'The specified parameter ImportImageOptions is missing.', 'description' => 'The specified parameter ImportImageOptions is missing.'], ['errorCode' => 'MissingParameter.ImportImageOptionsDiskDeviceMappingsOSSObject', 'errorMessage' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSObject is missing.', 'description' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSObject is missing.'], ['errorCode' => 'MissingParameter.ImportImageOptionsDiskDeviceMappingsOSSBucket', 'errorMessage' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSBucket is missing.', 'description' => 'The specified parameter ImportImageOptions.DiskDeviceMappings.OSSBucket is missing.'], ['errorCode' => 'MissingParameter.ImageOptionsDiskDeviceMappings', 'errorMessage' => 'The specified parameter ImportImageOptions.DiskDeviceMappings is missing.', 'description' => 'The specified parameter ImportImageOptions.DiskDeviceMappings is missing.'], ['errorCode' => 'MissingImportImageOptions.DockerOptions', 'errorMessage' => 'The specified parameter ImportImageOptions.DockerOptions is missing.', 'description' => 'The specified parameter ImportImageOptions.DockerOptions is missing.'], ['errorCode' => 'InvalidOssBucketName.NotFound', 'errorMessage' => 'The specified parameter OssDeliveryConfig.BucketName does not exist.', 'description' => ''], ], ], 'title' => 'CreateImagePipeline', 'summary' => 'Create an image template to build images.', 'description' => '## API'."\n" ."\n" .'You can use an image template to customize image content and build images across regions and accounts. Before you create an image template, consider the following:'."\n" ."\n" .'- You can create only custom image templates.'."\n" ."\n" .'- You can use only public images, custom images, shared images, or image families as the source image.'."\n" ."\n" .'- When you build an image using an image template, the system creates one or more transit instances to assist with the build. You are charged for these pay-as-you-go ECS instances. For more information, see [pay-as-you-go](~~40653~~).'."\n" ."\n" .'Consider the following about the build content specified in `BuildContent`:'."\n" ."\n" .'- The `FROM` command is deprecated. The system ignores the `FROM` command in `BuildContent` and instead uses the `BaseImageType` and `BaseImage` parameters to select the source image.'."\n" ."\n" .'- The content of an image template cannot exceed 16 KB. For details about supported commands, see [Command reference for Image Builder](~~200206~~).'."\n" ."\n" .'For more information, see [Image Builder overview](~~197410~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-17T03:33:15.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-28T06:39:43.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-01-13T02:00:32.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-12-26T05:32:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-10T06:14:46.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-03-28T08:07:44.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateImagePipeline'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateImagePipeline', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipeline', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipeline/*'], ], ], 'additionalActions' => [ ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ImagePipelineId\\": \\"ip-2ze5tsl5bp6nf2b3****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'translator' => 'machine', ], 'CreateInstance' => [ 'summary' => 'Creates a subscription or pay-as-you-go Elastic Compute Service (ECS) instance with customizable parameters.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], [ 'APP' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'high', 'chargeType' => 'paid', 'abilityTreeCode' => '28832', 'abilityTreeNodes' => ['FEATUREecsYLNQGM'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the image used to start the instance. To use an Alibaba Cloud Marketplace image, you can view the `ImageId` on the image product page. If you do not use `ImageFamily` to select the latest available image from an image family, this parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'ubuntu_18_04_64_20G_alibase_20190624.vhd', 'title' => ''], ], [ 'name' => 'ImageFamily', 'in' => 'query', 'schema' => ['description' => 'The name of the image family. Set this parameter to obtain the latest available image from the specified image family to create the instance.'."\n" .'- If `ImageId` is specified, you cannot set this parameter.'."\n" .'- If `ImageId` is not specified, you can set this parameter.', 'type' => 'string', 'required' => false, 'example' => 'hangzhou-daily-update', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type.'."\n" ."\n" .'- Instance type selection: See [Instance family](~~25378~~) or invoke [DescribeInstanceTypes](~~25620~~) to query the performance data of the target instance type. You can also see [Best practices for instance type selection](~~58291~~) to learn how to select an instance type.'."\n" .'- Check active resources: Invoke [DescribeAvailableResource](~~66186~~) to query active resources in a specific region or zone.', 'type' => 'string', 'required' => true, 'example' => 'ecs.g6.large', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security group to which the instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg****', 'title' => ''], ], [ 'name' => 'InstanceName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance. The name must be 2 to 128 characters in length and can contain letters in the Unicode letter category (including English and Chinese characters) and digits. The name can contain colons (:), underscores (_), periods (.), or hyphens (-). If this parameter is not specified, the default value is the instance ID.', 'type' => 'string', 'required' => false, 'example' => 'k8s-node-[1,4]-alibabacloud', 'title' => ''], ], [ 'name' => 'InternetChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method for network usage. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic (default): pay-by-traffic.'."\n" ."\n" .'> In **pay-by-traffic** mode, the peak inbound and outbound bandwidths are both upper limits and are not guaranteed. When resource contention occurs, the peak bandwidth may be throttled. If your workloads require guaranteed bandwidth, use **pay-by-bandwidth** mode.', 'type' => 'string', 'required' => false, 'example' => 'PayByTraffic', 'title' => ''], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable auto-renewal. This parameter takes effect only when `InstanceChargeType` is set to `PrePaid`. Valid values:'."\n" ."\n" .'- true: enables auto-renewal.'."\n" .'- false (default): disables auto-renewal.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'AutoRenewPeriod', 'in' => 'query', 'schema' => ['description' => 'The auto-renewal period. This parameter is required when AutoRenew is set to True.'."\n" ."\n" .'If PeriodUnit is set to Week, valid values of AutoRenewPeriod are 1, 2, and 3.'."\n" ."\n" .'If PeriodUnit is set to Month, valid values of AutoRenewPeriod are 1, 2, 3, 6, and 12.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthIn', 'in' => 'query', 'schema' => ['description' => 'The maximum inbound public bandwidth, in Mbit/s. Valid values:'."\n" ."\n" .'- If the purchased outbound bandwidth is less than or equal to 10 Mbit/s: 1 to 10. Default value: 10.'."\n" .'- If the purchased outbound bandwidth is greater than 10 Mbit/s: 1 to the value of `InternetMaxBandwidthOut`. Default value: the value of `InternetMaxBandwidthOut`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '200', 'minimum' => '1', 'example' => '50', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthOut', 'in' => 'query', 'schema' => ['description' => 'The maximum outbound public bandwidth, in Mbit/s. Valid values: 0 to 100.'."\n" ."\n" .'Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'HostName', 'in' => 'query', 'schema' => ['description' => 'The hostname of the server.'."\n" ."\n" .'- The hostname cannot start or end with a period (.) or hyphen (-), and cannot contain consecutive periods or hyphens.'."\n" .'- Windows instances: The hostname must be 2 to 15 characters in length and cannot contain periods (.) or consist entirely of digits. It can contain uppercase and lowercase letters, digits, and hyphens (-).'."\n" .'- Other instances (such as Linux): The hostname must be 2 to 64 characters in length and can contain multiple periods (.). Each segment separated by a period can contain uppercase and lowercase letters, digits, and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'LocalHostName', 'title' => ''], ], [ 'name' => 'Password', 'in' => 'query', 'schema' => ['description' => 'The password of the instance. The password must be 8 to 30 characters in length and must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. The following special characters are supported:'."\n" ."\n" .'```'."\n" .'()`~!@#$%^&*-_+=|{}[]:;\'<>,.?/'."\n" .'```'."\n" ."\n" .'Note the following items:'."\n" ."\n" .'- For security purposes, use HTTPS to send requests if the Password parameter is specified.'."\n" .'- For Windows instances, the password cannot start with a forward slash (/).'."\n" .'- For instances that run certain operating systems, passwords are not supported. Only key pairs are supported. Examples: Others Linux and Fedora CoreOS.', 'type' => 'string', 'required' => false, 'example' => 'TestEcs123!', 'title' => ''], ], [ 'name' => 'PasswordInherit', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the password preset in the image. When you use this parameter, the Password parameter must be empty. Make sure that the image has a password configured.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DeploymentSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'required' => false, 'example' => 'ds-bp1brhwhoqinyjd6****', 'title' => ''], ], [ 'name' => 'DeploymentSetGroupNo', 'in' => 'query', 'schema' => ['description' => 'The group number of the instance in the deployment set. This parameter takes effect only when the deployment set uses the high availability group strategy (AvailabilityGroup). Valid values: 1 to 7.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the instance. For more information, call [DescribeZones](~~25610~~) to query the zone list.'."\n" ."\n" .'> If you specify `VSwitchId`, the specified `ZoneId` must be in the same zone as the vSwitch. You can also leave `ZoneId` empty, and the system automatically selects the zone of the specified vSwitch.'."\n" ."\n" .'Default value: empty. The system automatically selects a zone.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'ClusterId', 'in' => 'query', 'schema' => ['description' => 'The cluster ID of the instance.'."\n" ."\n" .'> This parameter will be deprecated. To improve compatibility, use other parameters instead.', 'type' => 'string', 'required' => false, 'example' => 'c-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'VlanId', 'in' => 'query', 'schema' => ['description' => 'The virtual local area network ID.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'InnerIpAddress', 'in' => 'query', 'schema' => ['description' => 'The internal IP address of the instance.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**', 'title' => ''], ], [ 'name' => 'SystemDisk.Size', 'in' => 'query', 'schema' => ['description' => 'The size of the system disk, in GiB. Valid values:'."\n" ."\n" .'- Basic disk: 20 to 500'."\n" ."\n" .'- Other disk types: 20 to 2048'."\n" ."\n" .'The value of this parameter must be greater than or equal to max{20, ImageSize}.'."\n" ."\n" .'Default value: max{40, ImageSize}.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '40', 'title' => ''], ], [ 'name' => 'SystemDisk.Category', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .'> The cloud_essd_entry value is supported only when `InstanceType` is set to the [u1, universal instance family](~~457079~~) (`ecs.u1`) or the [e, economy instance family](~~108489~~) (`ecs.e`). Settings of this parameter determine the computing power and optimization level of the system disk.'."\n" ."\n" .'For retired instance types that are not I/O optimized instances, the default value is cloud. For other instance types, the default value is cloud_efficiency.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'SystemDisk.DiskName', 'in' => 'query', 'schema' => ['description' => 'The name of the system disk. The name must be 2 to 128 characters in length and can contain letters in the Unicode letter category (including English and Chinese characters and digits). The name can contain colons (:), underscores (_), periods (.), or hyphens (-).'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'SystemDiskName', 'title' => ''], ], [ 'name' => 'SystemDisk.Description', 'in' => 'query', 'schema' => ['description' => 'The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'TestDescription', 'title' => ''], ], [ 'name' => 'SystemDisk.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level (PL) of the enterprise SSD used as the system disk. Settings of this parameter apply only when the disk category is not standard SSD. Valid values:'."\n" ."\n" .'- PL0: a single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1 (default): a single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: a single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: a single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [ESSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'NodeControllerId', 'in' => 'query', 'schema' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the instance. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'InstanceTest', 'title' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The vSwitch ID. This parameter is required when you create a VPC-connected instance. You can call [DescribeVSwitches](~~35748~~) to query available vSwitches.'."\n" ."\n" .'> If you specify `VSwitchId`, the specified `ZoneId` must be in the same zone as the vSwitch. You can also leave `ZoneId` empty, and the system automatically selects the zone of the specified vSwitch.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1s5fnvk4gn2tws0****', 'title' => ''], ], [ 'name' => 'PrivateIpAddress', 'in' => 'query', 'schema' => ['description' => 'The private IP address of the instance. The IP address must be an available address within the CIDR block of the specified vSwitch (VSwitchId).', 'type' => 'string', 'required' => false, 'example' => '172.16.236.*', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is I/O optimized. Valid values:'."\n" ."\n" .'- none: not I/O optimized.'."\n" .'- optimized: I/O optimized.'."\n" ."\n" .'The default value for [retired instance types](~~55263~~) is none.'."\n" ."\n" .'The default value for other instance types is optimized.', 'type' => 'string', 'required' => false, 'example' => 'optimized', 'title' => ''], ], [ 'name' => 'UseAdditionalService', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the virtual machine system configuration provided by Alibaba Cloud (Windows: NTP and KMS. Linux: NTP and YUM).', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instance. Valid values:'."\n" ."\n" .'- PrePaid: subscription. If you set this parameter to PrePaid, make sure that your account supports credit payment or balance payment. Otherwise, an `InvalidPayMethod` error is returned.'."\n" .'- PostPaid (default): pay-as-you-go.', 'type' => 'string', 'required' => false, 'example' => 'PrePaid', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The subscription duration of the instance. The unit is specified by `PeriodUnit`. This parameter is required and takes effect only when `InstanceChargeType` is set to `PrePaid`. If `DedicatedHostId` is specified, the value of this parameter cannot exceed the subscription duration of the dedicated host. Valid values:'."\n" ."\n" .''."\n" .'- If PeriodUnit is set to Week, valid values of Period are 1, 2, 3, and 4.'."\n" .'- If PeriodUnit is set to Month, valid values of Period are 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.'."\n" ."\n" .''."\n" ."\n" .'If PeriodUnit is set to Month, valid values of Period are 1, 2, 3, 6, and 12.'."\n" ."\n" .'If PeriodUnit is set to Month, valid values of Period are 1, 2, 3, 6, and 12.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => ['description' => 'The unit of the subscription duration. Valid values:'."\n" ."\n" .''."\n" .'- Week.'."\n" .'- Month.'."\n" ."\n" .''."\n" ."\n" .'Month.'."\n" ."\n" .'Month.'."\n" ."\n" .'Default value: Month.', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], ], [ 'name' => 'UserData', 'in' => 'query', 'schema' => ['description' => 'The instance user data. The data must be encoded in Base64. The maximum size of the raw data is 32 KB.', 'type' => 'string', 'required' => false, 'example' => 'ZWNobyBoZWxsbyBlY3Mh', 'title' => ''], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => ['description' => 'The bidding policy for the instance. This parameter takes effect only when `InstanceChargeType` is set to `PostPaid`. Valid values:'."\n" ."\n" .'- NoSpot (default): The instance is a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: The instance is a spot instance with a user-defined maximum hourly price.'."\n" .'- SpotAsPriceGo: The instance is a spot instance for which the market price at the time of purchase is automatically used as the bid price.', 'type' => 'string', 'required' => false, 'example' => 'NoSpot', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the key pair.'."\n" ."\n" .'> For Windows instances, this parameter is ignored. The default value is empty. Even if this parameter is specified, only the `Password` content is used.', 'type' => 'string', 'required' => false, 'example' => 'KeyPairTestName', 'title' => ''], ], [ 'name' => 'SpotPriceLimit', 'in' => 'query', 'schema' => ['description' => 'The maximum hourly price of the instance. This value can be accurate to three decimal places. This parameter takes effect only when `SpotStrategy` is set to `SpotWithPriceLimit`.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '0.98', 'title' => ''], ], [ 'name' => 'SpotDuration', 'in' => 'query', 'schema' => ['description' => 'The protection period of the spot instance, in hours. Default value: 1. Valid values:'."\n" ."\n" .'- 1: After the instance is created, Alibaba Cloud ensures that the instance is not automatically released for 1 hour. After 1 hour, the system automatically compares the bid price with the market price and checks resource availability to determine whether to retain automatic release the instance.'."\n" .'- 0: After the instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system automatically compares the bid price with the market price and checks resource availability to determine whether to retain automatic release the instance.'."\n" ."\n" .'> '."\n" .'> - This parameter supports only the value 0 or 1.'."\n" .'> - Spot instances are billed by second. Set the protection period based on the expected task execution duration.'."\n" .'> - Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '6', 'minimum' => '0', 'example' => '1', 'title' => ''], ], [ 'name' => 'SpotInterruptionBehavior', 'in' => 'query', 'schema' => ['description' => 'The break mode of the spot instance. Valid values:'."\n" ."\n" .'- Terminate: The instance is directly released.'."\n" ."\n" .'- Stop: The instance enters economical mode.'."\n" ."\n" .' For more information about economical mode, see [Economical mode for pay-as-you-go instances](~~63353~~).'."\n" ."\n" .'Default value: Terminate.', 'type' => 'string', 'required' => false, 'example' => 'Terminate', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance RAM role. You can call the RAM API [ListRoles](~~28713~~) to query the instance RAM roles that you have created.', 'type' => 'string', 'required' => false, 'example' => 'RAMTestName', 'title' => ''], ], [ 'name' => 'SecurityEnhancementStrategy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable security hardening. Valid values:'."\n" ."\n" .'- Active: enables security hardening. This value is applicable only to public images.'."\n" .'- Deactive: disables security hardening. This value is applicable to all image types.', 'type' => 'string', 'required' => false, 'example' => 'Active', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the enterprise resource group to which the instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'HpcClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the HPC cluster to which the instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'hpc-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run. Valid values:'."\n" ."\n" .'- true: performs only a dry run. The system checks whether the required parameters are specified, whether the request format is valid, whether service limits are met, and whether the specified ECS resources are available. If the check fails, the corresponding error is returned. If the check succeeds, the `DryRunOperation` error code is returned.'."\n" .'- false (default): performs a dry run and sends the request. If the check succeeds, the instance is created.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DedicatedHostId', 'in' => 'query', 'schema' => ['description' => 'The ID of the dedicated host.'."\n" .'You can call [DescribeDedicatedHosts](~~134242~~) to query the list of dedicated host IDs.'."\n" ."\n" .'You can call [DescribeDedicatedHosts](~~134242~~) to query the list of dedicated host IDs.'."\n" ."\n" .'>Spot instances cannot be created on dedicated hosts. If you specify `DedicatedHostId`, the `SpotStrategy` and `SpotPriceLimit` settings in the request are automatically ignored.>', 'type' => 'string', 'required' => false, 'example' => 'dh-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'CreditSpecification', 'in' => 'query', 'schema' => ['description' => 'The performance mode of the burstable instance. Valid values:'."\n" ."\n" .'- Standard: standard mode. For more information, see the performance constrained mode section in [What are burstable instances](~~59977~~).'."\n" .'- Unlimited: unlimited mode. For more information, see the unlimited performance mode section in [What are burstable instances](~~59977~~).', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'DeletionProtection', 'in' => 'query', 'schema' => ['description' => 'The release protection attribute of the instance. Specifies whether the instance can be released from the ECS console or by calling [DeleteInstance](~~25507~~).'."\n" ."\n" .'- true: enables release protection.'."\n" .'- false (default): disables release protection.'."\n" ."\n" .'> This attribute is applicable only to pay-as-you-go instances. It can only prevent manual release, not system-initiated release.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'HibernationOptions.Configured', 'in' => 'query', 'schema' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'Affinity', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is associated with a dedicated host. Valid values:'."\n" ."\n" .'- default: The instance is not associated with a dedicated host. When an instance that has economical mode enabled is restarted after it is stopped, the instance is deployed to another dedicated host in the automatic deployment resource pool if the resources of the original dedicated host are insufficient.'."\n" ."\n" .'- host: The instance is associated with a dedicated host. When an instance that has economical mode enabled is restarted after it is stopped, the instance remains on the original dedicated host. If the resources of the original dedicated host are insufficient, the instance fails to restart.'."\n" ."\n" .'Default value: default.', 'type' => 'string', 'required' => false, 'example' => 'default', 'title' => ''], ], [ 'name' => 'Tenancy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to create the instance on a dedicated host. Valid values:'."\n" ."\n" .'- default: creates the instance on a non-dedicated host.'."\n" ."\n" .'- host: creates the instance on a dedicated host. If you do not specify `DedicatedHostId`, Alibaba Cloud automatically selects a dedicated host for the instance.'."\n" ."\n" .'Default value: default.', 'type' => 'string', 'required' => false, 'example' => 'default', 'title' => ''], ], [ 'name' => 'StorageSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the storage set.', 'type' => 'string', 'required' => false, 'example' => 'ss-bp1j4i2jdf3owlhe****', 'title' => ''], ], [ 'name' => 'StorageSetPartitionNumber', 'in' => 'query', 'schema' => ['description' => 'The maximum number of partitions in the storage set. Valid values: greater than or equal to 2.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '2', 'title' => ''], ], [ 'name' => 'HttpEndpoint', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the access channel for instance metadata. Valid values:'."\n" .'- enabled: enabled.'."\n" .'- disabled: disabled.'."\n" ."\n" .'Default value: enabled.'."\n" .'> For more information about instance metadata, see [Overview of instance metadata](~~49122~~).', 'type' => 'string', 'required' => false, 'example' => 'enabled', 'title' => ''], ], [ 'name' => 'HttpTokens', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcefully use the security-hardened mode (IMDSv2) to access instance metadata. Valid values:'."\n" .'- optional: does not forcefully use the security-hardened mode.'."\n" .'- required: forcefully uses the security-hardened mode. After this value is set, instance metadata cannot be accessed in normal mode.'."\n" ."\n" .'Default value: optional.'."\n" .'> For more information about the modes for accessing instance metadata, see [Instance metadata access modes](~~150575~~).', 'type' => 'string', 'required' => false, 'example' => 'optional', 'title' => ''], ], [ 'name' => 'HttpPutResponseHopLimit', 'in' => 'query', 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.MatchCriteria', 'in' => 'query', 'schema' => ['description' => 'The private pool option for launching the instance. A private pool is generated when an elasticity assurance or capacity reservation takes effect. You can select a private pool when you start an instance. Valid values:'."\n" ."\n" .'- Open: open mode. The system automatically matches an open private pool. If no matching private pool is available, the instance is launched using public pool resources. You do not need to set `PrivatePoolOptions.Id`.'."\n" .'- Target: specified mode. The instance is launched using the specified private pool. If the specified private pool is unavailable, the instance fails to launch. In this mode, you must specify the private pool ID. Set `PrivatePoolOptions.Id` to the private pool ID.'."\n" .'- None: does not use a private pool. The instance is launched without using any private pool.'."\n" ."\n" .'Default value: None.'."\n" ."\n" .'In any of the following scenarios, the private pool option can only be set to `None` or left empty:'."\n" .'- Creating a spot instance.'."\n" .'- Creating an ECS instance on a dedicated host.', 'type' => 'string', 'required' => false, 'example' => 'Open', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Id', 'in' => 'query', 'schema' => ['description' => 'The private pool ID, which is the ID of the elasticity assurance or capacity reservation.', 'type' => 'string', 'required' => false, 'example' => 'eap-bp67acfmxazb4****', 'title' => ''], ], [ 'name' => 'DataDisk', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of data disks.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PerformanceLevel' => ['description' => 'The performance level (PL) of the enterprise SSD used as a data disk. Settings of this parameter apply only when the disk category is not standard SSD. The value of N must be the same as that in `DataDisk.N.Category=cloud_essd`. Valid values:'."\n" ."\n" .'- PL0: a single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1 (default): a single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: a single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: a single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [ESSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL2', 'title' => ''], 'Description' => ['description' => 'The description of the data disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestDescription', 'title' => ''], 'SnapshotId' => ['description' => 'The snapshot ID used to create data disk N. Valid values of N: 1 to 16.'."\n" ."\n" .'- If `DataDisk.N.SnapshotId` is specified, `DataDisk.N.Size` is ignored. The actual size of the created disk is the size of the specified snapshot.'."\n" ."\n" .'- Snapshots created on or before July 15, 2013 cannot be used. Requests with such snapshots are rejected.', 'type' => 'string', 'required' => false, 'example' => 's-bp17441ohwka0yuh****', 'title' => ''], 'Size' => ['description' => 'The size of data disk N, in GiB. Valid values of N: 1 to 16. Valid values:'."\n" ."\n" .'- cloud_efficiency: 20 to 32768.'."\n" .'- cloud_ssd: 20 to 32768.'."\n" .'- cloud_essd: The valid values depend on the value of `DataDisk.N.PerformanceLevel`.'."\n" .' - PL0: 1 to 65,536.'."\n" .' - PL1: 20 to 65,536.'."\n" .' - PL2: 461 to 65,536.'."\n" .' - PL3: 1261 to 65,536.'."\n" .'- cloud: 5 to 2000.'."\n" ."\n" .'> The value of this parameter must be greater than or equal to the size of the snapshot specified by `SnapshotId`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2000', 'title' => ''], 'Device' => ['description' => 'The mount point of the data disk.'."\n" ."\n" .'> This parameter is applicable only to full image (system image) scenarios. You can set this parameter to the mount point of the data disk in the full image and modify the corresponding `DataDisk.N.Size` and `DataDisk.N.Category` parameters to change the disk category and size of the data disk in the full image.', 'type' => 'string', 'required' => false, 'example' => '/dev/xvdb', 'title' => ''], 'DiskName' => ['description' => 'The name of the data disk. The name must be 2 to 128 characters in length and can contain letters in the Unicode letter category (including English and Chinese characters and digits). The name can contain colons (:), underscores (_), periods (.), or hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'DataDiskName', 'title' => ''], 'Category' => ['description' => 'The category of data disk N. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .' > The cloud_essd_entry value is supported only when `InstanceType` is set to the `ecs.u1` or `ecs.e` instance family. Settings of this parameter determine the optimization level of the data disk.'."\n" .'- elastic_ephemeral_disk_standard: elastic ephemeral disk - standard.'."\n" .'- elastic_ephemeral_disk_premium: elastic ephemeral disk - Premium Edition.'."\n" ."\n" .'The default value is cloud_efficiency for I/O optimized instances and cloud for non-I/O optimized instances.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], 'DeleteWithInstance' => ['description' => 'Specifies whether the data disk is released when the instance is released.'."\n" ."\n" .'- true: The data disk is released when the instance is released.'."\n" .'- false: The data disk is not released when the instance is released.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'KMSKeyId' => ['description' => 'The KMS key ID used by the disk.', 'type' => 'string', 'maxLength' => 64, 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d****', 'title' => ''], 'EncryptAlgorithm' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Encrypted' => ['description' => 'Specifies whether data disk N is encrypted.'."\n" ."\n" .'- true: encrypted.'."\n" ."\n" .'- false: not encrypted.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], 'StorageClusterId' => ['description' => 'The ID of the dedicated block storage cluster. To use a disk in a dedicated block storage cluster as a data disk when you create an ECS instance, set this parameter.', 'type' => 'string', 'required' => false, 'example' => 'dbsc-j5e1sf2vaf5he8m2****', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 16, 'title' => '', 'example' => '', ], ], [ 'name' => 'Arn', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RoleType' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'Primary', 'title' => ''], 'Rolearn' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'acs:ram::123456789012****:role/adminrole', 'title' => ''], 'AssumeRoleFor' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1234567890', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key.'."\n" ."\n" .'> To improve compatibility, use Tag.N.Key instead.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], 'Key' => ['description' => 'The tag key for the instance, disk, and primary ENI. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. The tag key cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value for the instance, disk, and primary ENI. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value.'."\n" ."\n" .'> To improve compatibility, use Tag.N.Value instead.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'SystemDisk', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The system disk parameters. The dedicated block storage cluster ID (`StorageClusterId`) must be set through this parameter.', 'type' => 'object', 'properties' => [ 'StorageClusterId' => ['description' => 'The ID of the dedicated block storage cluster. To use a disk in a dedicated block storage cluster as the system disk when you create an ECS instance, set this parameter.', 'type' => 'string', 'required' => false, 'example' => 'dbsc-j5e1sf2vaf5he8m2****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'OrderId' => ['description' => 'The order ID. This parameter is returned only when you create a subscription ECS instance (request parameter `InstanceChargeType=PrePaid`).', 'type' => 'string', 'example' => '1234567890', 'title' => ''], 'TradePrice' => ['description' => 'The transaction price of the order.', 'type' => 'number', 'format' => 'float', 'example' => '0.165', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidStorageClusterId.CapacityNotEnough', 'errorMessage' => 'The remaining capacity of the current dedicated storage cluster is less than the size of disk.', 'description' => 'The remaining capacity of the dedicated block storage cluster to which the disk belongs is insufficient.'], ['errorCode' => 'InvalidStorageClusterId.StatusNotSupport', 'errorMessage' => 'The current status of the dedicated storage cluster cannot create a cloud disk yet.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.ZoneIdEmpty', 'errorMessage' => 'The specified param ZoneId cannot be empty when StorageClusterId given.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.PerformanceLevelNotMatch', 'errorMessage' => 'The current dedicated storage cluster cannot create this performance level of disk.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.CategoryNotMatch', 'errorMessage' => 'The current dedicated storage cluster cannot create this category of disk.', 'description' => ''], ['errorCode' => 'InvalidStorageClusterId.DiskSizeEmpty', 'errorMessage' => 'The specified param DiskSize cannot be empty when StorageClusterId given.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.ValueUnauthorized', 'errorMessage' => 'The specified InstanceType is not authorized.', 'description' => ''], ['errorCode' => 'InvalidInternetChargeType.ValueNotSupported', 'errorMessage' => 'The specified InternetChargeType is not valid.', 'description' => 'The specified InternetChargeType parameter is invalid.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter "InternetMaxBandwidthOut" is not valid.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter " SystemDisk.Category " is not valid.', 'description' => ''], ['errorCode' => 'InvalidDataDiskSize.ValueNotSupported', 'errorMessage' => 'The specified DataDisk.n.Size beyond the permitted range, or the capacity of snapshot exceeds the size limit of the specified disk category.', 'description' => 'The specified DataDisk.N.Size parameter is invalid or the snapshot size exceeds the maximum capacity allowed for the specified disk category.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => 'The specified instance type does not exist or you are not authorized to manage instances of this instance type.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified parameter "Description" is not valid.', 'description' => 'The source description can be 2 to 256 characters in length. It cannot start with http:// and https://.'], ['errorCode' => 'InvalidHostName.Malformed', 'errorMessage' => 'The specified parameter "HostName" is not valid.', 'description' => ''], ['errorCode' => 'InvalidPassword.Malformed', 'errorMessage' => 'The specified parameter "Password" is not valid.', 'description' => ''], ['errorCode' => 'InvalidPasswordParam.Mismatch', 'errorMessage' => 'The input password should be null when passwdInherit is true.', 'description' => 'The Password parameter must be left empty when the PasswdInherit parameter is used.'], ['errorCode' => 'InvalidDiskName.Malformed', 'errorMessage' => 'The specified parameter "SystemDisk.DiskName or DataDisk.n.DiskName" is not valid.', 'description' => ''], ['errorCode' => 'InvalidDiskDescription.Malformed', 'errorMessage' => 'The specified parameter "SystemDisk.DiskDescription" or "DataDisk.n.Description" is not valid.', 'description' => 'The specified SyatemDisk.DiskDescription or DataDisk.n.Description is invalid.'], ['errorCode' => 'InvalidDataDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DataDisk.n.Category" is not valid.', 'description' => ''], ['errorCode' => 'InvalidDataDevice.Malformed', 'errorMessage' => 'The specified parameter "DataDisk.n.Device" is not valid.', 'description' => ''], ['errorCode' => 'InvalidNodeControllerId.Malformed', 'errorMessage' => 'The specified parameter "NodeControllerId" is not valid.', 'description' => ''], ['errorCode' => 'InvalidInnerIpAddress.Malformed', 'errorMessage' => 'The specified parameter "InnerIpAddress" is not valid.', 'description' => ''], ['errorCode' => 'InvalidInnerIpAddress.Unusable', 'errorMessage' => 'The specified InnerIpAddress is already used or not found in usable ip range.', 'description' => 'The specified internal IP address is unavailable.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified parameter "VlanId" is not valid or vlan has not enough IP address.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified image does not support the specified instance type.', 'description' => 'The specified image cannot be used for instances of the specified instance type.'], ['errorCode' => 'ImageNotSupportCloudInit', 'errorMessage' => 'The specified image does not support cloud-init.', 'description' => ''], ['errorCode' => 'InvalidSnapshotId.BasedSnapshotTooOld', 'errorMessage' => 'The specified snapshot is created before 2013-07-15.', 'description' => 'The specified snapshot was created before July 15, 2013.'], ['errorCode' => 'QuotaExceed.AfterpayInstance', 'errorMessage' => 'The maximum number of Pay-As-You-Go instances is exceeded: %s.', 'description' => ''], ['errorCode' => 'InvalidMarketImageChargeType.NotSupport', 'errorMessage' => 'The specified chargeType of marketImage is unsupported.', 'description' => 'The billing method of the Alibaba Cloud Marketplace image is not supported.'], ['errorCode' => 'InvalidInstanceName.Malformed', 'errorMessage' => 'The specified parameter "InstanceName" is not valid.', 'description' => 'The specified InstanceName parameter is invalid.'], ['errorCode' => 'InvalidParameter.Mismatch', 'errorMessage' => 'Specified security group and virtual switch are not in the same VPC.', 'description' => 'The specified security group and vSwitch do not belong to the same VPC.'], ['errorCode' => 'InvalidNetworkType.Mismatch', 'errorMessage' => 'Specified parameter InternetMaxBandwidthIn or InternetMaxBandwidthOut conflict with instance network type.', 'description' => 'The specified InternetMaxBandwidthIn or InternetMaxBandwidthOut parameter conflicts with the instance network type.'], ['errorCode' => 'InvalidPrivateIpAddress', 'errorMessage' => 'Specified private IP address is not in the CIDR block of virtual switch.', 'description' => 'The specified private IP address does not fall within the CIDR block of the specified vSwitch.'], ['errorCode' => 'InvalidPrivateIpAddress.Malformed', 'errorMessage' => 'Specified private IP address is invalid.', 'description' => ''], ['errorCode' => 'InvalidPrivateIpAddress.Duplicated', 'errorMessage' => 'Specified private IP address is duplicated.', 'description' => ''], ['errorCode' => 'QuotaExceeded.PrivateIpAddress', 'errorMessage' => 'Don\'t have enough private IPs in this switch.', 'description' => ''], ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'Living instances quota exceeded in this VPC.', 'description' => ''], ['errorCode' => 'IncorrectVSwitchStatus', 'errorMessage' => 'The current status of virtual switch does not support this operation.', 'description' => 'The specified vSwitch is in the Pending state and cannot be deleted.'], ['errorCode' => 'ResourceNotAvailable', 'errorMessage' => 'Resource you requested is not available in this region or zone.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter "VSwitchId" that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.Mismatch', 'errorMessage' => 'The specified disk categories\' combination is not supported.', 'description' => ''], ['errorCode' => 'InvalidIoOptimizedValue.ValueNotSupported', 'errorMessage' => 'IoOptimized value not supported.', 'description' => 'The specified IoOptimized value is not supported.'], ['errorCode' => 'MissingParamter', 'errorMessage' => 'The specified parameter "Period" is not null.', 'description' => ''], ['errorCode' => 'InvalidPeriod', 'errorMessage' => 'The specified period is not valid.', 'description' => 'The specified period is invalid.'], ['errorCode' => 'InstanceDiskCategoryLimitExceed', 'errorMessage' => 'The specified DataDisk.n.Size beyond the permitted range, or the capacity of snapshot exceeds the size limit of the specified disk category.', 'description' => 'The specified DataDisk.N.Size parameter is invalid or the snapshot size exceeds the maximum capacity allowed for the specified disk category.'], ['errorCode' => 'InvalidParameter.Bandwidth', 'errorMessage' => 'The specified parameter Bandwidth is not valid.', 'description' => 'The specified bandwidth value is invalid.'], ['errorCode' => 'InvalidIPAddress.AlreadyUsed', 'errorMessage' => 'The specified IPAddress is already used by other resource.', 'description' => 'The specified IP address is being used by another resource.'], ['errorCode' => 'InvalidUserData.SizeExceeded', 'errorMessage' => 'The specified parameter "UserData" exceeds the size.', 'description' => ''], ['errorCode' => 'InvalidUserData.NotSupported', 'errorMessage' => 'The specified parameter "UserData" only support the vpc and IoOptimized Instance.', 'description' => ''], ['errorCode' => 'InstanceDiskNumber.LimitExceed', 'errorMessage' => 'The total number of specified disk in an instance exceeds.', 'description' => 'The number of disks on an instance exceeds the upper limit.'], ['errorCode' => 'Account.Arrearage', 'errorMessage' => 'Your account has an outstanding payment.', 'description' => 'Your account has overdue payments.'], ['errorCode' => 'InvalidDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DiskCategory" is not valid.', 'description' => 'The specified cloud disk type DiskCategory is invalid.'], ['errorCode' => 'InvalidAutoRenewPeriod.ValueNotSupported', 'errorMessage' => 'The specified autoRenewPeriod is not valid.', 'description' => 'The specified AutoRenewPeriod parameter is invalid.'], ['errorCode' => 'InvalidSpotStrategy', 'errorMessage' => 'The specified SpotStrategy is not valid.', 'description' => 'The specified SpotStrategy parameter is invalid.'], ['errorCode' => 'InvalidSpotParam.EmptyZoneID', 'errorMessage' => 'The specified ZoneId is empty when SpotStrategy is set.', 'description' => 'The ZoneId parameter is not specified while the SpotStrategy parameter is specified.'], ['errorCode' => 'InvalidSpotPriceLimit', 'errorMessage' => 'The specified SpotPriceLimitis not valid.', 'description' => 'The specified SpotPriceLimit parameter is invalid.'], ['errorCode' => 'InvalidSpotDuration', 'errorMessage' => 'The specified SpotDuration is not valid.', 'description' => 'The specified SpotDuration parameter is invalid.'], ['errorCode' => 'InvalidSpotAuthorized', 'errorMessage' => 'The specified Spot param is unauthorized.', 'description' => 'You are not authorized to set the SpotDuration parameter.'], ['errorCode' => 'InvalidSpotPrepaid', 'errorMessage' => 'The specified Spot type is not support PrePay Instance.', 'description' => 'Spot instances do not support the subscription billing method.'], ['errorCode' => 'InvalidSpotAliUid', 'errorMessage' => 'The specified UID is not authorized to use SPOT instance.', 'description' => 'You are not authorized to create spot instances.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Zone.NotOnSale', 'errorMessage' => '%s', 'description' => 'The requested resources are unavailable in the specified zone. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidSystemDiskSize.ValueNotSupported', 'errorMessage' => '%s', 'description' => 'The specified system disk size is invalid.'], ['errorCode' => 'InvalidParameter.EncryptedIllegal', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Check whether your encryption operation is supported. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidParameter.EncryptedNotSupported', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid and your encryption operation is not supported. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'EncryptedOption.Conflict', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid and your encryption operation is not supported. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidSpotPriceLimit.LowerThanPublicPrice', 'errorMessage' => 'The specified parameter "soptPriceLimit" can\'t be lower than current public price.', 'description' => ''], ['errorCode' => 'InvalidHpcClusterId.Unnecessary', 'errorMessage' => 'The specified HpcClusterId is unnecessary.', 'description' => 'The HpcClusterId parameter is specified.'], ['errorCode' => 'InvalidVSwitchId.Necessary', 'errorMessage' => 'The VSwitchId is necessary.', 'description' => 'The VSwitchId parameter is required.'], ['errorCode' => 'InvalidHpcClusterId.Necessary', 'errorMessage' => 'The HpcClusterId is necessary.', 'description' => 'The HpcClusterId parameter is required.'], ['errorCode' => 'InvalidHpcClusterId.NotFound', 'errorMessage' => 'The specified HpcClusterId is not found.', 'description' => 'The specified HpcClusterId parameter does not exist.'], ['errorCode' => 'InvalidHpcClusterId.Creating', 'errorMessage' => 'The specified HpcClusterId is creating.', 'description' => 'The specified HPC cluster is being created.'], ['errorCode' => 'InvalidPeriodUnit.ValueNotSupported', 'errorMessage' => 'The specified parameter PeriodUnit is not valid.', 'description' => 'The specified PeriodUnit parameter is invalid.'], ['errorCode' => 'IncorrectImageStatus', 'errorMessage' => 'Encrypted snapshots do not support this operation.', 'description' => 'Encrypted snapshots do not support the operation.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidSecurityGroup.NotInDefaultVpc', 'errorMessage' => '%s', 'description' => 'The security group is not in the default VPC. Check whether the specified SecurityGroupId parameter is correct.'], ['errorCode' => 'VpcNotFound', 'errorMessage' => 'Vpc is not found according to the specified VSwitch or the vpc does not belong to you.', 'description' => 'No VPC is found based on the specified vSwitch or the corresponding VPC does not belong to you.'], ['errorCode' => 'InvalidSpotInterruptionBehavior', 'errorMessage' => '%s', 'description' => 'The specified SpotInterruptionBehavior parameter is not supported.'], ['errorCode' => 'OperationDenied.IllegalPaymentPolicy', 'errorMessage' => 'The current payment policy is illegal, please connect your service provider to authenticate relative agreement.', 'description' => 'The current payment policy is invalid. Contact your service provider to validate agreements relevant to the payment policy.'], ['errorCode' => 'InvalidDeploymentOnHost', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInstanceChargeType.NotSupport', 'errorMessage' => 'The Dedicated host not support the specified Instance charge type.', 'description' => 'This dedicated host does not support instances that use the specified billing method.'], ['errorCode' => 'InvalidNetworkType.NotSupported', 'errorMessage' => 'The classic networkType not support create ECS on dedicatedHost.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostId.NotFound', 'errorMessage' => 'The specified DedicatedHostId does not exist.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostStatus.NotSupport', 'errorMessage' => 'Operation denied due to dedicated host status.', 'description' => ''], ['errorCode' => 'IncorrectDedicatedHostStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => 'The resource is in a state that does not support the current operation.'], ['errorCode' => 'ChargeTypeViolation.PostPaidDedicatedHost', 'errorMessage' => 'Prepaid instance onto postpaid dedicated host is not allowed.', 'description' => ''], ['errorCode' => 'InvalidPeriod.ExceededDedicatedHost', 'errorMessage' => 'Instance expired date can\'t exceed dedicated host expired date.', 'description' => ''], ['errorCode' => 'DedicatedHostType.Unmatched', 'errorMessage' => 'The specified DedicatedHostType doesn?t match the instance type.', 'description' => ''], ['errorCode' => 'NoAvaliableDedicatedHost', 'errorMessage' => 'There\'s no enough resource on the specified dedicated host.', 'description' => ''], ['errorCode' => 'InvalidParameter.Affinity', 'errorMessage' => 'The specified Affinity is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Tenancy', 'errorMessage' => 'The specified Tenancy is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.Tenancy', 'errorMessage' => 'The specified Tenancy is invalid.', 'description' => 'The specified Tenancy parameter is invalid.'], ['errorCode' => 'InvalidParameter.CreditSpecification', 'errorMessage' => 'The specified CreditSpecification is not supported in this region.', 'description' => 'The running mode of the specified burst performance instance is not supported in this zone.'], ['errorCode' => 'InvalidInstanceType.NotSupported', 'errorMessage' => 'The specified instanceType is not supported by the deployment set.', 'description' => 'The current deployment set does not support the specified instance type. Try another instance type.'], ['errorCode' => 'InvalidVpcZone.NotSupported', 'errorMessage' => 'Zone of the specified VSwitch is not available for creating, please try in other zones.', 'description' => 'The default vSwitch cannot be created in the specified zone. Try another zone.'], ['errorCode' => 'IncorrectDefaultVpcStatus', 'errorMessage' => 'The status of the default VPC is invalid.', 'description' => 'The state of the default VPC is invalid.'], ['errorCode' => 'IoOptimized.NotSupported', 'errorMessage' => 'The specified instance must be IoOptimized instance when kmsKeyId is not empty.', 'description' => 'The specified instance must be an I/O optimized one when the KMSKeyId parameter is specified.'], ['errorCode' => 'InvalidClientToken.ValueNotSupported', 'errorMessage' => 'The ClientToken provided is invalid.', 'description' => 'The specified ClientToken parameter is invalid.'], ['errorCode' => 'InvalidCapacityReservationId.NotFound', 'errorMessage' => 'The specified CapacityReservationId does not exist.', 'description' => ''], ['errorCode' => 'LackResource', 'errorMessage' => 'There\'s no enough resource on the specified capacity reservation.', 'description' => ''], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidParameter.Arns', 'errorMessage' => 'The specified Arns is not valid.', 'description' => 'The Arns parameter is invalid. Please check and pass it again.'], ['errorCode' => 'InvalidOperation.NotSupportEnterpriseGroup', 'errorMessage' => 'The specified instance type doesn\'t support enterprise level security group.', 'description' => ''], ['errorCode' => 'InvalidOperation.MultiGroupType', 'errorMessage' => 'The specified instance can\'t join different types of security group.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.PayAmountLimitExceeded', 'errorMessage' => 'Your account is being restricted, because you have no default payment method or you are not authorized.', 'description' => ''], ['errorCode' => 'InvalidPerformanceLevel.Malformed', 'errorMessage' => 'The specified parameter DataDisk.n.PerformanceLevel is not valid.', 'description' => ''], ['errorCode' => 'InvalidSecurityGroup.NetworkType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'QuotaExceeded.PrepayDataDiskCapacity', 'errorMessage' => 'The quota of prepay data disk capacity exceeds.', 'description' => ''], ['errorCode' => 'InvalidCustomInstanceType.NotSupported', 'errorMessage' => 'The specified custom instance type is invalid.', 'description' => ''], ['errorCode' => 'InvalidOperation.EniCountExceeded', 'errorMessage' => 'The maximum number of eni in a enterprise security group is exceeded.', 'description' => ''], ['errorCode' => 'AccountForbidden.ProductCreationLimited', 'errorMessage' => 'The commodity must be officially operated by Aliyun and in pay-as-you-go billing method.', 'description' => ''], ['errorCode' => 'UnexpectedImageFamily.ImageIdSupplied', 'errorMessage' => 'The input parameter ImageFamily must be null when image id is set.', 'description' => 'The ImageFamily parameter must be left empty if an image ID is specified.'], ['errorCode' => 'InvalidEncrypted.NotMatchEncryptAlgorithm', 'errorMessage' => 'The specified parameter Encrypted must be true when EncryptAlgorithm is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchKmsKeyId', 'errorMessage' => 'The specified parameter Encrypted must be true when KmsKeyId is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncryptAlgorithm.NotMatchSnapshot', 'errorMessage' => 'The specified parameter EncryptAlgorithm is different from the encrypt algorithm of the snapshot.', 'description' => ''], ['errorCode' => 'InvalidKmsKeyId.NotMatchSnapshot', 'errorMessage' => 'The specified parameter KmsKeyId is different from the KmsKeyId of the snapshot.', 'description' => ''], ['errorCode' => 'InvalidEncryptAlgorithm', 'errorMessage' => 'The specified parameter EncryptAlgorithm is not valid.', 'description' => ''], ['errorCode' => 'InvalidHttpEndpoint.NotSupported', 'errorMessage' => 'The specified HttpEndpoint not supported, you can use enabled(default) or disabled.', 'description' => 'The specified HttpEndpoint parameter is invalid. The valid values of this parameter are enabled and disabled. The default value is enabled.'], ['errorCode' => 'InvalidHttpTokens.NotSupported', 'errorMessage' => 'The specified HttpTokens not supported, you can use optional(default) or required.', 'description' => 'The specified HttpTokens parameter is invalid. The valid values of this parameter are optional and required. The default value is optional.'], ['errorCode' => 'InvalidHttpPutResponseHopLimit.NotSupported', 'errorMessage' => 'The specified HttpPutResponseHopLimit not supported, more than 1 and less than 64 is reasonable.', 'description' => 'The specified HttpPutResponseHopLimit parameter is invalid. The valid values of this parameter are 1 to 64.'], ['errorCode' => 'InvalidOperation.VpcHasEnabledAdvancedNetworkFeature', 'errorMessage' => 'The specified vpc has enabled advanced network feature.', 'description' => 'Advanced features are enabled for the specified VPC. You cannot create low-specification instances in the VPC.'], ['errorCode' => 'InvalidChargeType.CapacityReservationNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidPerformanceLevel.ValueNotSupported', 'errorMessage' => 'The current ZoneId or InstanceType does not support PL0 of cloud_essd.', 'description' => ''], ['errorCode' => 'InvalidKMSKeyId.NotSymmetric', 'errorMessage' => 'The specified parameter KmsKeyId must be symmetric.', 'description' => 'The KMSKey used for encryption must be a symmetric encryption key.'], ['errorCode' => 'InvalidDedicatedHostClusterId.NotFound', 'errorMessage' => 'The specified DedicatedHostClusterId does not exist.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostClusterId.InValid', 'errorMessage' => 'The specified Dedicated Host Cluster is invalid.', 'description' => ''], ['errorCode' => 'InvalidOperation.UserNotSupported', 'errorMessage' => 'Reseller user do not support purchase at the moment.', 'description' => ''], ['errorCode' => 'InvalidDeploymentSetId.NotFound', 'errorMessage' => 'The parameter DeploymentSetId is invalid.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptionsId', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptionsId', 'errorMessage' => 'The specified PrivatePoolOptions.Id is invalid.', 'description' => 'The specified PrivatePoolOptions.Id parameter is invalid.'], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The InstanceType does not match the PrivatePool.', 'description' => 'The instance type and the private pool do not match.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The ZoneId does not match the PrivatePool.', 'description' => 'The zone and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.NoStock', 'errorMessage' => 'The PrivatePool has been used up.', 'description' => 'The capacity of the specified private pool (elastic assurance, capacity reservation) has been used up.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool is expired or inactive.', 'description' => 'The private pool has expired or is not activated.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'HibernationConfigured.InstanceTypeNotSupport', 'errorMessage' => 'The specified instance type is not support.', 'description' => ''], ['errorCode' => 'HibernationConfigured.ImageNotEncrypted', 'errorMessage' => 'The hibernation configured instance only support encrypted image.', 'description' => ''], ['errorCode' => 'HibernationConfigured.MemorySizeTooBig', 'errorMessage' => 'The hibernation configured instance memory size is too big.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.LessThanMemSize', 'errorMessage' => 'The specified parameter SystemDisk.Size is less than the memory size.', 'description' => ''], ['errorCode' => 'InvalidCloudBoxZone.OperationNotSupported', 'errorMessage' => 'The cloud box zone does not support creating prepaid or encrypted resources.', 'description' => ''], ['errorCode' => 'InvalidInternetMaxBandwidthOut.Malformed', 'errorMessage' => 'The specified parameter InternetMaxBandwidthOut is not valid.', 'description' => ''], ['errorCode' => 'InvalidInternetMaxBandwidthIn.Malformed', 'errorMessage' => 'The specified parameter InternetMaxBandwidthIn is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.CloudboxNotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'NotSupportSnapshotEncrypted.ShareImage ', 'errorMessage' => 'Shared snapshot creating encrypted disks with native snapshot encrypt is not supported.', 'description' => ''], ['errorCode' => 'QuotaExceed.DiskCapacity', 'errorMessage' => 'The used capacity of disk type has exceeded the quota in the zone, %s.', 'description' => 'The capacity of disks that belong to the specified disk category exceeds the quota limit for the zone.'], ['errorCode' => 'InvalidParameter.DataEncryptedKeyCreateFailed', 'errorMessage' => 'Create kms data encrypted key fail. If you need further assistance, you can contact the KMS Technical Support.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.NotSupported', 'errorMessage' => 'The specified disk category is not supported.', 'description' => ''], ['errorCode' => 'InvalidDestinationZone.DeploymentSetMismatch', 'errorMessage' => 'Error happened, %s.', 'description' => ''], ['errorCode' => 'NoPermission.Price', 'errorMessage' => 'The operation requires price permission. Please either apply for permission from your main account, or set the parameter AutoPay as true.', 'description' => 'This operation requires price permission. Please apply for permission to your master account, or set the parameter AutoPay to true for automatic payment.'], ['errorCode' => 'InvalidParameter.DedicatedRegionNotSupported', 'errorMessage' => 'The specified action is rejected because the specified ECS instance in the dedicated region does not support public IP.', 'description' => 'Parameter error codes not supported in the dedicated region'], ['errorCode' => 'InvalidParameter.KmsNotEnabled', 'errorMessage' => 'Failed to perform this operation because KMS is not activated.', 'description' => 'You need to activate KMS key management service.'], ['errorCode' => 'InvalidParameter.Encrypted.KmsNotEnable', 'errorMessage' => 'Failed to perform this operation because KMS is not activated.', 'description' => 'You need to activate KMS key escrow service.'], ['errorCode' => 'InvalidParam.EncryptedMismatch', 'errorMessage' => 'Creating encrypted disks with shared encrypted image requires replacing encryption keys.', 'description' => 'You must change the encryption key to create a cloud disk after sharing an encrypted image.'], ['errorCode' => 'InvalidParameter.Encrypted', 'errorMessage' => 'Creating non-encrypted disks with encrypted snapshots is not supported.', 'description' => 'Creating a non-encrypted disk with an encrypted snapshot is not supported.'], ['errorCode' => 'QuotaExceeded.InternetBandwidth', 'errorMessage' => '%s.', 'description' => 'Under your current account, the public network bandwidth of the Pay-As-You-Go ECS instance charged by fixed bandwidth exceeds the total bandwidth quota limit.'], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'The specified VSwitch does not exist in the specified region.', 'description' => 'The specified vSwitch does not exist in the specified region.'], ['errorCode' => 'OperationDenied.TestAccountRetricted', 'errorMessage' => 'Test-account for testing has been prohibited from creating instance in this region. Please contact 400181.', 'description' => 'Test accounts are not allowed to create instances in the local region. Please contact Cost and Resource Center @ Gao Chong (400181)'], ], [ ['errorCode' => 'InvalidRamRole.NotEcsRole', 'errorMessage' => 'The specified ram role is not authorized for ecs, please check your role policy.', 'description' => 'The specified RAM role is not authorized to use ECS. Check your role policies.'], ], 403 => [ ['errorCode' => 'InvalidDiskCategory.NotSupported', 'errorMessage' => 'The specified disk category is not support the specified instance type.', 'description' => ''], ['errorCode' => 'ImageNotSubscribed', 'errorMessage' => 'The specified image has not be subscribed.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified Image is disabled or is deleted.', 'description' => 'The specified image is disabled or deleted.'], ['errorCode' => 'InvalidSystemDiskCategory.ValueUnauthorized', 'errorMessage' => 'The disk category is not authorized.', 'description' => 'You are not authorized to use the specified disk category.'], ['errorCode' => 'InvalidSnapshotId.NotReady', 'errorMessage' => 'The specified snapshot has not completed yet.', 'description' => ''], ['errorCode' => 'InstanceDiskCategoryLimitExceed', 'errorMessage' => 'The total size of specified disk category in an instance exceeds.', 'description' => 'The total size of disks of the specified category exceeds the maximum capacity allowed for an instance.'], ['errorCode' => 'InvalidDevice.InUse', 'errorMessage' => 'The specified device has been occupied.', 'description' => ''], ['errorCode' => 'ImageRemovedInMarket', 'errorMessage' => 'The specified market image is not available, Or the specified user defined image includes product code because it is based on an image subscribed from marketplace, and that image in marketplace includeing exact the same product code has been removed.', 'description' => 'The specified Alibaba Cloud Marketplace image is unavailable, or the specified custom image contains the product code of the Alibaba Cloud Marketplace image from which the custom image is derived and the Alibaba Cloud Marketplace image was removed from Alibaba Cloud Marketplace.'], ['errorCode' => 'CategoryNotSupported', 'errorMessage' => 'The specified zone does not offer the specified disk category.', 'description' => ''], ['errorCode' => 'OperationDenied.NoStock', 'errorMessage' => 'The requested resource is sold out in the specified zone; try other types of resources or other regions and zones.', 'description' => 'The requested resources are insufficient.'], ['errorCode' => 'QuotaExceed.PortableCloudDisk', 'errorMessage' => 'The quota of portable cloud disk exceeds.', 'description' => ''], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => 'The maximum number of instances in a security group is exceeded.', 'description' => ''], ['errorCode' => 'NodeControllerUnavailable', 'errorMessage' => 'The Node Controller is temporarily unavailable.', 'description' => ''], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => 'There is no authority to create instance in the specified region.', 'description' => 'You are not authorized to create instances in the specified region.'], ['errorCode' => 'InvalidSnapshotId.NotDataDiskSnapshot', 'errorMessage' => 'The specified snapshot is system disk snapshot.', 'description' => ''], ['errorCode' => 'DeleteWithInstance.Conflict', 'errorMessage' => 'The specified disk is not a portable disk and cannot be set to DeleteWithInstance attribute.', 'description' => ''], ['errorCode' => 'InstanceDiskNumLimitExceed', 'errorMessage' => 'The number of specified disk in an instance exceeds.', 'description' => 'The number of specified disks exceeds the upper limit for an instance.'], ['errorCode' => 'IoOptimized.NotSupported', 'errorMessage' => 'The specified image is not support IoOptimized Instance.', 'description' => ''], ['errorCode' => 'ImageNotSupportInstanceType', 'errorMessage' => 'The specified image don\'t support the InstanceType instance.', 'description' => 'The specified image does not support the selected instance type.'], ['errorCode' => 'InvalidDiskSize.TooSmall', 'errorMessage' => 'Specified disk size is less than the size of snapshot.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.Mismatch', 'errorMessage' => 'The specified disk categories combination is not supported.', 'description' => ''], ['errorCode' => 'QuotaExceed.BuyImage', 'errorMessage' => 'The specified image is from the image market, You have not bought it or your quota has been exceeded.', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'The VSwitchId provided does not exist in our records.', 'description' => 'The specified vSwitch ID does not exist.'], ['errorCode' => 'InvalidParameter.ResourceOwnerAccount', 'errorMessage' => 'ResourceOwnerAccount is Invalid.', 'description' => 'The specified ResourceOwnerAccount parameter is invalid.'], ['errorCode' => 'InvalidUserData.Forbidden', 'errorMessage' => 'User not authorized to input the parameter "UserData", please apply for permission "UserData".', 'description' => ''], ['errorCode' => 'Zone.NotOpen', 'errorMessage' => 'The specified zone is not granted to you to buy resources yet.', 'description' => ''], ['errorCode' => 'Zone.NotOnSale', 'errorMessage' => 'The specified zone is not available for purchase.', 'description' => 'The requested resources are unavailable in the specified zone. Try a different instance type or select a different region or zone.'], ['errorCode' => 'InvalidClusterId.NotFound', 'errorMessage' => 'The specified clusterId does not exist.', 'description' => 'The specified ClusterId parameter does not exist.'], ['errorCode' => 'InvalidResourceType.NotSupported', 'errorMessage' => '%s', 'description' => 'The specified resource combination does not exist. Change to another zone or specification.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.ZoneNotSupported', 'errorMessage' => 'The specified zone does not support this instancetype.', 'description' => 'The specified instance type is not supported in the specified zone.'], ['errorCode' => 'InvalidPayMethod', 'errorMessage' => 'The specified pay method is not valid.', 'description' => ''], ['errorCode' => 'OperationDenied.ImageNotValid', 'errorMessage' => 'The specified Image is disabled or is deleted.', 'description' => ''], ['errorCode' => 'InvalidUserData.Base64FormatInvalid', 'errorMessage' => 'The specified UserData is not valid.', 'description' => ''], ['errorCode' => 'InstanceType.Offline', 'errorMessage' => '%s', 'description' => 'The operation is not supported while the instance type is retired or while resources of the instance type are insufficient.'], ['errorCode' => 'DependencyViolation.WindowsInstance', 'errorMessage' => 'The instance creating is window, cannot use ssh key pair to login.', 'description' => 'The specified instance is a Windows instance and does not support logons using SSH key pairs.'], ['errorCode' => 'RealNameAuthenticationError', 'errorMessage' => 'Your account has not passed the real-name authentication yet.', 'description' => 'You have not completed real-name verification. Complete real-name verification and try again.'], ['errorCode' => 'InvalidNetworkType.MismatchRamRole', 'errorMessage' => 'Ram role cannot be applied to instances of Classic network type.', 'description' => 'Instance RAM roles can be used only for instances of the VPC type, not for instances of the classic network type.'], ['errorCode' => 'InvalidUser.PassRoleForbidden', 'errorMessage' => 'The RAM user does not have the privilege to pass a RAM role.', 'description' => 'The RAM user is not authorized to pass a RAM role.'], ['errorCode' => 'InvalidImage.NotSupported', 'errorMessage' => 'The specified image does not support vSGX instance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'IncorrectVpcStatus', 'errorMessage' => 'Current VPC status does not support this operation.', 'description' => ''], ['errorCode' => 'InvalidParameter.NotMatch', 'errorMessage' => '%s', 'description' => 'A specified parameter is invalid. Check whether parameter conflicts exist.'], ['errorCode' => 'OperationDenied.InvalidNetworkType', 'errorMessage' => '%s', 'description' => 'The network type does not support this operation.'], ['errorCode' => 'InvalidSpotInterruptionBehavior.ClassicNetworkNotSupport', 'errorMessage' => 'The specified SpotInterruptionBehavior does not support Classic network Instance.', 'description' => ''], ['errorCode' => 'InvalidSpotInterruptionBehavior.LocalDiskNotSupport', 'errorMessage' => 'The specified SpotInterruptionBehavior does not support local disk instance.', 'description' => ''], ['errorCode' => 'QuotaExceed.PostPaidDisk', 'errorMessage' => 'Living postPaid disks quota exceeded.', 'description' => ''], ['errorCode' => 'QuotaExceed.DeploymentSetInstanceQuotaFull', 'errorMessage' => 'Instance quota in one deployment set exceeded.', 'description' => ''], ['errorCode' => 'InvalidVSwitch.DefaultVSwitchNotSupport', 'errorMessage' => 'The specified zone in vpc can\'t support create default vSwitch.', 'description' => ''], ['errorCode' => 'OperationDenied.LocalDiskUnsupported', 'errorMessage' => 'The configuration change is not allowed when the specified instance has local disks mounted.', 'description' => 'Instance types cannot be changed for instances that have local disks attached.'], ['errorCode' => 'OperationDenied.InconsistentNetwork', 'errorMessage' => 'The specified security group and vswitch are not in the same vpc.', 'description' => 'The specified security group and vSwitch do not belong to the same VPC.'], ['errorCode' => 'DefaultVswitch.Existed', 'errorMessage' => 'The default vswitch for VPC already exists.', 'description' => ''], ['errorCode' => 'InvalidChargeType.ValueNotSupported', 'errorMessage' => 'Deletion protection is only valid for postPaid instance, not for prePaid or spot instance.', 'description' => 'Release protection can be enabled only for pay-as-you-go instances.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'CategoryViolation', 'errorMessage' => 'The specified instance does not support this operation because of its disk category.', 'description' => ''], ['errorCode' => 'ResourcesNotInSameZone', 'errorMessage' => 'The specified instance and dedicated host are not in the same zone.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support byok.', 'description' => 'The bring your own key (BYOK) feature is not supported in the region.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in byok white list.', 'description' => 'You are not authorized to use the bring your own key (BYOK) feature. Try again when you are authorized.'], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'SecurityRisk.3DVerification', 'errorMessage' => 'We have detected a security risk with your default credit or debit card. Please proceed with verification via the link in your email.', 'description' => ''], ['errorCode' => 'InvalidDisk.SystemDiskSize', 'errorMessage' => 'The specified SystemDiskSize beyond the permitted range.', 'description' => 'The specified system disk size exceeds the maximum allowed value.'], ['errorCode' => 'InsufficientBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'Mayi.InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ['errorCode' => 'InvalidNetworkType', 'errorMessage' => 'The network type is not support in this region.', 'description' => 'The network type NetworkType entered is no longer supported.'], ['errorCode' => 'InvalidAccountStatus', 'errorMessage' => 'Your account status is invalid, please contact customer service.', 'description' => ''], ['errorCode' => 'QuotaExceeded.PrivateIpAddress', 'errorMessage' => '%s', 'description' => 'The internal IP address of the specified switch VSwitch is insufficient.'], ['errorCode' => 'InvalidVSwitchId.IpInvalid', 'errorMessage' => '%s', 'description' => 'The specified private IP address is invalid.'], ['errorCode' => 'OperationDenied.PerformanceLevelNotMatch', 'errorMessage' => 'The specified DataDisk.n.PerformanceLevel and DataDisk.n.Size do not match.', 'description' => ''], ['errorCode' => 'InvalidStorageSetName.Malformed', 'errorMessage' => 'Specified parameter StorageSetName is not valid.', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'Specified parameter Description is not valid.', 'description' => ''], ['errorCode' => 'InvalidMaxPartitionNumber.Malformed', 'errorMessage' => 'Specified parameter MaxPartitionNumber is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.StorageSetPartitionNumber', 'errorMessage' => 'Specified parameter StorageSetPartitionNumber is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.StorageSetId', 'errorMessage' => 'Specified parameter StorageSetId is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.StorageSetZoneId', 'errorMessage' => 'Specified parameter StorageSetZoneId is not valid.', 'description' => ''], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'OperationDenied.RegionIdNotSupported', 'errorMessage' => 'Region not support spot duration instance.', 'description' => ''], ['errorCode' => 'OperationDenied.FlavorNotSupported', 'errorMessage' => 'Flavor not support spot duration instance.', 'description' => ''], ['errorCode' => 'OperationDenied.TimestampNotSupported', 'errorMessage' => 'Timestamp not support spot duration instance.', 'description' => ''], ['errorCode' => 'OperationDenied.PrepayNotAvailable', 'errorMessage' => 'Prepay instance is not available now.', 'description' => ''], ['errorCode' => 'OperationDenied.PaygNotAvailable', 'errorMessage' => 'Pay-as-you-go instance is not available now.', 'description' => ''], ['errorCode' => 'EnterpriseGroupLimited.MutliGroupType', 'errorMessage' => 'The specified instance can not join multi SecurityGroup types.', 'description' => 'The specified instance cannot belong to both a basic and an advanced security group. You can call the DescribeSecurityGroups operation to query the type of security groups.'], ['errorCode' => 'EnterpriseGroupLimited.InstanceType', 'errorMessage' => 'The specified instance type does not support Enterprise SecurityGroup.', 'description' => ''], ['errorCode' => 'InternalError.AllocateUnderlayIp', 'errorMessage' => 'Allocate underlay ip for the instance error.', 'description' => 'Failed to assign the Underlay IP address to the instance.'], ['errorCode' => 'OperationDenied.BidOwnResource', 'errorMessage' => 'Bid user can not own resource.', 'description' => ''], ['errorCode' => 'OperationDenied.CloudSSDNotSupported', 'errorMessage' => 'The specified available zone does not offer the cloud_ssd disk, use cloud_essd instead.', 'description' => ''], ['errorCode' => 'InvalidVPCStatus.NotWorking', 'errorMessage' => 'The specified VPC subnet status is not working.', 'description' => ''], ['errorCode' => 'QuotaExceed.ElasticQuota', 'errorMessage' => 'No additional quota is available for the specified ECS instance type.', 'description' => 'The maximum number of instances of the specified instance type in the region has been reached. Reduce the quantity of instances that you want to purchase or try another region or instance type. Alternatively, you can go to the ECS console or Quota Center to request a quota increase.'], ['errorCode' => 'QuotaExceeded.PostpaidDataDiskCapacity', 'errorMessage' => 'The quota of postpaid data disk capacity exceeds.', 'description' => 'The used capacity of the pay-as-you-go disk reaches the quota limit.'], ['errorCode' => 'InvalidImageFamily.MissingAvailableImage', 'errorMessage' => 'There is no available image related to the specified image family.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotSupportEncryptAlgorithm', 'errorMessage' => 'The current region does not support creating encrypted disks with EncryptAlgorithm.', 'description' => ''], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ['errorCode' => 'Forbidden.OnlySupportEnterpriseGroup', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'HibernationConfigured.InstanceOperationForbidden', 'errorMessage' => 'The operation is not permitted due to limit of the hibernation configured instance.', 'description' => 'The operation cannot be performed due to the limitations of instances for which the instance hibernation feature is enabled.'], ['errorCode' => 'InstanceDiskLimitExceeded', 'errorMessage' => 'The amount of the disk on instance reach its limits.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NotSupportDiskCategory', 'errorMessage' => 'The instanceType of the specified instance does not support this disk category.', 'description' => 'The instance type does not support the current disk category. Try another instance type. For information about the disk categories supported by instance types, see the instance family documentation.'], ['errorCode' => 'NotSupportSnapshotEncrypted.DiskCategory', 'errorMessage' => 'The specified disk category does not support creating encrypted system disks or creating encrypted data disks from snapshots. Check the DiskCategory or Encrypted parameter, or check your account for default encryption settings.', 'description' => 'This disk type does not support creating encrypted system disks or creating encrypted data disks in snapshot mode. Please check the disk type and encryption parameters you entered, or check whether you have configured the default encryption configuration for account cloud disks.'], ['errorCode' => 'InvalidOperation.PublicIpAddressNoStock', 'errorMessage' => 'The public IP address for the specified Region or ChargeType of the instance is out of stock. Please try another Region or ChargeType.', 'description' => 'Under the conditions of the specified region or payment type, the public IP address inventory of the instance is insufficient. Please try another region or payment type.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK (Customer Master Key) must be in an active state.', 'description' => 'The CMK (Customer Master Key) must be in an active state.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.', 'description' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.'], ['errorCode' => 'InvalidEncrypted.NotMatchDiskDefaultEncryption', 'errorMessage' => 'Enabling disk default encryption prevents the creation of non-encrypted disks.', 'description' => 'After the default encryption of the cloud disk account is enabled, an unencrypted disk cannot be created.'], ['errorCode' => 'InvalidEncrypted.NotMatchSnapshot', 'errorMessage' => 'The specified parameter Encrypted must be set to true when creating disks with encrypted snapshots.', 'description' => 'When you create a disk using an encrypted snapshot, the specified parameter Encrypted must be set to true.'], ], [ ['errorCode' => 'InvalidStorageClusterId.NotExist', 'errorMessage' => 'The specified StorageClusterId does not exist in current region.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'IoOptimized.NotSupported', 'errorMessage' => 'The specified instancetype is not support IoOptimized instance.', 'description' => ''], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The ZoneId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => 'The specified SecurityGroupId does not exist.', 'description' => 'The specified security group does not exist in this account. Check whether the security group ID is correct.'], ['errorCode' => 'InvalidDataDiskSnapshotId.NotFound', 'errorMessage' => 'The specified parameter "DataDisk.n.SnapshotId" is not valid.', 'description' => ''], ['errorCode' => 'InvalidClusterId.NotFound', 'errorMessage' => 'The ClusterId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified Image is disabled or is deleted.', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'Specified virtual switch does not exist.', 'description' => 'The specified vSwitch ID does not exist.'], ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified ImageId does not exist.', 'description' => 'The specified image does not exist in this account. Check whether the image ID is correct.'], ['errorCode' => 'InvalidInstanceChargeType.NotFound', 'errorMessage' => 'The InstanceChargeType does not exist in our records.', 'description' => ''], ['errorCode' => 'DependencyViolation.IoOptimized', 'errorMessage' => 'The specified instancetype must be IoOptimized instance.', 'description' => ''], ['errorCode' => 'PaymentMethodNotFound', 'errorMessage' => 'No payment method has been registered on the account.', 'description' => ''], ['errorCode' => 'HOSTNAME_ILLEGAL', 'errorMessage' => 'The specified parameter Hostname is not valid.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.LessThanImageSize', 'errorMessage' => 'The specified parameter SystemDisk.Size is less than the image size.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.LessThanMinSize', 'errorMessage' => 'The specified parameter SystemDisk.Size is less than the min size.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.MoreThanMaxSize', 'errorMessage' => 'The specified SystemDisk.Size parameter exceeds the maximum size.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified vm bandwidth is not valid.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize', 'errorMessage' => 'The specified parameter SystemDisk.Size is invalid.', 'description' => 'The specified SystemDisk.Size parameter is invalid.'], ['errorCode' => 'InvalidKeyPairName.NotFound', 'errorMessage' => 'The specified parameter KeyPairName does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidRamRole.NotFound', 'errorMessage' => 'The specified RAMRoleName does not exist.', 'description' => 'The specified RamRoleName parameter does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'InvalidMarketImage.NotFound', 'errorMessage' => 'The specified marketplace image does not exist, please change the imageId and try again.', 'description' => 'The specified Alibaba Cloud Marketplace image does not exist. Modify the ImageId parameter and try again.'], ['errorCode' => 'DeploymentSet.NotFound', 'errorMessage' => 'The specified deployment set does not exist.', 'description' => 'The specified deployment set does not exist.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.NotFound', 'errorMessage' => 'The specified KMSKeyId does not exist.', 'description' => 'The specified KMSKeyId parameter does not exist.'], ['errorCode' => 'InvalidDiskIds.NotPortable', 'errorMessage' => 'The specified DiskId is not portable.', 'description' => ''], ], 409 => [ ['errorCode' => 'OperationConflict', 'errorMessage' => 'Request was denied due to conflict with a previous request,please try again later.', 'description' => ''], ], 429 => [ ['errorCode' => 'Throttling.Resource', 'errorMessage' => 'The request throttle by resource operation.', 'description' => 'Request is controlled by resource operation.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ['errorCode' => 'InvalidImage.OSType', 'errorMessage' => 'The image OSType does not support this instance type.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"OrderId\\": \\"1234567890\\",\\n \\"TradePrice\\": 0.165\\n}","type":"json"}]', 'title' => 'Creates an instance.', 'description' => '> This operation is no longer maintained. Use [RunInstances](~~2679677~~) instead.'."\n" ."\n" .''."\n" ."\n" .'**Before you call this operation, make sure that you fully understand the billing methods and [pricing](https://www.aliyun.com/price/product#/ecs/detail) of ECS.**'."\n" ."\n" .''."\n" ."\n" .''."\n" ."\n" .'**Before you call this operation, make sure that you fully understand the billing methods and [pricing](https://www.alibabacloud.com/zh/pricing-calculator#/commodity/vm_intl) of ECS.**'."\n" ."\n" .''."\n" ."\n\n" ."\n\n" .'This is an asynchronous operation. After a request to create an instance is sent, the instance ID is returned. The instance is not immediately created. Call [DescribeInstanceStatus](~~2679688~~) to query the instance status. When the status is `Stopped`, the instance is created. Then you can call [StartInstance](~~2679679~~) to start the instance.'."\n" ."\n\n" .'### Before you begin'."\n" ."\n" .''."\n" ."\n" .'- Make sure that your account has passed real-name registration. For more information, see [Real-name registration documentation](~~48263~~).'."\n" ."\n" .''."\n" ."\n\n" .'- Creating an instance incurs charges. Make sure that you understand the billable methods of Elastic Computing Service (ECS). For more information, see [Billing overview](~~25398~~).'."\n" .' '."\n" .'- Make sure that the total number of instances or the total number of vCPUs across all instance types does not exceed the quota. For more information, see [Quota Center](https://quotas.console.aliyun.com/products/ecs/quotas).'."\n" .'- Before creating a VPC-connected instance, create a VPC in the corresponding region. For more information, see [Create a VPC](~~65430~~).'."\n" ."\n" .'### Before you begin'."\n" .'- When you invoke this operation, the system does not send notifications (including text messages, emails, or internal messages) about instance creation.'."\n" .'- If the billable methods of the instance is subscription (`PrePaid`), active coupon in your account are used by default during payment.'."\n" .'- If the instance memory is 512 MiB, you cannot use Windows Server images except through the half-year channel. If the instance memory is 4 GiB or more, you cannot use 32-bit operating system images.'."\n" .'- Instances created by invoking this operation are not assigned Internet IP addresses. If the public bandwidth is greater than 0, invoke [AllocatePublicIpAddress](~~25544~~) to assign a public IP address. If the public bandwidth is 0, invoke [ModifyInstanceNetworkSpec](~~2679879~~) to adjust the bandwidth and then invoke [AllocatePublicIpAddress](~~25544~~) to assign a public IP address.'."\n" ."\n" .'> In a single region, the total peak pay-by-bandwidth Internet bandwidth for a single Alibaba Cloud account is limited. For more information, see [Public bandwidth limits](~~25412#BandwidthQuota~~).'."\n" ."\n" .'### Recommendations'."\n" .'- **Instance type selection**: See [Instance family](~~25378~~) or invoke [DescribeInstanceTypes](~~25620~~) to query the performance data of the target instance type. You can also see [Settings for instance type selection](~~58291~~) to learn how to select an instance type.'."\n" .'- **Check active resources**: Invoke [DescribeAvailableResource](~~66186~~) to query active resources in a specific region or zone.'."\n" .'- **User data**: If the instance meets the requirements for [instance user data](~~49121~~), you can pass in UserData. The `UserData` data is not encrypted when the API request is sent. Do not send confidential information such as passwords or private keys in plaintext. If you must pass in such information, encrypt it and use Base64 encoding before passing it in. Then perform decryption inside the instance.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-03-19T08:46:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-26T01:50:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-25T08:14:38.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-27T08:16:40.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-08-21T02:24:34.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-06-27T09:06:45.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-03-21T02:04:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-01-30T05:34:58.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-01-15T13:06:32.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-10-10T03:22:14.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-06-20T08:08:25.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-05-08T02:14:22.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-28T03:43:11.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-08-31T03:21:58.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-08T11:00:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateInstance'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateInstance', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:VPC', 'validationType' => 'always'], ['conditionKey' => 'vpc:IsDefaultVSwitch', 'validationType' => 'always'], ['conditionKey' => 'vpc:IsDefaultVpc', 'validationType' => 'always'], ['conditionKey' => 'ecs:IsDiskEncrypted', 'validationType' => 'always'], ['conditionKey' => 'ecs:InstanceType', 'validationType' => 'always'], ['conditionKey' => 'ecs:InstanceTypeFamily', 'validationType' => 'always'], ['conditionKey' => 'ecs:ImageOwnerId', 'validationType' => 'always'], ['conditionKey' => 'ecs:ImageSource', 'validationType' => 'always'], ['conditionKey' => 'ecs:NotSpecifySecurityGroupId'], ['conditionKey' => 'ecs:LoginAsNonRoot'], ['conditionKey' => 'ecs:IsSystemDiskByokEncrypted'], ['conditionKey' => 'ecs:IsDiskByokEncrypted'], ['conditionKey' => 'ecs:PasswordInherit'], ['conditionKey' => 'ecs:PasswordCustomized'], ['conditionKey' => 'ecs:IsSystemDiskEncrypted'], ['conditionKey' => 'ecs:ImagePlatform'], ['conditionKey' => 'ecs:LoginAsNonRoot'], ['conditionKey' => 'ecs:IsSystemDiskByokEncrypted'], ['conditionKey' => 'ecs:IsDiskByokEncrypted'], ['conditionKey' => 'ecs:PasswordInherit'], ['conditionKey' => 'ecs:PasswordCustomized'], ['conditionKey' => 'ecs:IsSystemDiskEncrypted'], ['conditionKey' => 'ecs:ImagePlatform'], ['conditionKey' => 'ecs:SecurityHardeningMode'], ['conditionKey' => 'vpc:CreateDefaultVpc'], ['conditionKey' => 'ecs:SecurityEnhancementStrategy'], ['conditionKey' => 'ecs:AssociatePublicIpAddress'], ['conditionKey' => 'ecs:InstanceChargeType'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'CreateKeyPair' => [ 'summary' => 'Calls CreateKeyPair to create an SSH key pair. The system stores the public key and returns the unencrypted PEM-encoded PKCS#8 format private key. You must securely store the private key on your own.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28833', 'abilityTreeNodes' => ['FEATUREecsNMEQ4B'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the key pair. You can call [DescribeRegions](~~25609~~) to query the latest region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', '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 and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => true, 'example' => 'testKeyPairName', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the SSH key pair belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the key pair. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. The tag key cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the key pair. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with acs:. The tag value cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PrivateKeyBody' => ['description' => 'The private key of the key pair. The private key is PEM-encoded in PKCS#8 format.', 'type' => 'string', 'example' => 'MIIEpAIBAAKCAQEAtReyMzLIcBH78EV2zj****', 'title' => ''], 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], 'KeyPairId' => ['description' => 'The ID of the SSH key pair.', 'type' => 'string', 'example' => 'ssh-bp67acfmxazb4p****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'KeyPairFingerPrint' => ['description' => 'The fingerprint of the key pair. The public key fingerprint format is defined by RFC 4716 and uses the MD5 message digest algorithm. For more information, see [RFC 4716](https://tools.ietf.org/html/rfc4716).', 'type' => 'string', 'example' => '89:f0:ba:62:ac:b8:aa:e1:61:5e:fd:81:69:86:6d:6b:f0:c0:5a:**', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidKeyPairName.Malformed', 'errorMessage' => 'Specified Key Pair name is not valid.', 'description' => ''], ['errorCode' => 'KeyPair.AlreadyExist', 'errorMessage' => 'The key pair already exist.', 'description' => 'A key pair with the same name already exists. Key pair names must be unique.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ], 403 => [ ['errorCode' => 'QuotaExceed.KeyPair', 'errorMessage' => 'The key pair quota exceeds.', 'description' => ''], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], ], 'title' => 'CreateKeyPair', 'description' => 'In addition to calling CreateKeyPair to create a key pair, you can use a third-party tool to create a key pair and then upload it ([ImportKeyPair](~~51774~~)) to a region. The usage of a key pair created by a third-party tool is the same as that of a key pair created by the system.'."\n" ."\n" .'You can have up to 500 key pairs in each region. For more information, see [Limits](~~25412~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-01-13T11:05:31.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateKeyPair'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateKeyPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'KeyPair', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:keypair/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PrivateKeyBody\\": \\"MIIEpAIBAAKCAQEAtReyMzLIcBH78EV2zj****\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"KeyPairId\\": \\"ssh-bp67acfmxazb4p****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"KeyPairFingerPrint\\": \\"89:f0:ba:62:ac:b8:aa:e1:61:5e:fd:81:69:86:6d:6b:f0:c0:5a:**\\"\\n}","type":"json"}]', ], 'CreateLaunchTemplate' => [ 'summary' => 'Creates an ECS instance launch template. A launch template eliminates the need to configure a large number of parameters every time you create an instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29253', 'abilityTreeNodes' => ['FEATUREecsIZ42RQ'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateTag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tag key-value pairs of the launch template itself.'."\n" ."\n" .'> Currently, you can create and query tags for launch templates only by using API operations. The console does not support creating or viewing these tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag key-value pairs of the launch template itself.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the launch template. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. The tag key cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the launch template. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. The tag value cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'LaunchTemplateName', 'in' => 'query', 'schema' => ['description' => 'The name of the launch template. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://` or `https://`. The name can contain digits, colons (:), underscores (_), and hyphens (-).', 'type' => 'string', 'required' => true, 'example' => 'testLaunchTemplateName', 'title' => ''], ], [ 'name' => 'VersionDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testVersionDescription', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The image ID. You can call [DescribeImages](~~25534~~) to query available image resources.', 'type' => 'string', 'required' => false, 'example' => 'win2008r2_64_ent_sp1_en-us_40G_alibase_20170915.vhd', 'title' => ''], ], [ 'name' => 'ImageOwnerAlias', 'in' => 'query', 'schema' => ['description' => 'The source of the image. Valid values:'."\n" ."\n" .'- system: a public image provided by Alibaba Cloud.'."\n" .'- self: a custom image that you created.'."\n" .'- others: a shared image from another Alibaba Cloud account.'."\n" .'- marketplace: an image from [Alibaba Cloud Marketplace](https://market.aliyun.com/)[Alibaba Cloud Marketplace](https://marketplace.alibabacloud.com/). You can use Alibaba Cloud Marketplace images directly without subscribing to them first. Check the billing details of the Alibaba Cloud Marketplace image on your own.', 'type' => 'string', 'required' => false, 'example' => 'system', 'title' => ''], ], [ 'name' => 'PasswordInherit', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the password preset in the image.'."\n" ."\n" .'> When you use this parameter, the Password parameter must be empty. Make sure that the image you use has a password configured.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type. For more information, see [Instance family](~~25378~~). You can also invoke [DescribeInstanceTypes](~~25620~~) to query the most recent instance type list.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5.large', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security group to which the instance belongs. Instances in the same security group can communicate with each other. A security group can contain up to 1,000 instances.'."\n" ."\n" .'> You cannot specify both `SecurityGroupId` and `SecurityGroupIds.N`.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg****', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the virtual private cloud (VPC).', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp12433upq1y5scen****', 'title' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The vSwitch ID. This parameter is required when you create a VPC-connected instance.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1s5fnvk4gn2tws0****', 'title' => ''], ], [ 'name' => 'InstanceName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance. The name must be 2 to 128 characters in length and can contain letters, digits, and characters from the Unicode letter category (including Chinese characters). The name can contain colons (:), underscores (_), periods (.), and hyphens (-). The default value is the `InstanceId` of the instance.'."\n" ."\n" .'When you create multiple ECS instances, you can specify sequential instance names. The names can contain brackets ([]) and commas (,). For more information, see [Specify sequential instance names or hostnames](~~196048~~).', 'type' => 'string', 'required' => false, 'example' => 'k8s-node-[1,4]-alibabacloud', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the instance. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testECSDescription', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthIn', 'in' => 'query', 'schema' => ['description' => 'The maximum inbound public bandwidth. Unit: Mbit/s. Valid values:'."\n" ."\n" .'- If the purchased outbound public bandwidth is less than or equal to 10 Mbit/s: 1 to 10. Default value: 10.'."\n" .'- If the purchased outbound public bandwidth is greater than 10 Mbit/s: 1 to the value of `InternetMaxBandwidthOut`. Default value: the value of `InternetMaxBandwidthOut`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthOut', 'in' => 'query', 'schema' => ['description' => 'The maximum outbound public bandwidth. Unit: Mbit/s. Valid values: 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'HostName', 'in' => 'query', 'schema' => ['description' => 'The hostname of the Elastic Compute Service server.'."\n" ."\n" .'- The hostname cannot start or end with a period (.) or a hyphen (-). It cannot contain consecutive periods (.) or hyphens (-).'."\n" .'- Windows instances: The hostname must be 2 to 15 characters in length and cannot contain periods (.) or consist entirely of digits. It can contain letters, digits, and hyphens (-).'."\n" .'- Other instances (such as Linux): The hostname must be 2 to 64 characters in length. It can contain multiple periods (.), with each segment between periods allowing letters, digits, and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testHostName', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the instance.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'SystemDisk.Category', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD). You can use the `SystemDisk.PerformanceLevel` parameter to set the performance level of the disk.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" ."\n" .'For retired instance types that are not I/O optimized, the default value is cloud. Otherwise, the default value is cloud_efficiency.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'SystemDisk.Size', 'in' => 'query', 'schema' => ['description' => 'The size of the system disk. Unit: GiB. Valid values:'."\n" ."\n" .'- cloud: 20 to 500.'."\n" .'- Other disk categories: 20 to 2048.'."\n" ."\n" .'The value of this parameter must be greater than or equal to max{20, ImageSize}.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '40', 'title' => ''], ], [ 'name' => 'SystemDisk.DiskName', 'in' => 'query', 'schema' => ['description' => 'The name of the system disk. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://` or `https://`. The name can contain digits, colons (:), underscores (_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testSystemDiskName', 'title' => ''], ], [ 'name' => 'SystemDisk.Description', 'in' => 'query', 'schema' => ['description' => 'The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testSystemDiskDescription', 'title' => ''], ], [ 'name' => 'SystemDisk.Iops', 'in' => 'query', 'schema' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'SystemDisk.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the ESSD used as the system disk. Valid values:'."\n" ."\n" .'- PL0 (default): a single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1: a single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: a single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: a single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [Enterprise SSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL0', 'title' => ''], ], [ 'name' => 'SystemDisk.DeleteWithInstance', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release the system disk when the instance is released. Valid values:'."\n" ."\n" .'- true: releases the system disk when the instance is released.'."\n" .'- false: does not release the system disk when the instance is released.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'SystemDisk.AutoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the automatic snapshot policy applied to the system disk.', 'type' => 'string', 'required' => false, 'example' => 'sp-gc7c37d4ylw7mtnk****', 'title' => ''], ], [ 'name' => 'SystemDisk.ProvisionedIops', 'in' => 'query', 'schema' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50000, 1000 × Capacity - Baseline Performance}.'."\n" ."\n" .'Baseline Performance = min{1,800 + 50 × Capacity, 50,000}'."\n" ."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~) and [Modify the provisioned performance of an ESSD AutoPL disk](~~413275~~).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '50000', 'title' => ''], ], [ 'name' => 'SystemDisk.BurstingEnabled', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the performance burst feature. Valid values:'."\n" ."\n" .'- true: enables the performance burst feature.'."\n" .'- false: does not enable the performance burst feature.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is I/O optimized. Valid values:'."\n" ."\n" .'- none: not I/O optimized.'."\n" .'- optimized: I/O optimized.', 'type' => 'string', 'required' => false, 'example' => 'optimized', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instance. Valid values:'."\n" ."\n" .'- PrePaid: subscription. If you set this parameter to PrePaid, confirm that your account supports balance payments and credit paymentsconfirm that your account supports credit payments. Otherwise, an `InvalidPayMethod` error is returned.'."\n" .'- PostPaid: pay-as-you-go.', 'type' => 'string', 'required' => false, 'example' => 'PrePaid', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The subscription duration of the resource. Unit: months. This parameter takes effect and is required only when `InstanceChargeType` is set to `PrePaid`. Valid values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'InternetChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method for network usage. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.'."\n" ."\n" .'> In **pay-by-traffic** mode, the peak inbound and outbound bandwidths are used as bandwidth upper limits instead of guaranteed service metrics. When resource contention occurs, the peak bandwidth may be limited. If your workloads require guaranteed bandwidth, use the **pay-by-bandwidth** mode.', 'type' => 'string', 'required' => false, 'example' => 'PayByTraffic', 'title' => ''], ], [ 'name' => 'EnableVmOsConfig', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the operating system configuration of the instance.'."\n" .'> This parameter will be deprecated. For better compatibility, use other parameters.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'NetworkType', 'in' => 'query', 'schema' => ['description' => 'The network type of the instance. Valid values:'."\n" ."\n" .'- classic: classic network. This feature has been retired. For more information, see [Retirement notice](~~2833134~~).'."\n" .'- vpc: VPC.', 'type' => 'string', 'required' => false, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'UserData', 'in' => 'query', 'schema' => ['description' => 'The instance user data. The data must be Base64-encoded. The maximum size of the raw data is 32 KB.', 'type' => 'string', 'required' => false, 'example' => 'ZWNobyBoZWxsbyBlY3Mh', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the key pair.'."\n" ."\n" .'- For Windows instances, this parameter is ignored. Even if you specify this parameter, only the `Password` content is used.'."\n" .'- For Linux instances, password-based logon is disabled during initialization.', 'type' => 'string', 'required' => false, 'example' => 'testKeyPairName', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance RAM role. You can call the RAM API [ListRoles](~~28713~~) to query the instance RAM roles that you have created.', 'type' => 'string', 'required' => false, 'example' => 'testRamRoleName', 'title' => ''], ], [ 'name' => 'AutoReleaseTime', 'in' => 'query', 'schema' => ['description' => 'The automatic release time. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" ."\n" .'- If the value of seconds (`ss`) is not `00`, the time is automatically rounded down to the start of the current minute (`mm`).'."\n" ."\n" .'- The earliest release time is 30 minutes after the current time.'."\n" ."\n" .'- The latest release time cannot be more than three years from the current time.', 'type' => 'string', 'required' => false, 'example' => '2018-01-01T12:05:00Z', 'title' => ''], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => ['description' => 'The preemption policy for the pay-as-you-go instance. This parameter takes effect when `InstanceChargeType` is set to `PostPaid`. Valid values:'."\n" ."\n" .'- NoSpot: The instance is a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: The instance is a spot instance with a user-defined maximum hourly price.'."\n" .'- SpotAsPriceGo: The instance is a spot instance for which the market price at the time of purchase is automatically used as the bid price.', 'type' => 'string', 'required' => false, 'example' => 'NoSpot', 'title' => ''], ], [ 'name' => 'SpotPriceLimit', 'in' => 'query', 'schema' => ['description' => 'The maximum hourly price of the instance. This parameter supports up to three decimal places and takes effect when `SpotStrategy` is set to `SpotWithPriceLimit`.', 'type' => 'number', 'format' => 'float', 'required' => false, 'maximum' => '999999', 'minimum' => '0', 'example' => '0.97', 'title' => ''], ], [ 'name' => 'SpotDuration', 'in' => 'query', 'schema' => ['description' => 'The protection period of the spot instance. Unit: hours. Default value: 1. Valid values:'."\n" .'- 1: After a spot instance is created, Alibaba Cloud ensures that the instance is not automatically released within 1 hour. After the 1-hour protection period ends, the system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" .'- 0: After a spot instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. Select an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'> This parameter takes effect only when SpotStrategy is set to SpotWithPriceLimit or SpotAsPriceGo.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the instance, block storage, and elastic network interface controller (NIC) belong.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'TemplateResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the launch template belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SecurityEnhancementStrategy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable security hardening for the operating system. Valid values:'."\n" ."\n" .'- Active: enables security hardening. This value is applicable only to public images.'."\n" .'- Deactive: does not enable security hardening. This value is applicable to all image types.', 'type' => 'string', 'required' => false, 'example' => 'Deactive', 'title' => ''], ], [ 'name' => 'PrivateIpAddress', 'in' => 'query', 'schema' => ['description' => 'The private IP address of the instance.'."\n" ."\n" .'When you specify a private IP address for a VPC-connected ECS instance, the IP address must be from the idle CIDR block of the vSwitch (`VSwitchId`).', 'type' => 'string', 'required' => false, 'example' => '10.1.**.**', 'title' => ''], ], [ 'name' => 'DeploymentSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'required' => false, 'example' => 'ds-bp1brhwhoqinyjd6****', 'title' => ''], ], [ 'name' => 'Ipv6AddressCount', 'in' => 'query', 'schema' => ['description' => 'The number of randomly generated IPv6 addresses to assign to the primary ENI. Valid values: 1 to 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'DataDisk', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of data disk information.', 'type' => 'array', 'items' => [ 'description' => 'The list of data disk information.', 'type' => 'object', 'properties' => [ 'PerformanceLevel' => ['description' => 'The performance level of the ESSD used as a data disk. The value of N must be the same as that in `DataDisk.N.Category=cloud_essd`. Valid values:'."\n" ."\n" .'- PL0: a single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1 (default): a single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: a single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: a single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [Enterprise SSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], 'Description' => ['description' => 'The description of the data disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testDataDiskDescription', 'title' => ''], 'SnapshotId' => ['description' => 'The ID of the snapshot used to create data disk N. Valid values of N: 1 to 16. After you specify `DataDisk.N.SnapshotId`, the `DataDisk.N.Size` parameter is ignored. The actual size of the created disk is the size of the specified snapshot.'."\n" ."\n" .'> You cannot use snapshots created on or before July 15, 2013. Such requests are rejected.', 'type' => 'string', 'required' => false, 'example' => 's-bp17441ohwka0yuh****', 'title' => ''], 'Size' => ['description' => 'The size of data disk N. Valid values of N: 1 to 16. Unit: GiB. Valid values:'."\n" ."\n" .'- cloud: 5 to 2000.'."\n" .'- cloud_efficiency: 20 to 32768.'."\n" .'- cloud_ssd: 20 to 32768.'."\n" .'- cloud_essd: The valid value range depends on the value of `DataDisk.N.PerformanceLevel`.'."\n" .' - PL0: 1 to 32768.'."\n" .' - PL1: 20 to 32768.'."\n" .' - PL2: 461 to 32768.'."\n" .' - PL3: 1261 to 32768.'."\n" .'- cloud_auto: 1 to 32,768.'."\n" .'- cloud_essd_entry: 10 to 32,768.'."\n" ."\n" .'The value of this parameter must be greater than or equal to the size of the snapshot specified by `SnapshotId`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2000', 'title' => ''], 'Device' => ['description' => 'The mount point of the data disk. The naming convention varies based on the number of data disks attached:'."\n" .'- 1 to 25 data disks: /dev/xvd`[b-z]`'."\n" ."\n" .'- More than 25 data disks: /dev/xvd`[aa-zz]`. For example, the 26th data disk is named /dev/xvdaa, the 27th data disk is named /dev/xvdab, and so on.'."\n" ."\n" .'> This parameter is intended only for full image (whole-machine image) scenarios. You can set this parameter to the mount point of a data disk in the full image and modify the corresponding `DataDisk.N.Size` and `DataDisk.N.Category` parameters to change the disk category and size of the data disk in the full image.', 'type' => 'string', 'required' => false, 'example' => '/dev/xvdb'."\n", 'title' => ''], 'DiskName' => ['description' => 'The name of the data disk. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://` or `https://`. The name can contain digits, colons (:), underscores (_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testDataDiskName', 'title' => ''], 'Category' => ['description' => 'The category of data disk N. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD.'."\n" .'- cloud: basic disk.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_regional_disk_auto: regional ESSD.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .' > The cloud_essd_entry value is supported only when `InstanceType` is set to the `ecs.u1` or `ecs.e` instance family.'."\n" .'- elastic_ephemeral_disk_standard: elastic ephemeral disk - standard.'."\n" .'- elastic_ephemeral_disk_premium: elastic ephemeral disk - Premium Edition.'."\n" ."\n" .'For I/O optimized instances, the default value is cloud_efficiency. For non-I/O optimized instances, the default value is cloud.'."\n" .'Default value description:'."\n" ."\n" .'- If InstanceType is a retired instance type that is not I/O optimized, the default value of this parameter is `cloud`.'."\n" .'- In other cases, the default value is `cloud_efficiency`.After January 30, 2026, if the I/O optimized instance type does not support cloud_auto, the default value is cloud_efficiency. Otherwise, the default value is cloud_auto, and the performance burst feature is enabled by default (which incurs additional fees. For details, see [Billing examples](~~368372#p_75k_2hp_7gp~~)). For more information, see [Change notice](https://www.aliyun.com/notice/117844).', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], 'DeleteWithInstance' => ['description' => 'Specifies whether to release the data disk when the instance is released. Valid values:'."\n" ."\n" .'- true: releases the data disk when the instance is released.'."\n" .'- false: does not release the data disk when the instance is released.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'Encrypted' => ['description' => 'Specifies whether to encrypt the data disk.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''], 'AutoSnapshotPolicyId' => ['description' => 'The ID of the automatic snapshot policy applied to the data disk.', 'type' => 'string', 'required' => false, 'example' => 'sp-m5e7fa9ute44ssa****', 'title' => ''], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50000, 1000 × Capacity - Baseline Performance}.'."\n" ."\n" .'Baseline Performance = min{1,800 + 50 × Capacity, 50,000}'."\n" ."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~) and [Modify the provisioned performance of an ESSD AutoPL disk](~~413275~~).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '50000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Specifies whether to enable the performance burst feature. Valid values:'."\n" ."\n" .'- true: enables the performance burst feature.'."\n" .'- false: does not enable the performance burst feature.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'KMSKeyId' => ['description' => 'The KMS key ID for the data disk.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 16, 'title' => '', 'example' => '', ], ], [ 'name' => 'NetworkInterface', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The network interface controller (NIC) information.', 'type' => 'array', 'items' => [ 'description' => 'The network interface controller (NIC) information.', 'type' => 'object', 'properties' => [ 'VSwitchId' => ['description' => 'The vSwitch ID of the network interface controller (NIC).'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- Valid values of N: 1 to 2. If you set N to 1, you can configure a primary or secondary NIC. If you set N to 2, you must configure one primary NIC and one secondary NIC.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Primary`, this parameter is required. This parameter has the same effect as `VSwitchId`, but you cannot specify both this parameter and `VSwitchId`.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Secondary` or left empty, this parameter is optional. Default value: the vSwitch of the ECS instance.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1s5fnvk4gn2tws0****', 'title' => ''], 'NetworkInterfaceName' => ['description' => 'The name of the network interface controller (NIC).'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- Valid values of N: 1 to 2. If you set N to 1, you can configure a primary or secondary NIC. If you set N to 2, you must configure one primary NIC and one secondary NIC.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Primary`, you do not need to set this parameter.', 'type' => 'string', 'required' => false, 'example' => 'testEniName', 'title' => ''], 'Description' => ['description' => 'The description of the secondary network interface controller (NIC). The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`. The value of N in `NetworkInterface.N` cannot be greater than 1.', 'type' => 'string', 'required' => false, 'example' => 'testEniDescription', 'title' => ''], 'SecurityGroupId' => ['description' => 'The ID of the security group to which the network interface controller (NIC) belongs.'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- Valid values of N: 1 to 2. If you set N to 1, you can configure a primary or secondary NIC. If you set N to 2, you must configure one primary NIC and one secondary NIC.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Primary`, you must set this parameter. This parameter has the same effect as `SecurityGroupId`, but you cannot specify `SecurityGroupId`, `SecurityGroupIds.N`, or `NetworkInterface.N.SecurityGroupIds.N`.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Secondary` or left empty, this parameter is optional. Default value: the security group of the ECS instance.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg****', 'title' => ''], 'PrimaryIpAddress' => ['description' => 'Adds a network interface controller (NIC) and sets the primary IP address.'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- Valid values of N: 1 to 2.'."\n" .' - If you set N to 1, you can configure a primary or secondary NIC. If the `Amount` parameter is set to a value greater than 1 and you configure a primary NIC with this parameter specified, consecutive primary IP addresses starting from the specified IP address are allocated to multiple ECS instances in batch. In this case, you cannot attach a secondary NIC to the instances.'."\n" .' - If you set N to 2, you must configure one primary NIC and one secondary NIC. If the `Amount` parameter is set to a value greater than 1 and this parameter is specified for the primary NIC, you cannot configure a secondary NIC (that is, you cannot set `NetworkInterface.2.InstanceType=Secondary`).'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Primary`, this parameter has the same effect as `PrivateIpAddress`, but you cannot specify both this parameter and `PrivateIpAddress`.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Secondary` or left empty, this parameter specifies the primary IP address of the secondary NIC. By default, an IP address is randomly selected from the vSwitch CIDR block to which the NIC belongs.'."\n" ."\n" .'> When you create an ECS instance, you can attach up to one secondary NIC. After the instance is created, you can invoke [CreateNetworkInterface](~~58504~~) and [AttachNetworkInterface](~~58515~~) to attach more secondary NICs.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**', 'title' => ''], 'SecurityGroupIds' => [ 'description' => 'The IDs of one or more security groups to which the network interface controller (NIC) belongs.'."\n" ."\n" .'- The first N has a valid value range of 1 to 2. If you set N to 1, you can configure a primary or secondary NIC. If you set N to 2, you must configure one primary NIC and one secondary NIC.'."\n" .'- The second N specifies one or more security group IDs. The valid value range of N depends on the maximum number of security groups to which an instance can belong. For more information, see [Security group limits](~~25412#SecurityGroupQuota1~~).'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Primary`, you must set this parameter or `NetworkInterface.N.SecurityGroupId`. This parameter has the same effect as `SecurityGroupIds.N`, but you cannot specify `SecurityGroupId`, `SecurityGroupIds.N`, or `NetworkInterface.N.SecurityGroupId`.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Secondary` or left empty, this parameter is optional. Default value: the security group of the ECS instance.', 'type' => 'array', 'items' => ['description' => 'The IDs of one or more security groups to which the network interface controller (NIC) belongs.'."\n" ."\n" .'- The first N has a valid value range of 1 to 2. If you set N to 1, you can configure a primary or secondary NIC. If you set N to 2, you must configure one primary NIC and one secondary NIC.'."\n" .'- The second N specifies one or more security group IDs. The valid value range of N depends on the maximum number of security groups to which an instance can belong. For more information, see [Security group limits](~~25412#SecurityGroupQuota1~~).'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Primary`, you must set this parameter or `NetworkInterface.N.SecurityGroupId`. This parameter has the same effect as `SecurityGroupIds.N`, but you cannot specify `SecurityGroupId`, `SecurityGroupIds.N`, or `NetworkInterface.N.SecurityGroupId`.'."\n" ."\n" .'- If `NetworkInterface.N.InstanceType` is set to `Secondary` or left empty, this parameter is optional. Default value: the security group of the ECS instance.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'maxItems' => 16, 'title' => '', ], 'InstanceType' => ['description' => 'The type of the network interface controller (NIC). Valid values of N: 1 to 2. If you set N to 1, you can configure a primary or secondary NIC. If you set N to 2, you must configure one primary NIC and one secondary NIC.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Primary: primary NIC.'."\n" .'- Secondary: secondary NIC.'."\n" ."\n" .'Default value: Secondary.', 'type' => 'string', 'docRequired' => false, 'required' => false, 'example' => 'Secondary', 'title' => ''], 'NetworkInterfaceTrafficMode' => ['description' => 'The communication mode of the primary ENI. Valid values:'."\n" ."\n" .'- Standard: uses the TCP communication mode.'."\n" .'- HighPerformance: enables the Elastic RDMA Interface (ERI) and uses the RDMA communication mode.', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], 'DeleteOnRelease' => ['description' => 'Specifies whether to retain the ENI when the instance is released. Valid values:'."\n" ."\n" .'- true: does not retain the ENI.'."\n" ."\n" .'- false: retains the ENI.'."\n" ."\n" .'Default value: true.'."\n" ."\n" .'> This parameter takes effect only for secondary ENIs.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 8, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags for instances, disks, and primary ENIs created from this template version.'."\n" ."\n" .'
'."\n" .'Scenarios'."\n" .'After you call CreateLaunchTemplate to create a template, the auto-generated default version uses these tags to tag instances, disks, and primary ENIs when you create instances.'."\n" .'
', 'type' => 'array', 'items' => [ 'description' => 'The tags for instances, disks, and primary ENIs created from this template version.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key for instances, disks, and primary ENIs created from this template version. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with aliyun or acs:. The tag key cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value for instances, disks, and primary ENIs created from this template version. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'SecurityGroupIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of one or more security groups to which the instance belongs. The valid value range of N depends on the maximum number of security groups to which an instance can belong. For more information, see [Limits](~~25412~~).'."\n" ."\n" .'> You cannot specify both `SecurityGroupId` and `SecurityGroupIds.N`.', 'type' => 'array', 'items' => ['description' => 'The IDs of one or more security groups to which the instance belongs. The valid value range of N depends on the maximum number of security groups to which an instance can belong. For more information, see [Limits](~~25412~~).'."\n" ."\n" .'> You cannot specify both `SecurityGroupId` and `SecurityGroupIds.N`.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg7****', 'title' => ''], 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg7****', 'maxItems' => 16, 'title' => '', ], ], [ 'name' => 'SystemDisk.Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to encrypt the system disk. Valid values:'."\n" ."\n" .'- true: encrypts the system disk.'."\n" .'- false: does not encrypt the system disk.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> Zone D in Hong Kong (China) and Zone A in Singapore do not support system disk encryption when you create instances.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DeletionProtection', 'in' => 'query', 'schema' => ['description' => 'The release protection attribute of the instance. Specifies whether the instance can be released from the console or by calling [DeleteInstance](~~25507~~). Valid values:'."\n" .'- true: enables release protection.'."\n" ."\n" .'- false: disables release protection.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This attribute applies only to pay-as-you-go instances. It can only restrict manual release operations and does not affect system-initiated releases.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'CreditSpecification', 'in' => 'query', 'schema' => ['description' => 'The running mode of the burstable instance. Valid values:'."\n" ."\n" .'- Standard: standard mode. For more information, see the performance constrained mode section in [Overview of burstable instances](~~59977~~).'."\n" .'- Unlimited: unlimited mode. For more information, see the unlimited mode section in [Overview of burstable instances](~~59977~~).', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable auto-renewal. Valid values:'."\n" ."\n" .'- true: enables auto-renewal.'."\n" .'- false: does not enable auto-renewal.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This parameter takes effect only when `InstanceChargeType` is set to `PrePaid`.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'AutoRenewPeriod', 'in' => 'query', 'schema' => ['description' => 'The auto-renewal period. Valid values: '."\n" .' '."\n" .''."\n" .'- If PeriodUnit is set to Week: 1, 2, and 3.'."\n" .'- If PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, and 60.'."\n" ."\n" .''."\n" ."\n" .'If PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, and 60.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => ['description' => 'The unit of the subscription billable methods duration. Valid values: '."\n" ."\n" .''."\n" .'- Week.'."\n" .'- Month (default).'."\n" ."\n" .''."\n" ."\n" .'Month (default).', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], ], [ 'name' => 'HttpEndpoint', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the access channel for instance metadata. Valid values:'."\n" ."\n" .'- enabled: enables the access channel.'."\n" .'- disabled: disables the access channel.'."\n" ."\n" .'Default value: enabled.'."\n" ."\n" .'> For more information about instance metadata, see [Overview of ECS instance metadata](~~108460~~).', 'type' => 'string', 'required' => false, 'example' => 'enabled', 'title' => ''], ], [ 'name' => 'HttpTokens', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcefully use the security-hardened mode (IMDSv2) to access instance metadata. Valid values:'."\n" ."\n" .'- optional: does not forcefully use the security-hardened mode.'."\n" .'- required: forcefully uses the security-hardened mode. After you set this value, instance metadata cannot be accessed in normal mode.'."\n" ."\n" .'Default value: optional.'."\n" ."\n" .'> For more information about the modes for'."\n" .'[Instance metadata overview](~~108460~~)', 'type' => 'string', 'required' => false, 'example' => 'optional', 'title' => ''], ], [ 'name' => 'HttpPutResponseHopLimit', 'in' => 'query', 'schema' => ['description' => '> This parameter is not available for use.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], ], [ 'name' => 'SystemDisk.KMSKeyId', 'in' => 'query', 'schema' => ['description' => 'The KMS key ID of the system disk.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], [ 'name' => 'ImageOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The image-related property information.', 'type' => 'object', 'properties' => [ 'LoginAsNonRoot' => ['description' => 'Indicates whether the instance that uses this image supports logon with the ecs-user account.'."\n" .'Valid values:'."\n" .'- true: supported.'."\n" .'- false: not supported.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SecurityOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The security options.', 'type' => 'object', 'properties' => [ 'TrustedSystemMode' => ['description' => 'The trusted system mode. Set the value to vTPM.'."\n" ."\n" .'The following instance families support trusted system mode:'."\n" .'- g7, c7, and r7.'."\n" .'- Enhanced instance families (g7t, c7t, and r7t).'."\n" ."\n" .'When you create ECS instances of the preceding instance types, you must configure this parameter. Take note of the following items:'."\n" ."\n" .'- To use Alibaba Cloud Trusted System, set this parameter to vTPM. Then, Alibaba Cloud Trusted System performs trusted verification when the instance starts.'."\n" .'- If you do not use Alibaba Cloud Trusted System, you do not need to configure this parameter. However, if the ECS instance that you create uses the Enclave-based confidential computing pattern (`SecurityOptions.ConfidentialComputingMode=Enclave`), the trusted system is also enabled for the instance.'."\n" .'- When you use OpenAPI to create a trusted ECS instance, you can only invoke `RunInstances`. `CreateInstance` does not support the `SecurityOptions.TrustedSystemMode` parameter.'."\n" .'> If you specify the instance as a trusted instance during creation, you can replace the system disk only with an image that supports the trusted system.'."\n" ."\n" .'For more information about the trusted system, see [Overview of trusted features for security-enhanced instances](~~201394~~).', 'type' => 'string', 'required' => false, 'example' => 'vTPM', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'LaunchTemplateId' => ['description' => 'The launch template ID.', 'type' => 'string', 'example' => 'lt-m5eiaupmvm2op9d****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'LaunchTemplateVersionNumber' => ['description' => 'The launch template version number.', 'type' => 'integer', 'format' => 'int64', 'example' => '20', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegion.NotExist', 'errorMessage' => '%s', 'description' => 'The specified region does not exist.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidLaunchTemplateName.Malformed', 'errorMessage' => 'The specified parameter LaunchTemplateName is not valid.', 'description' => 'The specified LaunchTemplateName parameter is invalid.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified parameter "VersionDescription" is not valid.', 'description' => ''], ['errorCode' => 'InvalidUserData.SizeExceeded', 'errorMessage' => '%s', 'description' => 'The size of your specified user data exceeds the maximum allowed value.'], ['errorCode' => 'InvalidUserData.Base64FormatInvalid', 'errorMessage' => '%s', 'description' => 'The specified user data is invalid.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidHostName.Malformed', 'errorMessage' => 'The specified parameter "HostName" is not valid.', 'description' => 'The specified parameter HostName is invalid.'], ['errorCode' => 'InvalidParams.CreateEniParams', 'errorMessage' => '%s', 'description' => ''], ], 403 => [ ['errorCode' => 'LaunchTemplateLimitExceed', 'errorMessage' => '%s', 'description' => 'The maximum number of launch templates has been reached.'], ['errorCode' => 'LaunchTemplateName.Duplicated', 'errorMessage' => '%s', 'description' => 'The specified launch template name already exists.'], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ], [ ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LaunchTemplateId\\": \\"lt-m5eiaupmvm2op9d****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"LaunchTemplateVersionNumber\\": 20\\n}","type":"json"}]', 'title' => 'Create a launch template', 'description' => 'After you call CreateLaunchTemplate to create a template, a default version with version number 1 is automatically generated. You can then create multiple versions based on this template (`CreateLaunchTemplateVersion`), with version numbers incrementing sequentially from 1. If you do not specify a template version when creating instances ([RunInstances](~~63440~~)), the default version is used.'."\n" ."\n" .'A launch template version contains the configurations for creating instances, such as the region, image ID, instance type, security group ID, and public bandwidth. If a specific configuration is not specified in the version, you must specify it when you create instances.'."\n" ."\n" .'When you call this operation, take note of the following items:'."\n" ."\n" .'- Each account can create up to 30 launch templates per region, and each template can have up to 30 versions.'."\n" ."\n" .'- Most parameters in a launch template are optional. When you create a template, Alibaba Cloud does not verify the existence or validity of parameter values. The validity of parameter values is verified only when you create instances.'."\n" ."\n" .'- If a configuration is specified in the launch template, it cannot be filtered out when you create instances ([RunInstances](~~63440~~)). For example, if the template specifies `HostName=LocalHost` and the `HostName` value is left empty in `RunInstances`, the hostname of the instance is still `LocalHost`. To override the `HostName=LocalHost` configuration, set `HostName=MyHost` or another value in `RunInstances`.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-09-15T08:08:01.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-06-27T01:42:01.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-05-27T03:01:50.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-17T11:08:01.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-10-12T07:03:20.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-05-28T05:59:39.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-10-18T03:03:40.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-10-16T02:00:33.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-08-01T07:21:26.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2023-01-05T02:31:10.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-07-11T11:13:17.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-12-20T11:16:58.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateLaunchTemplate'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateLaunchTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/*'], ], ], ], ], 'gatewayOptions' => [ 'gatewayProtocols' => [], ], ], 'CreateLaunchTemplateVersion' => [ 'summary' => 'Creates a new version in a specified ECS launch template for subsequent creation of ECS instances, elastic scaling groups, or auto provisioning groups.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29254', 'abilityTreeNodes' => ['FEATUREecsV7EC6D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'LaunchTemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the launch template. For more information, call [DescribeLaunchTemplates](~~73759~~). You must specify `LaunchTemplateId` or `LaunchTemplateName` to determine the launch template.', 'type' => 'string', 'required' => false, 'example' => 'lt-m5eiaupmvm2op9d****', 'title' => ''], ], [ 'name' => 'LaunchTemplateName', 'in' => 'query', 'schema' => ['description' => 'The name of the launch template. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain digits, colons (:), underscores (_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testLaunchTemplateName', 'title' => ''], ], [ 'name' => 'VersionDescription', 'in' => 'query', 'schema' => ['description' => 'The description of the launch template version. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testVersionDescription', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the image used to create the instance. You can call [DescribeImages](~~25534~~) to query available image resources.', 'type' => 'string', 'required' => false, 'example' => 'win2008r2_64_ent_sp1_en-us_40G_alibase_20170915.vhd', 'title' => ''], ], [ 'name' => 'ImageOwnerAlias', 'in' => 'query', 'schema' => ['description' => 'The source of the image.'."\n" .'> This parameter will be deprecated. To improve compatibility, use other parameters.', 'type' => 'string', 'required' => false, 'example' => 'system', 'title' => ''], ], [ 'name' => 'PasswordInherit', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the preset password of the image. Valid values:'."\n" .'- true'."\n" .'- false'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> When you use this parameter, the Password parameter must be empty. You must also make sure that the image has a preset password.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type. For more information, see [Instance family](~~25378~~). You can also call [DescribeInstanceTypes](~~25620~~) to query the most recent instance type list.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5.large', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security group to which the instance created by using this version belongs. Instances in the same security group can communicate with each other.'."\n" ."\n" .'> You cannot specify both `SecurityGroupId` and `SecurityGroupIds.N`.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg****', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the virtual private cloud (VPC) to which the instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp12433upq1y5scen****', 'title' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the vSwitch. You must specify this parameter when you create a VPC-connected instance.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1s5fnvk4gn2tws0****', 'title' => ''], ], [ 'name' => 'InstanceName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance. The name must be 2 to 128 characters in length and can contain letters, digits, and characters from the Unicode letter category (which includes characters from various languages). The name can contain colons (:), underscores (_), periods (.), and hyphens (-). The default value is the `InstanceId` of the instance.'."\n" ."\n" .'When you create multiple ECS instances at a time, you can batch configure sequential instance names that contain brackets ([]) and commas (,). For more information, see [Batch configure sequential names or hostnames for multiple instances](~~196048~~).', 'type' => 'string', 'required' => false, 'example' => 'k8s-node-[1,4]-alibabacloud', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the instance. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthIn', 'in' => 'query', 'schema' => ['description' => 'The maximum inbound public bandwidth. Unit: Mbit/s. Valid values:'."\n" ."\n" .'- If the purchased outbound public bandwidth is less than or equal to 10 Mbit/s: 1 to 10. Default value: 10.'."\n" .'- If the purchased outbound public bandwidth is greater than 10 Mbit/s: 1 to the value of `InternetMaxBandwidthOut`. Default value: the value of `InternetMaxBandwidthOut`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthOut', 'in' => 'query', 'schema' => ['description' => 'The maximum outbound public bandwidth. Unit: Mbit/s. Valid values: 0 to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'HostName', 'in' => 'query', 'schema' => ['description' => 'The hostname of the Elastic Compute Service (ECS) server.'."\n" ."\n" .'- The hostname cannot start or end with a period (.) or hyphen (-), and cannot contain consecutive periods or hyphens.'."\n" .'- Windows instances: The hostname must be 2 to 15 characters in length and cannot contain periods (.) or consist entirely of digits. It can contain letters, digits, and hyphens (-).'."\n" .'- Other instances (such as Linux): The hostname must be 2 to 64 characters in length. It can contain multiple periods (.), with each segment between periods allowing letters, digits, and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testHostName', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the instance.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'SystemDisk.Category', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_essd: enterprise SSD (ESSD). You can use the `SystemDisk.PerformanceLevel` parameter to configure the performance level of the disk.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" ."\n" .'For retired instance types that are not I/O optimization instances, the default value is cloud. For other instance types, the default value is cloud_efficiency.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'SystemDisk.Size', 'in' => 'query', 'schema' => ['description' => 'The size of the system disk. Unit: GiB. Valid values:'."\n" ."\n" .'- cloud: 20 to 500.'."\n" .'- Other disk categories: 20 to 2048.'."\n" ."\n" .'The value of this parameter must be greater than or equal to max{20, ImageSize}.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '40', 'title' => ''], ], [ 'name' => 'SystemDisk.DiskName', 'in' => 'query', 'schema' => ['description' => 'The name of the system disk. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain digits, colons (:), underscores (_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssdSystem', 'title' => ''], ], [ 'name' => 'SystemDisk.Description', 'in' => 'query', 'schema' => ['description' => 'The description of the system disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testSystemDiskDescription', 'title' => ''], ], [ 'name' => 'SystemDisk.Iops', 'in' => 'query', 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30000', 'title' => ''], ], [ 'name' => 'SystemDisk.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the ESSD used as the system disk. Configure the performance level based on the following valid values:'."\n" ."\n" .'- PL0 (default): A single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1: A single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: A single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: A single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [ESSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL0', 'title' => ''], ], [ 'name' => 'SystemDisk.DeleteWithInstance', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release the system disk when the instance is released. Valid values:'."\n" ."\n" .'- true: releases the system disk when the instance is released.'."\n" .'- false: does not release the system disk when the instance is released.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'SystemDisk.AutoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the automatic snapshot policy applied to the system disk.', 'type' => 'string', 'required' => false, 'example' => 'sp-bp1dgzpaxwc4load****', 'title' => ''], ], [ 'name' => 'SystemDisk.ProvisionedIops', 'in' => 'query', 'schema' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk used as the system disk. Valid values: 0 to min{50000, 1000 × Capacity - Baseline Performance}.'."\n" ."\n" .'Baseline Performance = min{1,800 + 50 × Capacity, 50,000}.'."\n" ."\n" .'> This parameter is available only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~) and [Modify the provisioned performance of an ESSD AutoPL disk](~~413275~~).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '50000', 'title' => ''], ], [ 'name' => 'SystemDisk.BurstingEnabled', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the performance burst feature. Valid values:'."\n" ."\n" .'- true: enables the performance burst feature.'."\n" .'- false: does not enable the performance burst feature.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is an I/O optimized instance. Valid values:'."\n" ."\n" .'- none: The instance is not I/O optimized.'."\n" .'- optimized: The instance is I/O optimization enabled.', 'type' => 'string', 'required' => false, 'example' => 'optimized', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instance. Valid values:'."\n" ."\n" .''."\n" .'- PrePaid: subscription. If you set this parameter to PrePaid, confirm that your account supports balance payment or credit payment. Otherwise, an `InvalidPayMethod` fault is returned.'."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .''."\n" .''."\n" .'- PrePaid: subscription. If you set this parameter to PrePaid, confirm that your account supports credit payment. Otherwise, an `InvalidPayMethod` fault is returned.'."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .''."\n" .''."\n" .'- PrePaid: subscription. If you set this parameter to PrePaid, confirm that your account supports credit payment. Otherwise, an `InvalidPayMethod` fault is returned.'."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .'', 'type' => 'string', 'required' => false, 'example' => 'PrePaid', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The subscription duration of the resource. Unit: months. This parameter takes effect and is required only when `InstanceChargeType` is set to `PrePaid`. Valid values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, 36, 48, and 60.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'InternetChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method for outbound Internet bandwidth. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.'."\n" ."\n" .'> In **pay-by-traffic** mode, the peak inbound and outbound bandwidths are used as upper limits of bandwidths instead of guaranteed performance specifications. When resource contention occurs, the peak bandwidths may be limited. If you want guaranteed bandwidth, use the **pay-by-bandwidth** mode.', 'type' => 'string', 'required' => false, 'example' => 'PayByTraffic', 'title' => ''], ], [ 'name' => 'EnableVmOsConfig', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the operating system configuration of the instance.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'NetworkType', 'in' => 'query', 'schema' => ['description' => 'The network type of the instance. Valid values:'."\n" ."\n" .'- vpc: VPC.'."\n" .'- classic: classic network. The classic network has been retired. For more information, see [Retirement notice](~~2833134~~).', 'type' => 'string', 'required' => false, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'UserData', 'in' => 'query', 'schema' => ['description' => 'Instance user data of the instance. Instance user data must be encoded in Base64. The raw data can be up to 32 KB in size.', 'type' => 'string', 'required' => false, 'example' => 'ZWNobyBoZWxsbyBl****', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the key pair.'."\n" ."\n" .'- For Windows instances, this parameter is ignored. Even if you specify this parameter, only the `Password` content is used.'."\n" .'- For Linux instances, password-based logon is disabled during initialization.', 'type' => 'string', 'required' => false, 'example' => 'testKeyPairName', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance RAM role. You can call the RAM API [ListRoles](~~28713~~) to query the instance RAM roles that you have created.', 'type' => 'string', 'required' => false, 'example' => 'testRamRoleName', 'title' => ''], ], [ 'name' => 'AutoReleaseTime', 'in' => 'query', 'schema' => ['description' => 'The automatic release time. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" ."\n" .'- If the value of seconds (`ss`) is not `00`, the time is automatically rounded to the start of the current minute (`mm`).'."\n" ."\n" .'- The earliest release time is 30 minutes after the current time.'."\n" ."\n" .'- The latest release time cannot be more than three years from the current time.', 'type' => 'string', 'required' => false, 'example' => '2018-01-01T12:05:00Z', 'title' => ''], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => ['description' => 'The preemption policy for the pay-as-you-go instance. This parameter takes effect when `InstanceChargeType` is set to `PostPaid`. Valid values:'."\n" ."\n" .'- NoSpot: The instance is a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: The instance is a spot instance with a user-defined maximum hourly price.'."\n" .'- SpotAsPriceGo: The instance is a spot instance for which the market price at the time of purchase is automatically used as the bid price.', 'type' => 'string', 'required' => false, 'example' => 'NoSpot', 'title' => ''], ], [ 'name' => 'SpotPriceLimit', 'in' => 'query', 'schema' => ['description' => 'The maximum hourly price of the instance. A maximum of three decimal places are supported.', 'type' => 'number', 'format' => 'float', 'required' => false, 'maximum' => '999999', 'minimum' => '0', 'example' => '0.97', 'title' => ''], ], [ 'name' => 'SpotDuration', 'in' => 'query', 'schema' => ['description' => 'The protection period of the spot instance. Unit: hours. Default value: 1. Valid values:'."\n" .'- 1: After a spot instance is created, Alibaba Cloud ensures that the instance is not automatically released within 1 hour. After the 1-hour protection period ends, the system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" .'- 0: After a spot instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. We recommend that you select an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'> This parameter takes effect only when SpotStrategy is set to SpotWithPriceLimit or SpotAsPriceGo.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SecurityEnhancementStrategy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable security hardening for the operating system. Valid values:'."\n" ."\n" .'- Active: enables security hardening. This value is applicable only to public images.'."\n" .'- Deactive: does not enable security hardening. This value is applicable to all image types.', 'type' => 'string', 'required' => false, 'example' => 'Active', 'title' => ''], ], [ 'name' => 'PrivateIpAddress', 'in' => 'query', 'schema' => ['description' => 'The private IP address of the instance.'."\n" ."\n" .'When you specify a private IP address for a VPC-connected ECS instance, the IP address must be from the idle CIDR block of the vSwitch (`VSwitchId`).', 'type' => 'string', 'required' => false, 'example' => '10.1.**.**', 'title' => ''], ], [ 'name' => 'Ipv6AddressCount', 'in' => 'query', 'schema' => ['description' => 'The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'DeploymentSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'required' => false, 'example' => 'ds-bp1brhwhoqinyjd6****', 'title' => ''], ], [ 'name' => 'DataDisk', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of data disks.', 'type' => 'array', 'items' => [ 'description' => 'The list of data disks.', 'type' => 'object', 'properties' => [ 'PerformanceLevel' => ['description' => 'The performance level of the ESSD used as a data disk. The value of N must be the same as that in `DataDisk.N.Category=cloud_essd`. Configure the performance level based on the following valid values:'."\n" ."\n" .'- PL0: A single disk can deliver up to 10,000 random read/write IOPS.'."\n" .'- PL1 (default): A single disk can deliver up to 50,000 random read/write IOPS.'."\n" .'- PL2: A single disk can deliver up to 100,000 random read/write IOPS.'."\n" .'- PL3: A single disk can deliver up to 1,000,000 random read/write IOPS.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [ESSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], 'Description' => ['description' => 'The description of the data disk. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testDataDiskDescription', 'title' => ''], 'SnapshotId' => ['description' => 'The ID of the snapshot used to create data disk N. Valid values of N: 1 to 16. When `DataDisk.N.SnapshotId` is specified, `DataDisk.N.Size` is ignored. The actual size of the created disk is the size of the specified snapshot.'."\n" ."\n" .'Snapshots created on or before July 15, 2013 cannot be used. Requests that use such snapshots are rejected.', 'type' => 'string', 'required' => false, 'example' => 's-bp17441ohwka0yuh****', 'title' => ''], 'Size' => ['description' => 'The size of data disk N. Valid values of N: 1 to 16. Unit: GiB. Valid values:'."\n" ."\n" .'- cloud: 5 to 2000.'."\n" .'- cloud_efficiency: 20 to 32768.'."\n" .'- cloud_ssd: 20 to 32768.'."\n" .'- cloud_essd: The valid value range depends on the value of `DataDisk.N.PerformanceLevel`. '."\n" .' - PL0: 1 to 32768.'."\n" .' - PL1: 20 to 32768.'."\n" .' - PL2: 461 to 32768.'."\n" .' - PL3: 1261 to 32768.'."\n" .'- cloud_auto: 1 to 32,768.'."\n" .'- cloud_essd_entry: 10 to 32,768.'."\n" ."\n" .'The value of this parameter must be greater than or equal to the size of the snapshot specified by `SnapshotId`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2000', 'title' => ''], 'Device' => ['description' => 'The mount point of the data disk. The naming conventions for mount points vary based on the number of data disks attached:'."\n" .'- 1 to 25 data disks: /dev/xvd`[b-z]`'."\n" ."\n" .'- More than 25 data disks: /dev/xvd`[aa-zz]`. For example, the 26th data disk is named /dev/xvdaa, the 27th data disk is named /dev/xvdab, and so on.'."\n" ."\n" .'> This parameter is applicable only to full image (system image) scenarios. You can set this parameter to the mount point of the data disk in the full image and modify the corresponding `DataDisk.N.Size` and `DataDisk.N.Category` parameters to change the disk category and size of the data disk in the full image.', 'type' => 'string', 'required' => false, 'example' => '/dev/xvdb'."\n", 'title' => ''], 'DiskName' => ['description' => 'The name of the data disk. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with `http://` or `https://`. It can contain digits, colons (:), underscores (_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testDataDiskName', 'title' => ''], 'Category' => ['description' => 'The category of data disk N. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD.'."\n" .'- cloud: basic disk.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_regional_disk_auto: regional ESSD.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .' >The cloud_essd_entry value is supported only when `InstanceType` is configured as an instance type in the `ecs.u1` or `ecs.e` family.'."\n" .'- elastic_ephemeral_disk_standard: elastic ephemeral disk - Standard.'."\n" .'- elastic_ephemeral_disk_premium: elastic ephemeral disk - Premium Edition.'."\n" ."\n" .'For I/O optimization instances, the default value is cloud_efficiency. For non-I/O optimization instances, the default value is cloud.'."\n" .'Default value details:'."\n" ."\n" .'- When InstanceType is set to a retired instance type that is not I/O optimized, the default parameter value is `cloud`.'."\n" .'- In other cases, the default value is `cloud_efficiency`.After January 30, 2026, when the I/O optimized instance type does not support cloud_auto, the default value is cloud_efficiency. Otherwise, the default value is cloud_auto, and the performance burst feature is enabled by default (which incurs additional fees. For details, see [Billing examples](~~368372#p_75k_2hp_7gp~~)). For more information, see [Change notice](https://www.aliyun.com/notice/117844).', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], 'DeleteWithInstance' => ['description' => 'Specifies whether to release the data disk when the instance is released. Valid values:'."\n" ."\n" .'- true: releases the data disk when the instance is released.'."\n" .'- false: does not release the data disk when the instance is released.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'Encrypted' => ['description' => 'Specifies whether to encrypt the data disk.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk used as the system disk. Valid values: 0 to min{50000, 1000 × Capacity - Baseline Performance}.'."\n" ."\n" .'Baseline Performance = min{1,800 + 50 × Capacity, 50,000}.'."\n" ."\n" .'> This parameter is available only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~) and [Modify the provisioned performance of an ESSD AutoPL disk](~~413275~~).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '50000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Specifies whether to enable the performance burst feature. Valid values:'."\n" ."\n" .'- true: enables the performance burst feature.'."\n" .'- false: does not enable the performance burst feature.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'AutoSnapshotPolicyId' => ['description' => 'The ID of the automatic snapshot policy applied to the data disk.', 'type' => 'string', 'required' => false, 'example' => 'sp-bp67acfmxazb4p****', 'title' => ''], 'KMSKeyId' => ['description' => 'The KMS key ID for the data disk.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 16, 'title' => '', 'example' => '', ], ], [ 'name' => 'NetworkInterface', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The network interface controller (NIC) information.', 'type' => 'array', 'items' => [ 'description' => 'The network interface controller (NIC) information.', 'type' => 'object', 'properties' => [ 'VSwitchId' => ['description' => 'The ID of the vSwitch to which the secondary network interface controller (NIC) belongs. The instance and the secondary NIC must be in the same VPC and the same active zone but can belong to different vSwitches. The value of N in `NetworkInterface.N` cannot be greater than 1.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp1s5fnvk4gn2tws0****', 'title' => ''], 'NetworkInterfaceName' => ['description' => 'The name of the secondary network interface controller (NIC). The value of N in `NetworkInterface.N` cannot be greater than 1.', 'type' => 'string', 'required' => false, 'example' => 'testNetworkInterfaceName', 'title' => ''], 'Description' => ['description' => 'The description of the secondary network interface controller (NIC). The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`. The value of N in `NetworkInterface.N` cannot be greater than 1.', 'type' => 'string', 'required' => false, 'example' => 'testNetworkInterfaceDescription', 'title' => ''], 'SecurityGroupId' => ['description' => 'The ID of the security group to which the secondary network interface controller (NIC) belongs. The security group of the secondary NIC must belong to the same VPC as the instance. The value of N in `NetworkInterface.N` cannot be greater than 1.'."\n" ."\n" .'> You cannot specify both `NetworkInterface.N.SecurityGroupId` and `NetworkInterface.N.SecurityGroupIds.N`.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg****', 'title' => ''], 'PrimaryIpAddress' => ['description' => 'The primary private IP address of the secondary network interface controller (NIC). The value of N in `NetworkInterface.N` cannot be greater than 1.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**', 'title' => ''], 'SecurityGroupIds' => [ 'description' => 'The IDs of one or more security groups to which the secondary network interface controller (NIC) belongs. The security groups and the secondary NIC must belong to the same VPC. The valid values of N in `SecurityGroupIds.N` depend on the quota for the maximum number of security groups to which a secondary NIC can belong. For more information, see [Limits](~~25412~~). The value of N in `NetworkInterface.N` cannot be greater than 1.'."\n" ."\n" .'> You cannot specify both `NetworkInterface.N.SecurityGroupId` and `NetworkInterface.N.SecurityGroupIds.N`.', 'type' => 'array', 'items' => ['description' => 'The IDs of one or more security groups to which the secondary network interface controller (NIC) belongs. The security groups and the secondary NIC must belong to the same VPC. The valid values of N in `SecurityGroupIds.N` depend on the quota for the maximum number of security groups to which a secondary NIC can belong. For more information, see [Limits](~~25412~~). The value of N in `NetworkInterface.N` cannot be greater than 1.'."\n" ."\n" .'> You cannot specify both `NetworkInterface.N.SecurityGroupId` and `NetworkInterface.N.SecurityGroupIds.N`.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'maxItems' => 16, 'title' => '', ], 'InstanceType' => ['description' => 'The type of the ENI. Valid values of N: 1 to 2. If you configure one ENI, you can configure either a primary network interface controller (NIC) or a secondary ENI. If you configure two ENIs, you must configure one primary NIC and one secondary ENI.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Primary: primary NIC.'."\n" .'- Secondary: secondary ENI.'."\n" ."\n" .'Default value: Secondary.', 'type' => 'string', 'required' => false, 'example' => 'Secondary', 'title' => ''], 'NetworkInterfaceTrafficMode' => ['description' => 'The communication mode of the primary ENI. Valid values:'."\n" ."\n" .'- Standard: uses the TCP communication mode.'."\n" .'- HighPerformance: enables the Elastic RDMA Interface (ERI) and uses the RDMA communication mode.', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], 'DeleteOnRelease' => ['description' => 'Specifies whether to retain the ENI when the instance is released. Valid values:'."\n" ."\n" .'- true: does not retain the ENI.'."\n" ."\n" .'- false: retains the ENI.'."\n" ."\n" .'Default value: true.'."\n" ."\n" .'> This parameter takes effect only for secondary ENIs.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 8, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the instances, disks, and primary ENIs created by using this version.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the instances, disks, and primary ENIs created by using this version.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the instances, disks, and primary ENIs created by using this version. Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be up to 128 characters in length and cannot start with aliyun or acs:. It cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the instances, disks, and primary ENIs created by using this version. Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters in length and cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], [ 'name' => 'SecurityGroupIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of one or more security groups to which the instance belongs. The valid values of N depend on the maximum number of security groups to which an instance can belong. For more information, see [Limits](~~25412~~).'."\n" ."\n" .'> You cannot specify both `SecurityGroupId` and `SecurityGroupIds.N`.', 'type' => 'array', 'items' => ['description' => 'The IDs of one or more security groups to which the instance belongs. The valid values of N depend on the maximum number of security groups to which an instance can belong. For more information, see [Limits](~~25412~~).'."\n" ."\n" .'> You cannot specify both `SecurityGroupId` and `SecurityGroupIds.N`.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg7****', 'title' => ''], 'required' => false, 'example' => 'sg-bp15ed6xe1yxeycg7****', 'maxItems' => 16, 'title' => '', ], ], [ 'name' => 'SystemDisk.Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to encrypt the system disk. Valid values:'."\n" ."\n" .'- true: encrypts the system disk.'."\n" ."\n" .'- false: does not encrypt the system disk.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> System disk encryption is not supported in Zone D of the Hong Kong (China) region or Zone A of the Singapore region when you create an instance.', 'type' => 'string', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DeletionProtection', 'in' => 'query', 'schema' => ['description' => 'The release protection attribute of the instance. Specifies whether the instance can be released from the console or by calling [DeleteInstance](~~25507~~). Valid values:'."\n" .'- true: enables release protection.'."\n" ."\n" .'- false: disables release protection.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This attribute is applicable only to pay-as-you-go instances. It can only restrict manual release operations and does not take effect on system-initiated release operations.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'CreditSpecification', 'in' => 'query', 'schema' => ['description' => 'The running mode of the burstable instance. Valid values:'."\n" ."\n" .'- Standard: standard mode. For more information, see the performance constrained mode section in [Overview of burstable instances](~~59977~~).'."\n" .'- Unlimited: unlimited mode. For more information, see the unlimited mode section in [Overview of burstable instances](~~59977~~).', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'AutoRenew', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable auto-renewal. This parameter takes effect only when `InstanceChargeType` is set to `PrePaid`. Valid values:'."\n" ."\n" .'- true: enables auto-renewal.'."\n" .'- false: does not enable auto-renewal.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'AutoRenewPeriod', 'in' => 'query', 'schema' => ['description' => 'The auto-renewal period. Valid values: '."\n" .' '."\n" .''."\n" .'- If PeriodUnit is set to Week: 1, 2, and 3.'."\n" .'- If PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, and 60.'."\n" ."\n" .''."\n" ."\n" .'If PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, and 60.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => ['description' => 'The unit of the subscription duration. Valid values: '."\n" ."\n" .''."\n" .'- Week.'."\n" .'- Month (default).'."\n" ."\n" .''."\n" ."\n" .'Month (default).', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], ], [ 'name' => 'HttpEndpoint', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the access channel for instance metadata. Valid values:'."\n" ."\n" .'- enabled: enables the access channel.'."\n" .'- disabled: disables the access channel.'."\n" ."\n" .'Default value: enabled.'."\n" ."\n" .'> For more information about instance metadata, see [Overview of ECS instance metadata](~~108460~~).', 'type' => 'string', 'required' => false, 'example' => 'enabled', 'title' => ''], ], [ 'name' => 'HttpTokens', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcefully use the security-hardened mode (IMDSv2) to access instance metadata. Valid values:'."\n" ."\n" .'- optional: does not forcefully use the security-hardened mode.'."\n" .'- required: forcefully uses the security-hardened mode. After you set this value, the normal mode cannot be used to access instance metadata.'."\n" ."\n" .'Default value: optional.'."\n" ."\n" .'> For more information about the modes for accessing instance metadata, see [Overview of ECS instance metadata](~~108460~~).', 'type' => 'string', 'required' => false, 'example' => 'optional', 'title' => ''], ], [ 'name' => 'HttpPutResponseHopLimit', 'in' => 'query', 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], ], [ 'name' => 'SystemDisk.KMSKeyId', 'in' => 'query', 'schema' => ['description' => 'The KMS key ID of the system disk.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], [ 'name' => 'ImageOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The image-related property information.', 'type' => 'object', 'properties' => [ 'LoginAsNonRoot' => ['description' => 'Specifies whether instances that use this image support logon with the ecs-user user.'."\n" .'Valid values:'."\n" .'- true: supported.'."\n" .'- false: not supported.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SecurityOptions', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The security options.', 'type' => 'object', 'properties' => [ 'TrustedSystemMode' => ['description' => 'The trusted system mode. Set the value to vTPM.'."\n" ."\n" .'The following instance families support trusted system mode:'."\n" .'- g7, c7, and r7.'."\n" .'- Security-enhanced instance family (g7t, c7t, and r7t).'."\n" ."\n" .'When you create ECS instances of the preceding instance families, you must configure this parameter. Details:'."\n" ."\n" .'- To use the Alibaba Cloud Trusted System, set this parameter to vTPM. The trusted verification is completed by the Alibaba Cloud Trusted System when the instance starts.'."\n" .'- If you do not use the Alibaba Cloud Trusted System, you can leave this parameter empty. However, if the ECS instance that you create uses the Enclave-based confidential computing mode (`SecurityOptions.ConfidentialComputingMode=Enclave`), the trusted system is also enabled for the instance.'."\n" .'- When you create a trusted ECS instance by invoking an API operation, you can only invoke `RunInstances`. `CreateInstance` does not support configuring the `SecurityOptions.TrustedSystemMode` parameter.'."\n" .'> If you specify an instance as a trusted instance during creation, you can only use images that support the trusted system when you replace the system disk.'."\n" ."\n" .'For more information about the trusted system, see [Overview of trusted features for security-enhanced instances](~~201394~~).', 'type' => 'string', 'required' => false, 'example' => 'vTPM', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'LaunchTemplateVersionNumber' => ['description' => 'The version number of the launch template that is created.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DEX****', 'title' => ''], 'LaunchTemplateId' => ['description' => 'The ID of the launch template. For more information, see [DescribeLaunchTemplates](~~73759~~).'."\n" ."\n" .'When you use a launch template to create an instance, you must specify `LaunchTemplateId` or `LaunchTemplateName` to determine the launch template.', 'type' => 'string', 'example' => 'lt-bp1apo0bbbkuy0rj****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegion.NotExist', 'errorMessage' => '%s', 'description' => 'The specified region does not exist.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified parameter "Description" is not valid.', 'description' => 'The source description can be 2 to 256 characters in length. It cannot start with http:// and https://.'], ['errorCode' => 'InvalidUserData.SizeExceeded', 'errorMessage' => '%s', 'description' => 'The size of your specified user data exceeds the maximum allowed value.'], ['errorCode' => 'InvalidUserData.Base64FormatInvalid', 'errorMessage' => '%s', 'description' => 'The specified user data is invalid.'], ['errorCode' => 'InvalidHostName.Malformed', 'errorMessage' => 'The specified parameter "HostName" is not valid.', 'description' => ''], ['errorCode' => 'InvalidParams.CreateEniParams', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ], 403 => [ ['errorCode' => 'LaunchTemplateVersionLimitExceed', 'errorMessage' => '%s', 'description' => 'The maximum number of launch template versions has been reached.'], ], [ ['errorCode' => 'InvalidLaunchTemplate.NotFound', 'errorMessage' => '%s', 'description' => 'The specified launch template does not exist. Check whether the parameter value is correct.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LaunchTemplateVersionNumber\\": 2,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DEX****\\",\\n \\"LaunchTemplateId\\": \\"lt-bp1apo0bbbkuy0rj****\\"\\n}","type":"json"}]', 'title' => 'Create a new version in a launch template', 'description' => '## Operation description'."\n" .'To modify the parameters of a specific version, create a new template version. Each instance launch template supports a maximum of 30 versions.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-09-15T08:08:01.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-06-27T01:42:01.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-05-27T03:01:50.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-17T11:08:01.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-10-12T07:03:19.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-05-28T05:59:39.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-10-18T03:03:40.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-08-01T07:21:25.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-03-10T06:37:38.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-05T02:31:10.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-07-11T11:13:17.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-12-20T11:16:58.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateLaunchTemplateVersion'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateLaunchTemplateVersion', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/{#launchtemplateId}'], ], ], ], ], ], 'CreateNatGateway' => [ 'summary' => 'CreateNatGateway', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'vpc接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the nat gateway.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC in which to create the nat gateway.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'A name for the nat gateway.'."\n" ."\n" .'The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character but cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'A description of the nat gateway.'."\n" ."\n" .'The description must be 2 to 256 characters in length. It must start with a letter or a Chinese character but cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token to ensure the idempotence of the request.'."\n" ."\n" .'This token is client-generated and must be unique for each request. The token can contain only ASCII characters and cannot exceed 64 characters in length.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'BandwidthPackage', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'maxItems' => 10, 'description' => 'Configurations for the bandwidth packages to create and associate with the nat gateway.', 'type' => 'array', 'items' => [ 'description' => 'The configuration for a bandwidth package.', 'type' => 'object', 'properties' => [ 'Bandwidth' => ['description' => 'The peak bandwidth for the EIPs in the bandwidth package. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'Zone' => ['description' => 'The ID of the zone in which to create the EIPs. If you do not specify a zone, the system randomly selects one.', 'type' => 'string', 'title' => '', 'example' => ''], 'IpCount' => ['description' => 'The number of EIPs to create in the bandwidth package. Valid values: 1 to 10.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'NatGatewayId' => ['description' => 'The ID of the NAT gateway.', 'type' => 'string', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => ''], 'ForwardTableIds' => [ 'itemNode' => true, 'description' => 'The IDs of the forwarding tables.', 'type' => 'object', 'properties' => [ 'ForwardTableId' => [ 'description' => 'The list of forwarding table IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of a forwarding table.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'BandwidthPackageIds' => [ 'itemNode' => true, 'description' => 'The IDs of the EIP bandwidth plans.', 'type' => 'object', 'properties' => [ 'BandwidthPackageId' => [ 'description' => 'The list of EIP bandwidth plan IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of an EIP bandwidth plan.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidVPCStatus', 'errorMessage' => 'vpc incorrect status.', 'description' => 'The specified VPC state is invalid.'], ['errorCode' => 'InvalidNatGatewayName.MalFormed', 'errorMessage' => 'NatGateway name is not valid.', 'description' => 'The specified NAT gateway name is invalid.'], ['errorCode' => 'InvalidNatGatewayDescription.MalFormed', 'errorMessage' => 'NatGateway description is not valid.', 'description' => 'The specified NAT gateway description is invalid.'], ['errorCode' => 'MissingParameter.BandwidthPackage', 'errorMessage' => 'only support one BandwidthPackage be created with NatGateway.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The user cannot allow to create natgw, please call PD to authorize', 'description' => ''], ['errorCode' => 'RouterEntryConflict.Duplicated', 'errorMessage' => 'A route entry already exists, which CIDR is \'0.0.0.0/0\'', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'Miss mandatory parameter.', 'description' => 'Required parameters must be specified.'], ['errorCode' => 'QuotaExceeded.BandwidthPackageIps', 'errorMessage' => 'The specified ipCount exceeded quota.', 'description' => 'The specified number of IP addresses exceeds the upper limit.'], ['errorCode' => 'AllocateIpFailed', 'errorMessage' => 'Alloc bandwidthPackage ips failed, maybe no available ip.', 'description' => ''], ['errorCode' => 'ParameterIllegal', 'errorMessage' => 'ipCount,bandwidth parameter invalid', 'description' => ''], ['errorCode' => 'ZONE_NO_AVAILABLE_IP', 'errorMessage' => 'The Zone have no available ip.', 'description' => 'No IP addresses are available in the specified zone.'], ['errorCode' => 'InvalidNatGatewayId.NotFound', 'errorMessage' => 'The NatGatewayId not exist.', 'description' => ''], ['errorCode' => 'InvalidParameter.Spec.ValueNotSupported', 'errorMessage' => 'The specified Spec is not valid.', 'description' => ''], ['errorCode' => 'COMMODITY.INVALID_COMPONENT', 'errorMessage' => 'The instance component is invalid.', 'description' => ''], ['errorCode' => 'OperationUnsupported.MultiNatGateway', 'errorMessage' => 'More than one natGateway per vpc is unsupported.', 'description' => ''], ['errorCode' => 'VswitchStatusError', 'errorMessage' => 'The VSwitch is creating .', 'description' => ''], ['errorCode' => 'Forbidden.CheckEntryRuleQuota', 'errorMessage' => 'Route entry quota rule check error.', 'description' => 'An error occurred when the system was checking the quota of route entries.'], ['errorCode' => 'OperationFailed.UnpaidBillsExist', 'errorMessage' => 'The account has unpaid bills. Please pay your overdue bill first.', 'description' => ''], ['errorCode' => 'IncorrectStatus.RouteEntry', 'errorMessage' => 'Specified routeEntry status error.', 'description' => ''], ['errorCode' => 'IncorrectStatus.RouteTableStatus', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The operation is too frequent, please wait a moment and try again.', 'description' => ''], ['errorCode' => 'OperationFailed.TokenVerfiy', 'errorMessage' => 'Token verify failed.', 'description' => ''], ['errorCode' => 'IllegalParam.Name', 'errorMessage' => 'The specified Name is invalid, shorter than 2 characters.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'Specified value of VpcId is not found in our record.', 'description' => 'The specified VPC ID does not exist.'], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'Specified value of ZoneId is not exists.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'VPC_ONLY_CAN_CREATE_ONE_NAT_GATEWAY', 'errorMessage' => 'NatGateway in one vpc support only one.', 'description' => ''], ['errorCode' => 'OperationFailed.CrateEntryTimeOut', 'errorMessage' => 'Operation failed because create custom routeEntry timeout.', 'description' => ''], ], 500 => [ ['errorCode' => 'OrderError.NatGateway', 'errorMessage' => 'The Account failed to create order.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateNatGateway'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateNatGateway'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateNatGateway', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NatGatewayId\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"ForwardTableIds\\": {\\n \\"ForwardTableId\\": [\\n \\"\\"\\n ]\\n },\\n \\"BandwidthPackageIds\\": {\\n \\"BandwidthPackageId\\": [\\n \\"\\"\\n ]\\n }\\n}","type":"json"}]', 'title' => 'CreateNatGateway', ], 'CreateNetworkInterface' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29255', 'abilityTreeNodes' => ['FEATUREecsT5S9N2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the elastic network interface. You can call the [DescribeRegions](~~25609~~) operation to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the elastic network interface.', 'type' => 'array', 'items' => [ 'description' => 'A tag for the elastic network interface.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the tag. Valid values for N: 1 to 20. The tag key cannot be an empty string. It can be up to 128 characters long and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of the tag. Valid values for N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters long and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the elastic network interface. You can call the [DescribeRegions](~~25609~~) operation to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. You can call the [ListResourceGroups](~~158855~~) operation to query resource groups.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4ph****', 'title' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VSwitch for the elastic network interface. The private IP addresses for the elastic network interface are assigned from the available CIDR block of the VSwitch.'."\n" ."\n" .'>'."\n" ."\n" .'The elastic network interface and the instance to be attached must be in the same availability zone but can belong to different VSwitches.'."\n" ."\n" .'>', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'vsw-bp1s5fnvk4gn2tws03****', 'title' => ''], ], [ 'name' => 'PrimaryIpAddress', 'in' => 'query', 'schema' => ['description' => 'The primary private IP address of the elastic network interface.'."\n" ."\n" .'The IP address must be an available IP address within the CIDR block of the VSwitch. If this parameter is not specified, the system randomly assigns an available IP address from the VSwitch\'s CIDR block.', 'type' => 'string', 'required' => false, 'example' => '172.17.**.**', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security group for the elastic network interface. The security group and the elastic network interface must be in the same VPC.'."\n" ."\n" .'> You must specify either `SecurityGroupId` or `SecurityGroupIds.N`, but not both.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp1fg655nh68xyz9i****', 'title' => ''], ], [ 'name' => 'NetworkInterfaceName', 'in' => 'query', 'schema' => ['description' => 'The name of the elastic network interface. The name must be 2 to 128 characters long and can contain Unicode letters (such as English and Chinese characters), digits (0-9), colons (:), underscores (\\_), periods (.), and hyphens (-).'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'testNetworkInterfaceName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the elastic network interface. The description must be 2 to 256 characters long and cannot start with `http://` or `https://`.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'Visible', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'boolean', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The type of the elastic network interface. Valid values:'."\n" ."\n" .'- `Secondary`: a secondary elastic network interface.'."\n" ."\n" .'- `Trunk`: a trunk network interface. (This feature is available by invitation only.)'."\n" ."\n" .'Default value: `Secondary`.', 'type' => 'string', 'required' => false, 'example' => 'Secondary', 'title' => ''], ], [ 'name' => 'BusinessType', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'SecondaryPrivateIpAddressCount', 'in' => 'query', 'schema' => ['description' => 'The number of secondary private IP addresses to automatically assign to the elastic network interface. Valid values: 1 to 49.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'QueueNumber', 'in' => 'query', 'schema' => ['description' => 'The number of queues for the elastic network interface. Valid values: 1 to 2048.'."\n" ."\n" .'When attached to an instance, this value must be less than the maximum number of queues per elastic network interface that the instance type supports. You can call the [DescribeInstanceTypes](~~25620~~) operation and check the `MaximumQueueNumberPerEni` value in the response to query this limit.'."\n" ."\n" .'If you do not specify this parameter, the default queue number for the instance type is used upon attachment.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token to ensure request idempotence. Your client generates this token, which must be unique across requests. The token can contain only ASCII characters and must not exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'NetworkInterfaceTrafficMode', 'in' => 'query', 'schema' => ['description' => 'The traffic mode of the elastic network interface. Valid values:'."\n" ."\n" .'- `Standard`: uses the TCP traffic mode.'."\n" ."\n" .'- `HighPerformance`: enables the Elastic RDMA Interface (ERI) and uses the RDMA traffic mode.'."\n" ."\n" .'> An elastic network interface in RDMA traffic mode can be attached only to an ERI-supported instance type. The number of these elastic network interfaces that can be attached is limited by the instance family. For more information, see [Instance families](~~25378~~), [Configure eRDMA on an enterprise-level instance](~~336853~~), and [Configure eRDMA on a GPU instance](~~2248432~~).'."\n" ."\n" .'Default value: `Standard`.', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'QueuePairNumber', 'in' => 'query', 'schema' => ['description' => 'The number of queue pairs for the RDMA-enabled elastic network interface.'."\n" ."\n" .'If you want to attach multiple RDMA-enabled elastic network interfaces to an instance, we recommend that you specify a `QueuePairNumber` value for each elastic network interface. The value should be based on the maximum `QueuePairNumber` value supported by the instance type and the number of elastic network interfaces that you plan to use. The total number of queue pairs for all elastic network interfaces cannot exceed the maximum value for the instance type. You can call the [DescribeInstanceTypes](~~2679699~~) operation to query the maximum value.'."\n" ."\n" .'>'."\n" ."\n" .'If you do not specify `QueuePairNumber` for an RDMA-enabled elastic network interface, the system defaults to the maximum value that the instance type supports. Consequently, you cannot attach any more RDMA-enabled elastic network interfaces to that instance. This does not affect standard elastic network interfaces.'."\n" ."\n" .'>', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '22', 'title' => ''], ], [ 'name' => 'SecurityGroupIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of one or more security groups to which to add the elastic network interface. The security groups and the elastic network interface must be in the same VPC. The valid values of N depend on the maximum number of security groups to which an elastic network interface can be added. For more information, see [Limits](~~25412~~).'."\n" ."\n" .'> You must specify either `SecurityGroupId` or `SecurityGroupIds.N`, but not both.', 'type' => 'array', 'items' => ['description' => 'The IDs of one or more security groups to which to add the elastic network interface. The security groups and the elastic network interface must be in the same VPC. The valid values of N depend on the maximum number of security groups to which an elastic network interface can be added. For more information, see [Limits](~~25412~~).'."\n" ."\n" .'> You must specify either `SecurityGroupId` or `SecurityGroupIds.N`, but not both.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp1fg655nh68xyz9i****', 'title' => ''], 'required' => false, 'example' => 'sg-bp1fg655nh68xyz9i****', 'maxItems' => 51, 'title' => '', ], ], [ 'name' => 'PrivateIpAddress', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more secondary private IP addresses to assign to the elastic network interface. The IP addresses must be available addresses from the CIDR block of the VSwitch to which the elastic network interface belongs. Valid values of N: 0 to 10.'."\n" ."\n" .'> You cannot specify both `PrivateIpAddress.N` and `SecondaryPrivateIpAddressCount` to assign secondary private IP addresses.', 'type' => 'array', 'items' => ['description' => 'One or more secondary private IP addresses to assign to the elastic network interface. The IP addresses must be available addresses from the CIDR block of the VSwitch to which the elastic network interface belongs. Valid values of N: 0 to 10.'."\n" ."\n" .'> You cannot specify both `PrivateIpAddress.N` and `SecondaryPrivateIpAddressCount` to assign secondary private IP addresses.', 'type' => 'string', 'required' => false, 'example' => '172.17.**.**', 'title' => ''], 'required' => false, 'example' => '172.17.**.**', 'maxItems' => 10, 'title' => '', ], ], [ 'name' => 'Ipv6Address', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more IPv6 addresses to assign to the elastic network interface. You can specify up to 10 IPv6 addresses. Valid values of N: 1 to 10.'."\n" ."\n" .'Example: `Ipv6Address.1=2001:db8:1234:1a00::****`'."\n" ."\n" .'> You must specify either `Ipv6Address.N` or `Ipv6AddressCount`, but not both, to assign IPv6 addresses.', 'type' => 'array', 'items' => ['description' => 'One or more IPv6 addresses to assign to the elastic network interface. You can specify up to 10 IPv6 addresses. Valid values of N: 1 to 10.'."\n" ."\n" .'Example: `Ipv6Address.1=2001:db8:1234:1a00::****`'."\n" ."\n" .'> You must specify either `Ipv6Address.N` or `Ipv6AddressCount`, but not both, to assign IPv6 addresses.', 'type' => 'string', 'required' => false, 'example' => '2001:db8:1234:1a00::****', 'title' => ''], 'required' => false, 'example' => '2001:db8:1234:1a00::****', 'maxItems' => 20, 'title' => '', ], ], [ 'name' => 'Ipv6AddressCount', 'in' => 'query', 'schema' => ['description' => 'The number of random IPv6 addresses to assign to the elastic network interface. Valid values: 1 to 10.'."\n" ."\n" .'> You must specify either `Ipv6Address.N` or `Ipv6AddressCount`, but not both, to assign IPv6 addresses.', 'type' => 'integer', 'format' => 'int32', 'minimum' => '1', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Ipv4Prefix', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more IPv4 prefixes to assign to the elastic network interface. Valid values of N: 1 to 10.'."\n" ."\n" .'> You must specify either `Ipv4Prefix.N` or `Ipv4PrefixCount`, but not both, to assign IPv4 prefixes.', 'type' => 'array', 'items' => ['description' => 'One or more IPv4 prefixes to assign to the elastic network interface. Valid values of N: 1 to 10.'."\n" ."\n" .'> You must specify either `Ipv4Prefix.N` or `Ipv4PrefixCount`, but not both, to assign IPv4 prefixes.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**/28', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'Ipv4PrefixCount', 'in' => 'query', 'schema' => ['description' => 'The number of IPv4 prefixes to assign to the elastic network interface. Valid values: 1 to 10.'."\n" ."\n" .'> You must specify either `Ipv4Prefix.N` or `Ipv4PrefixCount`, but not both, to assign IPv4 prefixes.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '10', 'minimum' => '1', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Ipv6Prefix', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more IPv6 prefixes to assign to the elastic network interface. Valid values of N: 1 to 10.'."\n" ."\n" .'> You must specify either `Ipv6Prefix.N` or `Ipv6PrefixCount`, but not both, to assign IPv6 prefixes.', 'type' => 'array', 'items' => ['description' => 'One or more IPv6 prefixes to assign to the elastic network interface. Valid values of N: 1 to 10.'."\n" ."\n" .'> You must specify either `Ipv6Prefix.N` or `Ipv6PrefixCount`, but not both, to assign IPv6 prefixes.', 'type' => 'string', 'required' => false, 'example' => '2001:db8:1234:1a00:****::/80', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'Ipv6PrefixCount', 'in' => 'query', 'schema' => ['description' => 'The number of IPv6 prefixes to assign to the elastic network interface. Valid values: 1 to 10.'."\n" ."\n" .'> You must specify either `Ipv6Prefix.N` or `Ipv6PrefixCount`, but not both, to assign IPv6 prefixes.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '10', 'minimum' => '1', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'DeleteOnRelease', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release the elastic network interface when its attached instance is released. Valid values:'."\n" ."\n" .'- `true`: The elastic network interface is released.'."\n" ."\n" .'- `false`: The elastic network interface is retained.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'TxQueueSize', 'in' => 'query', 'schema' => ['description' => 'The transmit (Tx) queue depth of the elastic network interface.'."\n" ."\n" .'- The transmit (Tx) and receive (Rx) queue depths must be equal. The value must be a power of 2 between 8,192 and 16,384.'."\n" ."\n" .'- A larger Tx queue depth can improve transmit throughput but consumes more memory.'."\n" ."\n" .'> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8192', 'title' => ''], ], [ 'name' => 'RxQueueSize', 'in' => 'query', 'schema' => ['description' => 'The receive (Rx) queue depth of the elastic network interface.'."\n" ."\n" .'- The receive (Rx) and transmit (Tx) queue depths must be equal. The value must be a power of 2 between 8,192 and 16,384.'."\n" ."\n" .'- A larger Rx queue depth can improve receive throughput but consumes more memory.'."\n" ."\n" .'> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8192', 'title' => ''], ], [ 'name' => 'NetworkInterfaceTrafficConfig', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The communication parameters of the elastic network interface.', 'type' => 'object', 'properties' => [ 'QueueNumber' => ['description' => 'The number of queues for the elastic network interface.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8', 'title' => ''], 'NetworkInterfaceTrafficMode' => ['description' => 'The traffic mode of the elastic network interface.', 'type' => 'string', 'required' => false, 'example' => 'HighPerformance', 'title' => ''], 'QueuePairNumber' => ['description' => 'The number of queue pairs for the RDMA-enabled elastic network interface.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8', 'title' => ''], 'TxQueueSize' => ['description' => 'The transmit (Tx) queue depth of the elastic network interface.'."\n" ."\n" .''."\n" ."\n" .'> This parameter is available by invitation only. To request access, submit a ticket.'."\n" ."\n" .''."\n" ."\n" .''."\n" ."\n" .'> This parameter is available by invitation only. To request access, submit a ticket.'."\n" ."\n" .''."\n" ."\n" .'- This parameter is applicable only to seventh-generation or later ECS instance types.'."\n" ."\n" .'- This parameter is applicable only to Linux images.'."\n" ."\n" .'- A larger Tx queue depth can improve transmit throughput and reduce the packet loss rate, but consumes more memory.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8192', 'title' => ''], 'RxQueueSize' => ['description' => 'The receive (Rx) queue depth of the elastic network interface.'."\n" ."\n" .''."\n" ."\n" .'> This parameter is available by invitation only. To request access, submit a ticket.'."\n" ."\n" .''."\n" ."\n" .''."\n" ."\n" .'> This parameter is available by invitation only. To request access, submit a ticket.'."\n" ."\n" .''."\n" ."\n" .'- This parameter is applicable only to seventh-generation or later ECS instance types.'."\n" ."\n" .'- This parameter is applicable only to Linux images.'."\n" ."\n" .'- A larger Rx queue depth can improve receive throughput and reduce the packet loss rate, but consumes more memory.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8192', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ConnectionTrackingConfiguration', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The connection tracking settings.'."\n" ."\n" .'Before using this parameter, read [Connection timeout management](~~2865958~~).', 'type' => 'object', 'properties' => [ 'TcpEstablishedTimeout' => ['description' => 'The timeout for an established TCP connection, in seconds. Valid values: 30, 60, 80, 100, 200, 300, 500, 700, and 910.'."\n" ."\n" .'Default value: 910.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '910', 'title' => ''], 'TcpClosedAndTimeWaitTimeout' => ['description' => 'The timeout for a TCP connection in the TIME\\_WAIT or closing state, in seconds. Valid values: integers from 3 to 15.'."\n" ."\n" .'Default value: 3.'."\n" ."\n" .'> If your ECS instance works with NLB or CLB, the default timeout period for connections in the `TIME_WAIT` state is 15 seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], 'UdpTimeout' => ['description' => 'The timeout for a UDP stream, in seconds. Valid values: 10, 20, 30, 60, 80, and 100.'."\n" ."\n" .'Default value: 30.'."\n" ."\n" .'> If your ECS instance works with NLB or CLB, the default value is 100 seconds.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'EnhancedNetwork', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'object', 'properties' => [ 'EnableSriov' => ['description' => '> This parameter is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'EnableRss' => ['description' => '> This parameter is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], 'VirtualFunctionTotalQueueNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], 'VirtualFunctionQuantity' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'SourceDestCheck', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable source/destination check. Enabling this feature enhances network security. Valid values:'."\n" ."\n" .'- `true`: enabled.'."\n" ."\n" .'- `false`: disabled.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This feature is available only in some regions. Before you use this feature, read [Source/destination check](~~2863210~~).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the elastic network interface.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'Type' => ['description' => 'The type of the elastic network interface.', 'type' => 'string', 'example' => 'Secondary', 'title' => ''], 'VpcId' => ['description' => 'The ID of the VPC to which the elastic network interface belongs.', 'type' => 'string', 'example' => 'vpc-bp1j7w3gc1cexjqd****', 'title' => ''], 'NetworkInterfaceName' => ['description' => 'The name of the elastic network interface.', 'type' => 'string', 'example' => 'my-eni-name', 'title' => ''], 'MacAddress' => ['description' => 'The MAC address of the elastic network interface.', 'type' => 'string', 'example' => '00:16:3e:12:**:**', 'title' => ''], 'NetworkInterfaceId' => ['description' => 'The ID of the elastic network interface.', 'type' => 'string', 'example' => 'eni-bp14v2sdd3v8htln****', 'title' => ''], 'ServiceID' => ['description' => 'The ID of the distributor for the elastic network interface.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345678910', 'title' => ''], 'OwnerId' => ['description' => 'The ID of the account that owns the elastic network interface.', 'type' => 'string', 'example' => '123456****', 'title' => ''], 'ServiceManaged' => ['description' => 'Specifies whether the elastic network interface is managed by a cloud service or a distributor.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'VSwitchId' => ['description' => 'The ID of the vSwitch.', 'type' => 'string', 'example' => 'vsw-bp16usj2p27htro3****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'Description' => ['description' => 'The description of the elastic network interface.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-2ze88m67qx5z****', 'title' => ''], 'ZoneId' => ['description' => 'The ID of the zone.', 'type' => 'string', 'example' => 'cn-hangzhou-e', 'title' => ''], 'PrivateIpAddress' => ['description' => 'The primary private IP address of the elastic network interface.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'SecurityGroupIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupId' => [ 'description' => 'A list of security group IDs.', 'type' => 'array', 'items' => ['description' => 'The security group ID.', 'type' => 'string', 'example' => 'sg-bp18kz60mefsicfg****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => 'The IDs of the security groups to which the elastic network interface belongs.', 'title' => '', 'example' => '', ], 'PrivateIpSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PrivateIpSet' => [ 'description' => 'A collection of private IP address sets.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PrivateIpAddress' => ['description' => 'The private IP address.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'Primary' => ['description' => 'Indicates whether the IP address is the primary private IP address.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The private IP addresses that are assigned to the elastic network interface.', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The tags of the elastic network interface.', 'title' => '', 'example' => '', ], 'Ipv6Sets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6Set' => [ 'description' => 'The assigned IPv6 addresses of the ENI.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'Ipv6Address' => ['description' => 'The IPv6 address.', 'type' => 'string', 'example' => '2001:db8:1234:1a00::****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The IPv6 addresses that are assigned to the elastic network interface.', 'title' => '', 'example' => '', ], 'Ipv4PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv4PrefixSet' => [ 'description' => 'The assigned IPv4 prefixes of the ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv4Prefix' => ['description' => 'The IPv4 prefix.', 'type' => 'string', 'example' => '192.168.**.**/28', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The IPv4 prefixes that are assigned to the elastic network interface.', 'title' => '', 'example' => '', ], 'Ipv6PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6PrefixSet' => [ 'description' => 'The assigned IPv6 prefixes of the ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv6Prefix' => ['description' => 'The IPv6 prefix.', 'type' => 'string', 'example' => '2001:db8:1234:1a00:****::/80', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The IPv6 prefixes that are assigned to the elastic network interface.', 'title' => '', 'example' => '', ], 'SourceDestCheck' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEcsState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.DetachPrimaryEniNotAllowed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'JoinedGroupLimitExceed', 'errorMessage' => '%s', 'description' => 'The maximum number of security groups to which the specified resource can be added has been reached. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidParameter.SecurityGroupIdRepeated', 'errorMessage' => '%s', 'description' => 'The security group ID passed in is duplicate.'], ['errorCode' => 'InvalidSecurityGroupId.SingleIdAndMultiIdConflict', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Check whether parameter conflicts exist. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidConnectionTrackingConfiguration.RegionOrUserNotSupported', 'errorMessage' => 'The specified parameter ConnectionTrackingConfiguration is not supported in this region, or this account is not in the whitelist of using network interface ConnectionTrackingConfiguration.', 'description' => 'The specified parameter ConnectionTrackingConfiguration is not supported in this region, or this account is not in the whitelist of using network interface ConnectionTrackingConfiguration.'], ['errorCode' => 'InvalidOperation.EniCountExceeded', 'errorMessage' => '%s.', 'description' => 'The maximum number of NICs in the Enterprise Security Group has been reached.'], ['errorCode' => 'InvalidPrivateIpAddress.Duplicated', 'errorMessage' => 'The specified private IP address "%s" is duplicated.', 'description' => 'The specified IP address is already in use.'], ['errorCode' => 'IncorrectVSwitchStatus', 'errorMessage' => 'The operation is not allowed in the current VSwitch state. Expecting state includes "Created Available", but current state is "%s".', 'description' => 'The operation is not supported in the current state of the vSwitch.'], ['errorCode' => 'InvalidEniQueueSize.RegionOrUserNotSupported', 'errorMessage' => 'The specified parameter "RxQueueSize" or "TxQueueSize" is not supported in this region or this account is not allowed to use ENI QueueSize.', 'description' => 'You are not authorized to specify the length of NIC queues or cannot specify the length of NIC queues in the current region.'], ['errorCode' => 'InvalidParameter.EniQueueSize', 'errorMessage' => 'The specified parameter "TxQueueSize" and "RxQueueSize" are not equal or the value must be 8192 or 16384.', 'description' => 'The specified parameter TxQueueSize and RxQueueSize are not equal or not the allowed value.'], ['errorCode' => 'InvalidParameter.EniConnectionTrackingConfiguration', 'errorMessage' => 'The specified ENI connection tracking configuration "%s" must be between %s and %s.', 'description' => 'The network connection configuration specified by the network card exceeds the allowable range'], ['errorCode' => 'QuotaExceeded.PrivateIpAddress', 'errorMessage' => 'There are not enough private IPs in the specified VSwitch.', 'description' => 'The current VSwitch does not have enough Ip'], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'InvalidVSwitch.IllegalStatus', 'errorMessage' => 'The operation is not allowed in the current VSwitch state. Expecting state includes "Created", but current state is "%s".', 'description' => 'The current VSwitch status does not support this operation.'], ['errorCode' => 'InvalidParameter.EniEnhancedNetwork', 'errorMessage' => 'The input parameter "EnhancedNetwork" is illegal, when EnableSriov is true, VirtualFunctionTotalQueueNumber must not be empty, and VirtualFunctionQuantity must be 1 to 256. When EnableSriov is empty or false, VirtualFunctionTotalQueueNumber and VirtualFunctionQuantity must be empty.', 'description' => 'The specified network enhancement function parameter is illegal. When the EnableSriov is set to true, the VirtualFunctionTotalQueueNumber must not be empty and the VirtualFunctionQuantity value range is 1-256; When the EnableSriov is empty or set to false, the VirtualFunctionTotalQueueNumber and VirtualFunctionQuantity must be empty'], ], [ ['errorCode' => 'InvalidOperation.SecurityGroupNotAuthorized', 'errorMessage' => 'The specified security group is not authorized to operate.', 'description' => 'You do not have permission to operate the current security group.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'InValidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'MaxEniCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be managed has been reached.'], ['errorCode' => 'EniPerInstanceLimitExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be attached to the specified instance has been reached.'], ['errorCode' => 'InvalidOperation.AvailabilityZoneMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.VpcMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check whether the VPC in the operation corresponds to other parameters.'], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSecurityGroupId.NotVpc', 'errorMessage' => '%s', 'description' => 'The specified SecurityGroupId parameter is invalid and the network type of the security group is not VPC.'], ['errorCode' => 'InvalidOperation.InvalidEniType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.IpNotEnough', 'errorMessage' => '%s', 'description' => 'The number of available IP addresses on the specified vSwitch is insufficient.'], ['errorCode' => 'InvalidVSwitchId.IpInvalid', 'errorMessage' => '%s', 'description' => 'The specified private IP address is invalid.'], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidIp.Address', 'errorMessage' => '%s', 'description' => 'The IP entered is not in the correct format or is not in the optional CIDR range.'], ['errorCode' => 'InvalidIp.IpRepeated', 'errorMessage' => '%s', 'description' => 'The specified IP address already exists.'], ['errorCode' => 'MaxEniPrivateIpsCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of secondary private IP addresses that can be assigned to the specified ENI has been exceeded. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ['errorCode' => 'InvalidOperation.TrunkingIsNotAllowed', 'errorMessage' => '%s', 'description' => 'The trunk network card is not operational.'], ['errorCode' => 'InvalidParameter.InvalidEniQueueNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.MaxEniQueueNumberExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.ExceedInstanceTypeQueueNumber', 'errorMessage' => '%s', 'description' => 'The maximum number of queues for all ENIs on an instance has been exceeded. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidParameter.EniTrafficMode', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.HighPerformanceTrafficModeIsNotAllowed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.QueuePairNumberMustEmpty', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.InvalidQueuePairNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParams.NetworkInterfaceName', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidIp.IpPrefixIllegal', 'errorMessage' => 'The ip prefixes %s is/are illegal.', 'description' => 'The IP address prefix is invalid and is not in the CIDR format.'], ['errorCode' => 'InvalidIp.IpPrefixMustInReserveSegment', 'errorMessage' => 'The ip prefix must in vswitch reserve segment.', 'description' => 'The IP address prefix is invalid and is not in the reserved CIDR block of the vSwitch.'], ['errorCode' => 'InvalidOperation.Ipv4CountExceeded', 'errorMessage' => '%s', 'description' => 'The operation is valid because the maximum number of IPv4 addresses has been reached.'], ['errorCode' => 'InvalidOperation.Ipv6CountExceeded', 'errorMessage' => '%s', 'description' => 'The operation is valid because the maximum number of IPv6 addresses has been reached.'], ['errorCode' => 'InvalidOperation.HighPerformanceTrafficModeEniUnsupported', 'errorMessage' => 'High performance traffic mode does not support the current ENI type. Expected ENI type is "%s" but the current ENI type is "%s".', 'description' => 'High performance traffic mode does not support the current ENI type.'], ['errorCode' => 'AclLimitExceed', 'errorMessage' => '%s', 'description' => 'The number of ACL rules for an ENI or instance exceeds the upper limit.'], ['errorCode' => 'InvalidIp.IpPrefixMaskInvalid', 'errorMessage' => 'The IP prefix mask %s is illegal which must be between %s and %s.', 'description' => 'The IP prefix mask is invalid and is not in the valid range.'."\n"], ['errorCode' => 'InvalidVSwitchId.IpPrefixNotEnough', 'errorMessage' => 'The specified VSwitch does not have enough IP prefixes.', 'description' => 'The number of IP prefixes in the specified switch is insufficient.'], ['errorCode' => 'InvalidIp.IpPrefixMaskNotSame', 'errorMessage' => 'The IP prefixes %s are illegal.The IP prefix mask must be the same.', 'description' => 'The IP prefix masks are not the same.'], ['errorCode' => 'EnterpriseGroupLimited.MutliGroupType', 'errorMessage' => 'The specified instance can\'t associate security group of different types.', 'description' => 'The specified instance cannot be added to both a common security group and an enterprise security group. You can call the DescribeSecurityGroups query to specify the type of security group.'], ['errorCode' => 'InvalidOperation.BoundingEniSlaveQuotaExceed', 'errorMessage' => 'The number of Slave ENIs exceeds the limit of Bond ENI.', 'description' => 'The number of Slave ENIs exceeds the limit of Bond ENI.'], ['errorCode' => 'InvalidIp.IpPrefixNotAvailable', 'errorMessage' => 'The IP prefix is not available.', 'description' => 'The IP prefix is not free.'], ['errorCode' => 'InvalidIp.IpPrefixMaskIllegal', 'errorMessage' => 'The current IP prefix mask is illegal.', 'description' => 'Illegal IP prefix mask.'], ['errorCode' => 'InvalidIp.IpPrefixNotStrict', 'errorMessage' => 'The IP prefix "%s" must be strict CIDR format.', 'description' => 'Invalid IP prefix, not strictly cidr.'], ['errorCode' => 'InvalidOperation.NotSupport', 'errorMessage' => 'The specified region does not support allocating IPv6 when creating ENI.', 'description' => 'The specified region does not support allocating IPv6 when creating ENI.'], ], [ ['errorCode' => 'InvalidEcsId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance ID does not exist.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified security group ID does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'InvalidOperation.MaxEniIpv6IpsCountExceeded', 'errorMessage' => 'The ipv6 address count exceed limitation.', 'description' => ''], ['errorCode' => 'InvalidOperation.VSwitchIpv6Disabled', 'errorMessage' => 'The specified VSwitch does not support Ipv6 feature.', 'description' => 'The specified VSwitch does not support IPv6.'], ['errorCode' => 'InvalidOperation.EnableIpv6Failed', 'errorMessage' => 'The specified VSwitch does not support Ipv6 feature.', 'description' => ''], ['errorCode' => 'InvalidOperation.AddressAlreadyAllocated', 'errorMessage' => 'The specified ipv6 has been already allocated.', 'description' => ''], ['errorCode' => 'InvalidOperation.AddressNotInVSwitchCidr', 'errorMessage' => 'The specified ipv6 does not match VSwitch cidr scope.', 'description' => ''], ['errorCode' => 'InvalidOperation.SlaveEniMustHaveBondingEni', 'errorMessage' => 'Ensure you create the corresponding Bond ENI before creating Slave ENI.', 'description' => 'You must create a Bond network card before creating a Slave network card.'], ['errorCode' => 'InvalidOperation.EniTrafficModeNotSupportIpv6', 'errorMessage' => 'The High Performance(RDMA) traffic mode does not support IPv6.', 'description' => 'ENIs that use the RDMA communication mode do not support IPv6.'], ['errorCode' => 'InvalidOperation.VSwitchCidrReservationNotExist', 'errorMessage' => 'The specified VSwitch does not have CIDR reservation.', 'description' => 'The specified switch does not have a reserved segment available.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ['errorCode' => 'InvalidOperation.RegionNotSupportIpPrefix', 'errorMessage' => 'The current region does not support IP prefix feature.', 'description' => 'The region does not support IP prefix allocation.'], ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => 'Request timed out, please try again.'], ], ], 'title' => 'CreateNetworkInterface', 'summary' => 'You can create an elastic network interface (ENI) and specify its primary private IP address.', 'description' => 'When you call this operation, note the following:'."\n" ."\n" .'- This is a synchronous operation. A newly created elastic network interface is in the `Available` state and can be attached to an instance immediately.'."\n" ."\n" .'- If the response does not contain a `NetworkInterfaceId`, try creating the elastic network interface again.'."\n" ."\n" .'- An elastic network interface can be attached to only one instance in a VPC.'."\n" ."\n" .'- When you reattach an elastic network interface to another instance, its properties remain unchanged and network traffic is redirected to the new instance.'."\n" ."\n" .'- You can assign up to 49 secondary private IP addresses when you create an elastic network interface.'."\n" ."\n" .'- To assign an IPv6 address when creating an elastic network interface, ensure that IPv6 is enabled for the specified VSwitch. For more information, see [What is an IPv6 gateway](~~98896~~).'."\n" ."\n" .'- Each account has a resource quota that limits the number of elastic network interfaces you can create in an Alibaba Cloud region. You can view your resource quotas in the ECS console. For more information, see [View and increase resource quotas](~~184115~~).'."\n" ."\n" .'### Request examples'."\n" ."\n" .'
'."\n" ."\n" .''."\n" ."\n" .'Create an elastic network interface'."\n" ."\n" .''."\n" ."\n" .'```'."\n" .'RegionId: cn-hangzhou, // China (Hangzhou) region.'."\n" .'SecurityGroupId: sg-bp10jztp6b0sdsyl****, // The security group ID.'."\n" .'VSwitchId: vsw-bp19wo63nleroq22g****, // The VSwitch ID.'."\n" .'```'."\n" ."\n" .'
'."\n" ."\n" .'
'."\n" ."\n" .''."\n" ."\n" .'Create an elastic network interface and specify a primary private IP address'."\n" ."\n" .''."\n" ."\n" .'```'."\n" .'RegionId: cn-hangzhou, // China (Hangzhou) region.'."\n" .'SecurityGroupId: sg-bp10jztp6b0sdsyl****, // security group ID.'."\n" .'VSwitchId: vsw-bp19wo63nleroq22g****, // VSwitch ID.'."\n" .'PrimaryIpAddress: 192.168.0.*, // primary private IP address.'."\n" .'```'."\n" ."\n" .'
', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-05-21T06:56:02.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-03-25T11:47:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-13T03:06:31.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-09T05:47:02.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-12-04T10:04:25.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-05T02:25:49.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-08-19T02:41:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-07-03T11:17:05.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-07-03T03:08:54.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-06-26T01:44:27.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-05-17T06:05:12.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-05-07T06:51:13.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-02-28T02:57:03.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-01-24T09:49:29.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2023-10-09T12:23:26.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2023-04-26T08:09:21.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-11-24T14:05:53.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2022-07-19T06:11:45.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-07-05T02:32:40.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateNetworkInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateNetworkInterface', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:IsDefaultVSwitch', 'validationType' => 'always'], ['conditionKey' => 'vpc:IsDefaultVpc', 'validationType' => 'always'], ['conditionKey' => 'vpc:VPC', 'validationType' => 'always'], ['conditionKey' => 'vpc:tag', 'validationType' => 'always'], ['conditionKey' => 'vpc:tag', 'validationType' => 'always'], ['conditionKey' => 'vpc:tag', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/*'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'SecurityGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:securitygroup/{#securitygroupId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VSwitch', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vswitch/{#vswitchId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Available\\",\\n \\"Type\\": \\"Secondary\\",\\n \\"VpcId\\": \\"vpc-bp1j7w3gc1cexjqd****\\",\\n \\"NetworkInterfaceName\\": \\"my-eni-name\\",\\n \\"MacAddress\\": \\"00:16:3e:12:**:**\\",\\n \\"NetworkInterfaceId\\": \\"eni-bp14v2sdd3v8htln****\\",\\n \\"ServiceID\\": 12345678910,\\n \\"OwnerId\\": \\"123456****\\",\\n \\"ServiceManaged\\": true,\\n \\"VSwitchId\\": \\"vsw-bp16usj2p27htro3****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Description\\": \\"testDescription\\",\\n \\"ResourceGroupId\\": \\"rg-2ze88m67qx5z****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-e\\",\\n \\"PrivateIpAddress\\": \\"172.17.**.**\\",\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-bp18kz60mefsicfg****\\"\\n ]\\n },\\n \\"PrivateIpSets\\": {\\n \\"PrivateIpSet\\": [\\n {\\n \\"PrivateIpAddress\\": \\"172.17.**.**\\",\\n \\"Primary\\": true\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"Ipv6Sets\\": {\\n \\"Ipv6Set\\": [\\n {\\n \\"Ipv6Address\\": \\"2001:db8:1234:1a00::****\\"\\n }\\n ]\\n },\\n \\"Ipv4PrefixSets\\": {\\n \\"Ipv4PrefixSet\\": [\\n {\\n \\"Ipv4Prefix\\": \\"192.168.**.**/28\\"\\n }\\n ]\\n },\\n \\"Ipv6PrefixSets\\": {\\n \\"Ipv6PrefixSet\\": [\\n {\\n \\"Ipv6Prefix\\": \\"2001:db8:1234:1a00:****::/80\\"\\n }\\n ]\\n },\\n \\"SourceDestCheck\\": false\\n}","type":"json"}]', 'translator' => 'machine', ], 'CreateNetworkInterfacePermission' => [ 'summary' => 'Grants elastic network interface (ENI) permissions to an Alibaba Cloud partner (certified ISV) or an individual user.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29256', 'abilityTreeNodes' => ['FEATUREecsT5S9N2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region of the ENI permission. You can call [DescribeRegions](~~25609~~) to query the most recent region list of Alibaba Cloud.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region of the ENI permission. You can call [DescribeRegions](~~25609~~) to query the most recent region list of Alibaba Cloud.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'AccountId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Alibaba Cloud partner (certified ISV) account or individual user.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1234567890', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the ENI.', 'type' => 'string', 'required' => true, 'example' => 'eni-bp14v2sdd3v8htln****', 'title' => ''], ], [ 'name' => 'Permission', 'in' => 'query', 'schema' => ['description' => 'The ENI permission. Only InstanceAttach is currently supported.'."\n" ."\n" .'InstanceAttach: allows the authorized user to attach your ENI to their ECS instance. The ECS instance must be in the same zone as the ENI.', 'type' => 'string', 'required' => true, 'example' => 'InstanceAttach', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0FCD3DEF-63D3-4605-A818-805C8BD7DB87', 'title' => ''], 'NetworkInterfacePermission' => [ 'description' => 'The information about the ENI permission.', 'type' => 'object', 'properties' => [ 'Permission' => ['description' => 'The ENI permission.', 'type' => 'string', 'example' => 'InstanceAttach', 'title' => ''], 'NetworkInterfaceId' => ['description' => 'The ENI ID.', 'type' => 'string', 'example' => 'eni-bp14v2sdd3v8htln****', 'title' => ''], 'AccountId' => ['description' => 'The ID of the Alibaba Cloud partner (certified ISV) account.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890', 'title' => ''], 'NetworkInterfacePermissionId' => ['description' => 'The ENI permission ID.', 'type' => 'string', 'example' => 'eni-perm-bp1cs4lwn56lfb****', 'title' => ''], 'ServiceName' => ['description' => 'The Alibaba Cloud service name.', 'type' => 'string', 'example' => 'Elastic Compute Service', 'title' => ''], 'PermissionState' => ['description' => 'The ENI permission state. Valid values:'."\n" ."\n" .'- Pending: The permission is being granted.'."\n" .'- Granted: The permission has been granted.'."\n" .'- Revoking: The permission is being revoked.'."\n" .'- Revoked: The permission has been revoked.', 'type' => 'string', 'example' => 'Granted', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'NotBelongUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage the specified resource.'], ['errorCode' => 'InvalidOperation.PermissionExisted', 'errorMessage' => '%s', 'description' => 'This NetworkInterfacePermission already exists.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ], [ ['errorCode' => 'InvalidOperation.PermissionNotExisted', 'errorMessage' => '%s', 'description' => 'The operation is invalid. First apply for permissions to perform the operation.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ], ], 'title' => 'Grant ENI permissions to a certified ISV or individual user', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateNetworkInterfacePermission'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateNetworkInterfacePermission', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0FCD3DEF-63D3-4605-A818-805C8BD7DB87\\",\\n \\"NetworkInterfacePermission\\": {\\n \\"Permission\\": \\"InstanceAttach\\",\\n \\"NetworkInterfaceId\\": \\"eni-bp14v2sdd3v8htln****\\",\\n \\"AccountId\\": 1234567890,\\n \\"NetworkInterfacePermissionId\\": \\"eni-perm-bp1cs4lwn56lfb****\\",\\n \\"ServiceName\\": \\"Elastic Compute Service\\",\\n \\"PermissionState\\": \\"Granted\\"\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'CreatePhysicalConnection' => [ 'summary' => 'CreatePhysicalConnection', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'vpc接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region for the physical connection. You can call the `DescribeRegions` operation to obtain the latest list of regions.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'AccessPointId', 'in' => 'query', 'schema' => ['description' => 'The access point ID. You can call the `DescribeAccessPoints` operation to obtain a list of available access points.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The type of the physical connection. Valid values: `VPC` and `VBR`. The default value is `VPC`. This parameter is available only to whitelisted users.', 'type' => 'string', 'required' => false, 'default' => 'VPC', 'title' => '', 'example' => ''], ], [ 'name' => 'LineOperator', 'in' => 'query', 'schema' => ['description' => 'The carrier that provides the physical connection. Valid values: `CT` (China Telecom), `CU` (China Unicom), `CM` (China Mobile), `CO` (other Chinese carriers), and `AL` (Alibaba Cloud).', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'bandwidth', 'in' => 'query', 'schema' => ['description' => 'The bandwidth of the physical connection in Mbit/s. The value must be an integer that ranges from 1 to 10,240.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '100', 'title' => '', 'example' => ''], ], [ 'name' => 'PeerLocation', 'in' => 'query', 'schema' => ['description' => 'The physical location of your on-premises data center.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'PortType', 'in' => 'query', 'schema' => ['description' => 'The port type of the physical connection. You cannot change this parameter after the physical connection is created. Valid values: `1000Base-LX` (1 Gbit/s), `10GBase-LR` (10 Gbit/s), and `40GBase-LR` (40 Gbit/s).', 'type' => 'string', 'required' => false, 'default' => '1000Base-T', 'title' => '', 'example' => ''], ], [ 'name' => 'RedundantPhysicalConnectionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the redundant physical connection. The redundant physical connection must be in the `Allocated`, `Confirmed`, or `Enabled` state.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the physical connection. The description must be 2 to 256 characters long and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the physical connection. The name must be 2 to 128 characters long. It must start with a letter and can contain letters, digits, underscores (`_`), and hyphens (`-`).', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'CircuitCode', 'in' => 'query', 'schema' => ['description' => 'The circuit code provided by the carrier.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token that you can use to ensure the idempotency of the request. This token must be unique across requests, contain only ASCII characters, and be no more than 64 characters long.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token that you can use to ensure the idempotency of the request. This token must be unique across requests, contain only ASCII characters, and be no more than 64 characters long.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['description' => 'The user CIDR block. This parameter is required when `Type` is set to `VPC`. The CIDR block must be a private IPv4 block. Valid CIDR blocks include the following blocks and their subnets: `10.0.0.0/8`, `172.16.0.0/12`, and `192.168.0.0/16`.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'PhysicalConnectionId' => ['description' => 'The ID of the physical connection.', 'type' => 'string', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Invalid.Status', 'errorMessage' => 'The device or interface status invalid, or has been used..', 'description' => ''], ['errorCode' => 'InvalidAccessPointId.NotEnabled', 'errorMessage' => 'Invalid access point status.', 'description' => ''], ['errorCode' => 'InvalidType.Malformd', 'errorMessage' => 'The Type provided was invalid.', 'description' => 'The type is invalid.'], ['errorCode' => 'InvalidPeerLocation.Malformd', 'errorMessage' => 'The PeerLocation provided was invalid.', 'description' => 'The specified PeerLocation parameter is invalid.'], ['errorCode' => 'InvalidLineOperator.Malformd', 'errorMessage' => 'The LineOperator provided was invalid.', 'description' => 'The specified LineOperator parameter is invalid.'], ['errorCode' => 'InvalidPortType.Malformd', 'errorMessage' => 'The PortType provided was invalid.', 'description' => 'The specified PortType parameter is invalid.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specifid ??Description?? is not valid.', 'description' => ''], ['errorCode' => 'InvalidRedundantPhysicalConnectionId.NotFound', 'errorMessage' => 'The RedundantPhysicalConnectionId does not found.', 'description' => ''], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => 'The specified ??Name?? is not valid.', 'description' => ''], ['errorCode' => 'QuotaExceeded.pConnPerAP', 'errorMessage' => 'Physical connection count per ap quota exceed.', 'description' => 'The maximum number of physical connections per AP has been reached.'], ['errorCode' => 'InvalidBandwidth', 'errorMessage' => 'invalid physical connection banwidth.', 'description' => 'The specified bandwidth value of the physical connection is invalid.'], ['errorCode' => 'InvalidRedundantPhysicalConnection', 'errorMessage' => 'redundant physical connection doesn\'t belong to current user.', 'description' => ''], ['errorCode' => 'InvalidRedundantPhysicalConnectionStatus', 'errorMessage' => 'invalid redundant physical connection status.', 'description' => 'The state of the standby physical connection is invalid.'], ['errorCode' => 'InvalidCircuitCode.Malformed', 'errorMessage' => 'circuitCode is illegal.', 'description' => ''], ['errorCode' => 'QuotaExceeded.freePconnPerAP', 'errorMessage' => 'free physical connections count excceeded.', 'description' => 'The free quota on physical connections has been used up.'], ['errorCode' => 'InvalidPhysicalConnectionOperator.Malformed', 'errorMessage' => 'Specified PhysicalConnection Operator is not valid.', 'description' => ''], ['errorCode' => 'InvalidPhysicalConnectionPortType.Malformed', 'errorMessage' => 'Specified PhysicalConnection PortType is not valid.', 'description' => ''], ['errorCode' => 'InvalidPhysicalConnectionBandwidth.Malformed', 'errorMessage' => 'Specified PhysicalConnection Bandwidth is not valid.', 'description' => ''], ['errorCode' => 'IllegalParam.ClientToken', 'errorMessage' => 'Token verify failed because client token length too long.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidAccessPointId.NotFound', 'errorMessage' => 'The AccessPointId provided does not exist in our records.', 'description' => 'The specified AccessPointId parameter does not exist.'], ['errorCode' => 'InvalidPortType.NotFound', 'errorMessage' => 'There are no resources with the portType.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreatePhysicalConnection'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreatePhysicalConnection'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreatePhysicalConnection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PhysicalConnectionId\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreatePhysicalConnection', 'translator' => 'machine', ], 'CreatePlanMaintenanceWindow' => [ 'summary' => 'Creates an O&M window. When the TargetResource parameter of the O&M window is set to associate with ECS instances and a hardware risk is detected at the underlying layer that requires scheduled O&M to mitigate, the execution time of the scheduled O&M is determined based on the time range specified by the TimePeriod parameter. When the execution time of the O&M event is reached, the platform automatically performs the corresponding O&M operation based on the event type.', 'path' => '', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '254058', 'abilityTreeNodes' => ['FEATUREecsET2ML7'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PlanWindowName', 'in' => 'query', 'schema' => ['description' => 'The name of the O&M window. You can specify a custom name. The name can be up to 200 characters in length.', 'type' => 'string', 'required' => true, 'example' => 'WIndowName', 'title' => ''], ], [ 'name' => 'Enable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable or disable the O&M window.'."\n" ."\n" .'- **true**: Enabled.'."\n" .'- **false**: Disabled.', 'type' => 'boolean', 'required' => true, 'example' => 'true', 'title' => ''], ], [ 'name' => 'SupportMaintenanceAction', 'in' => 'query', 'schema' => [ 'description' => 'The O&M operations supported by the O&M window.', 'enumValueTitles' => ['Redeploy' => 'Redeploy', 'Reboot' => 'Reboot'], 'type' => 'string', 'required' => true, 'example' => 'Reboot', 'title' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call DescribeRegions to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TimePeriod', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The recurring cycle of the O&M window.', 'type' => 'object', 'properties' => [ 'PeriodUnit' => [ 'description' => 'The cycle type. Valid values: Daily and Weekly.', 'enumValueTitles' => ['Daily' => 'Daily', 'Weekly' => 'Weekly'], 'type' => 'string', 'required' => true, 'example' => 'Weekly', 'title' => '', ], 'RangeList' => [ 'description' => 'The time ranges of the recurring cycle of the O&M window (in UTC).', 'type' => 'array', 'items' => [ 'description' => 'The object.', 'type' => 'object', 'properties' => [ 'StartTime' => ['description' => 'The start time of the O&M window.'."\n" .'- If PeriodUnit is set to Weekly, the format is Monday,22:00. Monday can be replaced with Tuesday, Wednesday, Thursday, Friday, Saturday, or Sunday.'."\n" .'- If PeriodUnit is set to Daily, the format is 22:00.'."\n" .'- The comma (,) is used as a delimiter. The first part represents the hour, which ranges from 00 to 23. The second part represents the minute, which currently supports only 00.', 'type' => 'string', 'required' => false, 'example' => 'Monday,22:00', 'title' => ''], 'EndTime' => ['description' => 'The end time of the O&M window.'."\n" ."\n" .'- If PeriodUnit is set to Weekly, the format is Monday,22:00. Monday can be replaced with Tuesday, Wednesday, Thursday, Friday, Saturday, or Sunday.'."\n" .'- If PeriodUnit is set to Daily, the format is 22:00.'."\n" .'- The comma (,) is used as a delimiter. The first part represents the hour, which ranges from 00 to 23. The second part represents the minute, which currently supports only 00.', 'type' => 'string', 'required' => false, 'example' => 'Tuesday,03:00', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'TargetResource', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The resources on which the O&M window takes effect.', 'type' => 'object', 'properties' => [ 'Scope' => [ 'description' => 'The type of resources for which the O&M window is configured.', 'enumValueTitles' => ['All' => 'All', 'Tag' => 'Tag', 'ResourceGroup' => 'ResourceGroup'], 'type' => 'string', 'required' => true, 'example' => 'Tag', 'title' => '', ], 'ResourceGroupId' => ['description' => 'The ID of the resource group. This parameter is required when Scope is set to ResourceGroup.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekzhm7pmnvcbty', 'title' => ''], 'Tags' => [ 'description' => 'The tags on which the O&M window takes effect. This parameter is required when Scope is set to Tag.', 'type' => 'array', 'items' => [ 'description' => 'The tag value.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the tag on which the O&M window takes effect.', 'type' => 'string', 'required' => false, 'example' => 'vms_qualification_孙总身份证_e5590864-1fef-4db2-b2a7-bd2d657fed43.png', 'title' => ''], 'Value' => ['description' => 'The value of the tag on which the O&M window takes effect.', 'type' => 'string', 'required' => false, 'example' => '21.137.18.60', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], 'required' => true, 'title' => '', 'example' => '', ], ], [ 'name' => 'MinMaintenanceInterval', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '7D5B1188-3F08-56D1-A6B2-91B267452633'], 'PlanWindowId' => ['description' => 'The ID of the created O&M window.', 'type' => 'string', 'example' => 'pw-bp1a9yavgq3dgttvowun', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidOperation.TooManyMaintenanceWindows', 'errorMessage' => 'Too many maintenance windows.', 'description' => 'The number of maintenance window configurations has exceeded 200, and no new windows can be created.'], ], 403 => [ ['errorCode' => 'AccessForbidden', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'You are not authorized to use the specified resource.'], ['errorCode' => 'MissingParameter.Period', 'errorMessage' => 'The input parameter Period is missing.', 'description' => 'Missing Period parameter.'], ['errorCode' => 'MissingParameter.TargetType', 'errorMessage' => 'The input parameter TargetType is missing.', 'description' => 'Missing TargetType parameter.'], ['errorCode' => 'InvalidParameter.TimePeriod', 'errorMessage' => 'Invalid Parameter Time Period.', 'description' => 'Time Period property error.'], ['errorCode' => 'InvalidParameter.TargetResource', 'errorMessage' => 'Invalid Parameter Target Resource.', 'description' => 'TargetResource property setting error'], ['errorCode' => 'InvalidParameter.SupportMaintenanceAction', 'errorMessage' => 'Invalid Parameter SupportMaintenanceAction.', 'description' => 'SupportMaintenanceAction property setting error.'], ['errorCode' => 'InvalidParameter.MinMaintenanceInterval', 'errorMessage' => 'Invalid Parameter MinMaintenanceInterval.', 'description' => 'MinMaintenanceInterval parameter setting error'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Internal error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Create an O&M window', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreatePlanMaintenanceWindow', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7D5B1188-3F08-56D1-A6B2-91B267452633\\",\\n \\"PlanWindowId\\": \\"pw-bp1a9yavgq3dgttvowun\\"\\n}","type":"json"}]', ], 'CreatePortRangeList' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '261375', 'abilityTreeNodes' => ['FEATUREecs0ZAT7E'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The **token** can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000'], ], [ 'name' => 'MaxEntries', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries in the port list. The value cannot be changed after you create the port list. Valid values: 1 to 2000.'."\n" ."\n" .'> When you reference a port list in a resource, such as a security group, the maximum number of entries (instead of the actual number of entries) in the port list counts against the rule quota for the resource. Set a proper value for MaxEntries.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'maximum' => '2000', 'minimum' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'PortRangeListName', 'in' => 'query', 'schema' => ['description' => 'The name of the port list. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http\\://, https\\://, com.aliyun, or com.alibabacloud. The name can contain letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).', 'type' => 'string', 'required' => true, 'example' => 'PortRangeListNameSample', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the port list. The description must be 2 to 256 characters in length and cannot start with http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'Description information of PortRangeList', 'title' => ''], ], [ 'name' => 'Entry', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The port list entries.', 'type' => 'array', 'items' => [ 'description' => 'The port list entry.', 'type' => 'object', 'properties' => [ 'PortRange' => ['description' => 'Port range N. Valid values of N: 0 to 200.'."\n" ."\n" .'- The total number of entries cannot exceed the `MaxEntries` value.'."\n" ."\n" .'- `PortRange` in multiple entries cannot be duplicated.', 'type' => 'string', 'required' => false, 'example' => '80/80', 'title' => ''], 'Description' => ['description' => 'The description of port range N. The description must be 2 to 32 characters in length and cannot start with http\\:// or https\\://. Valid values of N: 0 to 200.', 'type' => 'string', 'required' => false, 'example' => 'Description information of Entry', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the port list belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek3b6jzp66****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the port list. You can add 0 to 20 tags to the port list.', 'type' => 'array', 'items' => [ 'description' => 'Tag N to add to the port list.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N to add to the port list.'."\n" ."\n" .'The tag key cannot be empty or an empty string. The tag key can be up to 128 characters in length and cannot contain http\\:// or https\\://. The tag key cannot start with acs: or aliyun.', 'type' => 'string', 'required' => false, 'example' => 'key for PortRangeList', 'title' => ''], 'Value' => ['description' => 'The value of tag N to add to the port list.'."\n" ."\n" .'The tag value cannot be empty but can be an empty string. The tag value can be up to 128 characters in length and cannot contain http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'value for PortRangeList', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'PortRangeListId' => ['description' => 'The ID of the port list.', 'type' => 'string', 'example' => 'prl-2ze9743****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParam.Entry', 'errorMessage' => 'The specified parameter Entry is not valid.', 'description' => 'The specified entry parameter is invalid.'], ['errorCode' => 'InvalidOperation.MaxEntriesCountExceed', 'errorMessage' => 'The specified MaxEntries exceeded the upper limit.', 'description' => 'The specified MaxEntries parameter exceeds the maximum limit.'], ['errorCode' => 'InvalidOperation.EntryCountExceedMaxEntries', 'errorMessage' => 'The number of entries in the port list exceeds MaxEntries.', 'description' => 'The number of entries specified exceeds the MaxEntries value of the port list.'], ['errorCode' => 'InvalidParameter.PortRange', 'errorMessage' => 'The specified parameter PortRange is not valid. It should be two integers less than 65535 in specified format.', 'description' => 'Entries in the port list PortRange not in the required format. Two integers less than 65535 should be specified, separated by a slash.'], ['errorCode' => 'InvalidParameter.PortRangeListName', 'errorMessage' => 'The specified parameter PortRangeListName is not valid.', 'description' => 'The specified port list name is invalid.'], ['errorCode' => 'LimitExceed.MaxEntries', 'errorMessage' => 'The number of entries exceeds the MaxEntries of the specified PortRangeList.', 'description' => 'The number of entries in the port list exceeds the MaxEntries value.'], ['errorCode' => 'LimitExceed.Entry', 'errorMessage' => 'The number of entries added or removed exceeds the limit.', 'description' => 'The number of entries to add or remove at a time exceeds the upper limit.'], ['errorCode' => 'InvalidOperation.MaxCountExceed', 'errorMessage' => 'The number of port range list in the current account has exceeded quota.', 'description' => 'The number of port lists under the current account exceeds the limit of the number of port lists under the user account.'], ['errorCode' => 'InvalidParameter.PortRangeDuplicated', 'errorMessage' => 'The specified PortRange is duplicated.', 'description' => 'Duplicate port range specified'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specifid Description is not valid.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'eventInfo' => [ 'enable' => true, 'eventNames' => [], ], 'title' => 'CreatePortRangeList', 'summary' => 'Creates a port list. You can associate a port list with resources, such as security groups.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreatePortRangeList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PortRangeList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:portrangelist/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PortRangeListId\\": \\"prl-2ze9743****\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'CreatePrefixList' => [ 'summary' => 'Creates a prefix list.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29258', 'abilityTreeNodes' => ['FEATUREecsKTKFUC'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the prefix list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the prefix list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'MaxEntries', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries that the prefix list can contain. Valid values: 1 to 200.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'docRequired' => true, 'maximum' => '200', 'minimum' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'AddressFamily', 'in' => 'query', 'schema' => ['description' => 'The IP address family. Valid values:'."\n" ."\n" .'- IPv4'."\n" ."\n" .'- IPv6', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'IPv4', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The `token` can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe637760', 'title' => ''], ], [ 'name' => 'PrefixListName', 'in' => 'query', 'schema' => ['description' => 'The name of the prefix list. The name must be 2 to 128 characters in length, and can contain letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-). It must start with a letter and cannot start with `http://`, `https://`, `com.aliyun`, or `com.alibabacloud`.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'PrefixListNameSample', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the prefix list. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'Entry', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The details of entries in the prefix list.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description in entry N. The description must be 2 to 32 characters in length and cannot start with `http://` or `https://`. Valid values of N: 0 to 200.', 'type' => 'string', 'required' => false, 'example' => 'Description Sample 01', 'title' => ''], 'Cidr' => ['description' => 'The CIDR block in entry N. Valid values of N: 0 to 200. Notes:'."\n" ."\n" .'- The total number of entries cannot exceed the `MaxEntries` value.'."\n" ."\n" .'- CIDR block types are determined by the IP address family. You cannot combine IPv4 and IPv6 CIDR blocks in a single prefix list.'."\n" ."\n" .'- CIDR blocks must be unique across all entries in a prefix list. For example, you cannot specify 192.168.1.0/24 twice in the entries of the prefix list.'."\n" ."\n" .'- You can set a single IP address. The system automatically converts the IP address to a CIDR block. For example, if you set 192.168.1.100, the system automatically converts it to 192.168.1.100/32.'."\n" ."\n" .'- If you use an IPv6 CIDR block, the system automatically converts the CIDR block to zero and the letters to lowercase. For example, if you specify 2001:0DB8:0000:0000:0000:0000:0000:0000/32, the system converts it to 2001:db8::/32.'."\n" ."\n" .'For more information about CIDR blocks, see [What is CIDR?](~~185311#598efe6ef1v00~~)'."\n" ."\n" .'This parameter is left empty by default.', 'type' => 'string', 'required' => true, 'example' => '192.168.1.0/24', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 201, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the prefix list.', 'type' => 'array', 'items' => [ 'description' => 'Tag N to add to the prefix list.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `acs:` or `aliyun`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain` http:// or https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which to assign the prefix list.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PrefixListId' => ['description' => 'The ID of the prefix list.', 'type' => 'string', 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '38793DB8-A4B2-4AEC-BFD3-111234E9188D', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter.AddressFamily', 'errorMessage' => 'The parameter AddressFamily should be IPv4 or IPv6.', 'description' => 'The specified AddressFamily parameter is invalid. The valid values of this parameter are IPv4 and IPv6.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidParameter.PrefixListName', 'errorMessage' => 'The parameter PrefixListName is not valid.', 'description' => 'The prefix list name is invalid.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified Description is wrongly formed.', 'description' => ''], ['errorCode' => 'InvalidClientToken.ValueNotSupported', 'errorMessage' => 'The ClientToken provided is invalid.', 'description' => 'The specified ClientToken parameter is invalid.'], ['errorCode' => 'InvalidParameter.CidrMalformed', 'errorMessage' => '%s', 'description' => 'The specified CIDR block is invalid.'], ['errorCode' => 'InvalidParameter.CidrDuplicated', 'errorMessage' => '%s', 'description' => 'Duplicate CIDR blocks are specified.'], ['errorCode' => 'LimitExceed.Entry', 'errorMessage' => 'The number of entries added or removed exceeds the limit.', 'description' => 'The number of entries to add or remove at a time exceeds the upper limit.'], ['errorCode' => 'LimitExceed.MaxEntries', 'errorMessage' => 'The number of entries exceeds the MaxEntries of the specified prefix list.', 'description' => 'The number of specified entries exceeds the MaxEntries value.'], ], 404 => [ ['errorCode' => 'LimitExceed.PrefixListPerRegion', 'errorMessage' => 'The number of prefix lists in the region exceeds the limit.', 'description' => 'The maximum number of prefix lists in the current region has been reached.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The specified resource group is not found.', 'description' => 'Cannot find the corresponding resource group'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => true, 'eventNames' => [], ], 'title' => 'CreatePrefixList', 'description' => '## [](#)Usage notes'."\n" ."\n" .'- A prefix list is a collection of network prefixes (CIDR blocks) and can be referenced to configure network rules for other resources. For more information, see [Overview](~~206223~~).'."\n" ."\n" .'- When you create a prefix list, take note of the following items:'."\n" ."\n" .' - You must specify an IP address family (IPv4 or IPv6) for the prefix list, and cannot change the IP address family after the prefix list is created. You cannot combine IPv4 and IPv6 CIDR blocks in a single prefix list.'."\n" ."\n" .' - You must specify the maximum number of entries that the prefix list can contain. You cannot modify the maximum number of entries after the prefix list is created.'."\n" ."\n" .' - You can specify entries for the prefix list. Each entry consists of a CIDR block and the description for the CIDR block. The total number of entries cannot exceed the maximum number of entries that you specified.'."\n" ."\n" .'- For more information about the limits on prefix lists and other resources, see [Limits](~~25412~~).'."\n" ."\n" .'- You can create Resource Access Management (RAM) users and grant them minimum permissions. This eliminates the need to share the AccessKey pair of your Alibaba Cloud account with other users and reduces security risks for your enterprises. For information about how to grant permissions on prefix lists to RAM users, see [Grant a RAM user permissions on prefix lists](~~206175~~)', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-24T08:40:56.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-04-21T06:02:35.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-11-13T03:17:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreatePrefixList'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreatePrefixList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PrefixListId\\": \\"pl-x1j1k5ykzqlixdcy****\\",\\n \\"RequestId\\": \\"38793DB8-A4B2-4AEC-BFD3-111234E9188D\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'CreateRouteEntry' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call the [DescribeRegions](~~docid:36063~~) operation to get the latest list of regions.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'RouteTableId', 'in' => 'query', 'schema' => ['description' => 'The ID of the route table.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'DestinationCidrBlock', 'in' => 'query', 'schema' => ['description' => 'The destination CIDR block. The value must be a valid CIDR block. Set the value to `0.0.0.0/0` to create a default route.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'NextHopId', 'in' => 'query', 'schema' => ['description' => 'The ID of the next hop.'."\n" ."\n" .'**Note** Specify either `NextHopId` or `NextHopList`, but not both.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A unique, case-sensitive identifier to ensure request idempotency. The token must be 1 to 64 ASCII characters in length.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'NextHopType', 'in' => 'query', 'schema' => ['description' => 'The type of the next hop. Valid values:'."\n" ."\n" .'- **Instance**: an ECS instance.'."\n" ."\n" .'- **HaVip**: a high-availability virtual IP address.'."\n" ."\n" .'- **RouterInterface**: a router interface.'."\n" ."\n" .'- **NetworkInterface**: an elastic network interface.'."\n" ."\n" .'- **VpnGateway**: a VPN gateway.'."\n" ."\n" .'- **Ipv6Gateway**: an IPv6 gateway.'."\n" ."\n" .'- **NatGateway**: a NAT gateway.'."\n" ."\n" .'**Note** This parameter is required if you specify `NextHopId`.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'NextHopList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'maxItems' => 4, 'description' => 'The list of next hops for an ECMP route.'."\n" ."\n" .'**Note** Specify either `NextHopId` or `NextHopList`, but not both.', 'type' => 'array', 'items' => [ 'description' => 'A next hop for the ECMP route.', 'type' => 'object', 'properties' => [ 'NextHopId' => ['description' => 'The ID of the next hop in the ECMP route.', 'type' => 'string', 'title' => '', 'example' => ''], 'NextHopType' => ['description' => 'The type of the next hop in the ECMP route. Valid values:'."\n" ."\n" .'- **Instance**: an ECS instance.'."\n" ."\n" .'- **HaVip**: a high-availability virtual IP address.'."\n" ."\n" .'- **RouterInterface**: a router interface.'."\n" ."\n" .'- **NetworkInterface**: an elastic network interface.'."\n" ."\n" .'- **VpnGateway**: a VPN gateway.'."\n" ."\n" .'- **Ipv6Gateway**: an IPv6 gateway.'."\n" ."\n" .'- **NatGateway**: a NAT gateway.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'Miss mandatory parameter.', 'description' => 'Required parameters must be specified.'], ['errorCode' => 'InvalidCidrBlock.Malformed', 'errorMessage' => 'Specified CIDR block is not valid.', 'description' => 'The specified CIDR block is invalid.'], ['errorCode' => 'InvalidCIDRBlock.Duplicate', 'errorMessage' => 'Specified CIDR block is already exists.', 'description' => 'The specified CIDR block already exists in the route table.'], ['errorCode' => 'IncorrectVpcStatus', 'errorMessage' => 'Current VPC status does not support this operation.', 'description' => 'The VPC is in a state that does not support the current operation.'], ['errorCode' => 'QuotaExceeded', 'errorMessage' => 'Route entry quota exceeded in this route table.', 'description' => 'The maximum number of router interfaces has been reached.'], ['errorCode' => 'IncorrectRouteEntryStatus', 'errorMessage' => 'Some route entry status blocked this operation.', 'description' => 'The operation is not supported while the route table contains routes that are in the Pending or Modifying state.'], ['errorCode' => 'InvalidCidrBlock', 'errorMessage' => 'Specified CIDR block is not valid.', 'description' => 'The error message is returned maybe because of the following reasons: 1. You are not authorized to use the 10.0.0.0/8 CIDR block. Check whether your account is included in the allowlist to use the CIDR block. 2. The destination CIDR block of the added custom route entry cannot be a subset of the CIDR blocks of the vSwitches in the VPC. 3. The CIDR block cannot be 100.64.0.0/10.'], ['errorCode' => 'InvalidNextHopType', 'errorMessage' => 'Specified parameter "NextHopType" is not valid', 'description' => ''], ['errorCode' => 'InvalidNextHop.NotFound', 'errorMessage' => 'Specified next hop does not exist.', 'description' => ''], ['errorCode' => 'InvalidVRouter.NotFound', 'errorMessage' => 'vRouter not exists.', 'description' => ''], ['errorCode' => 'InvalidVPC.NotFound', 'errorMessage' => 'vpc not exists.', 'description' => ''], ['errorCode' => 'InvalidNexthopTypeAndList.BothNull', 'errorMessage' => 'both nexthopType and nextHopList are null.', 'description' => 'The NextHopType parameter and the NextHopList parameter are required.'], ['errorCode' => 'InvalidNexthopTypeAndList.BothNotNull', 'errorMessage' => 'both nexthopType and nextHopList are not null.', 'description' => 'The NextHopType and NextHopList parameters are required.'], ['errorCode' => 'InvalidRouterInterface', 'errorMessage' => 'invalid router interface.', 'description' => 'The router interface is invalid.'], ['errorCode' => 'InvalidOppositeRouterType', 'errorMessage' => 'nexthop list cannot only contain router interface whose opposite router interface is on vbr.', 'description' => 'The nexthop list cannot only contain router interfaces of which their peer router interfaces are on virtual border routers.'], ['errorCode' => 'InvalidNexthopListSize', 'errorMessage' => 'nexthop size is illegal. Must be between 2 and 4.', 'description' => 'The next hop must be 2 to 4 characters in length.'], ['errorCode' => 'InvalidEntryRuleQuota.NotFound', 'errorMessage' => 'Route entry quota rule not exists.', 'description' => 'The quota rules of route entries do not exist.'], ['errorCode' => 'Forbidden.CheckEntryRuleQuota', 'errorMessage' => 'Route entry quota rule check error.', 'description' => 'An error occurred when the system was checking the quota of route entries.'], ['errorCode' => 'InvalidVBRStatus', 'errorMessage' => 'invalid virtual border router status.', 'description' => 'The VBR state is invalid.'], ['errorCode' => 'InvalidPhysicalConnectionBusinessStatus', 'errorMessage' => 'invalid physical connection business status.', 'description' => 'The Express Connect circuit state is invalid.'], ['errorCode' => 'InvalidRouterType', 'errorMessage' => 'Cannot specify nexthop list in vbr\'s route table.', 'description' => ''], ['errorCode' => 'IncorrectHaVipStatus', 'errorMessage' => 'This operation is denied because satus of the specified HaVip is neither Available nor InUse.', 'description' => 'The operation is denied because the specified HAVIP is not in the Available or InUse state.'], ['errorCode' => 'CountLimitExceed.HaVipRouteEntry', 'errorMessage' => 'There can be 5 route entry to HaVip at most in one route table.', 'description' => ''], ['errorCode' => 'InvalidRouteEntry.Duplicate', 'errorMessage' => 'The route entry already exist.', 'description' => 'The specified route entry already exists.'], ['errorCode' => 'InvalidParam', 'errorMessage' => 'The Ecmp routerEntry with router interfaces local vgw vip not match.', 'description' => 'The route entry does not match the local gateway VIP of the router interface.'], ['errorCode' => 'INVALID_WEIGHT_PARAM', 'errorMessage' => 'Specified value of weight invalid', 'description' => 'The specified weight is invalid.'], ['errorCode' => 'FORBIDDEN_USE_VPC_AS_INTERNET_GATEWAY', 'errorMessage' => 'The Specified CIDR must be in vpc CIDR.', 'description' => ''], ['errorCode' => 'InvalidNexthop', 'errorMessage' => 'The Specified nexthop illegal.', 'description' => ''], ['errorCode' => 'INVALID_VPC_ID', 'errorMessage' => 'The Specified VpcId not match.', 'description' => 'The specified VPC ID does not match the route entry.'], ['errorCode' => 'InvalidRouteEntrySize', 'errorMessage' => 'The Specified routerEntry size not legal.', 'description' => 'The specified route entry size is invalid.'], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The operation is too frequent, please wait a moment and try again.', 'description' => ''], ['errorCode' => 'InvalidRouteEntry', 'errorMessage' => 'Specified routeEntry not exist.', 'description' => ''], ['errorCode' => 'InvalidDestinationCidrBlock', 'errorMessage' => 'The specified destinationCidrBlock must not included in black list cidr.', 'description' => ''], ['errorCode' => 'VswitchStatusError', 'errorMessage' => 'The VSwitch is creating .', 'description' => ''], ['errorCode' => 'Forbidden.PrivateIpNotFound', 'errorMessage' => 'Private ip address not exist.', 'description' => ''], ['errorCode' => 'RouteConflict.AlreadyExist', 'errorMessage' => 'Route conflict exists in routing table.', 'description' => ''], ['errorCode' => 'OperationUnsupported.InactiveMode', 'errorMessage' => 'Vpc multi scope route only support active standby.', 'description' => ''], ['errorCode' => 'IncorrectStatus.MultiScopeRiRouteEntry', 'errorMessage' => 'MultiScope ri status must not in idle.', 'description' => ''], ['errorCode' => 'OperationUnsupported.MoreThanOneVpnOrHavip', 'errorMessage' => 'MultiScope can not support more than one vpn/havip.', 'description' => ''], ['errorCode' => 'OperationUnsupported.EcmpRiTypeOrNumber', 'errorMessage' => 'Emcp entry not supported if vpc-vbr or vbr-vlan ri does not exist.', 'description' => ''], ['errorCode' => 'Duplicated.VpcNextHop', 'errorMessage' => 'Route entry nexthop duplicate.', 'description' => ''], ['errorCode' => 'OperationUnsupported.SubRouteTableECMP', 'errorMessage' => 'Vpc subRouteTable don\'t support ecmp or multiScope.', 'description' => ''], ['errorCode' => 'InvalidNexthop.NotFound', 'errorMessage' => 'VRouterEntry nexthop does not exist.', 'description' => ''], ['errorCode' => 'IllegalParam.NextHopId', 'errorMessage' => 'Instance not exists or not vpc vm.', 'description' => ''], ['errorCode' => 'InvalidVpnInstanceId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFailed.ScopeActiveRouteEntryType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFailed.ScopeStandbyRouteEntryQuota', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFailed.ScopeActiveRouteEntryQuota', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationUnsupported.ScopeInvalidRouteType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFailed.EcmpInvalidRouterInterfaceOppositeType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'QuotaExceeded.HaVipRouteEntry', 'errorMessage' => 'Vpc havip route entry quota exceed.', 'description' => ''], ['errorCode' => 'OperationFailed.InvalidNexthop', 'errorMessage' => 'vpc multi scope route must has a enable nexthop.', 'description' => ''], ['errorCode' => 'OperationFailed.NotifyCenDelete', 'errorMessage' => 'Failed to notify cen when delete route entry.', 'description' => ''], ['errorCode' => 'InvalidNatGateway.NotFound', 'errorMessage' => 'Natgateway not exist.', 'description' => ''], ['errorCode' => 'OperationFailed.CxpRouteExist', 'errorMessage' => 'Cxp route alreay existed.', 'description' => ''], ['errorCode' => 'InvalidNexthop.DirectEni', 'errorMessage' => 'The direct Eni cannot be nexthop.', 'description' => ''], ['errorCode' => 'OperationFailed.NotifyCenCreate', 'errorMessage' => 'Failed to notify cen when create route entry.', 'description' => ''], ['errorCode' => 'IncorrectStatus.RouteTableStatus', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFailed.GetEniInfo', 'errorMessage' => 'Failed to get networkInterface info.', 'description' => ''], ['errorCode' => 'QuotaExceeded.EcmpRouteEntryNextHopCount', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFailed.InvalidNextHopType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationUnsupported.InvalidRouterInterfaceType', 'errorMessage' => 'Only vpc vbr interface support ecmp route.', 'description' => ''], ['errorCode' => 'InvalidHaVip.NotFound', 'errorMessage' => 'The specified HaVip does not exist in the specified region.', 'description' => ''], ['errorCode' => 'OperationFailed.MultiScopeType', 'errorMessage' => 'The specified nexthop type is not support in multiScope.', 'description' => ''], ['errorCode' => 'OperationFailed.DistibuteLock', 'errorMessage' => 'Distibute lock fail.', 'description' => ''], ], 403 => [ ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ], [ ['errorCode' => 'InvalidNatGatewayId.NotFound', 'errorMessage' => 'Specified value of NatGatewayId is not found in our record.', 'description' => ''], ['errorCode' => 'InvalidInstanId.NotFound', 'errorMessage' => 'Specified instance does not exist.', 'description' => 'The specified instance does not exist. Check whether the instance ID is correct.'], ['errorCode' => 'InvalidNextHopId.NotFound', 'errorMessage' => 'Specified next hop does not exist.', 'description' => 'The specified next hop does not exist.'], ['errorCode' => 'InvalidRouteTableId.NotFound', 'errorMessage' => 'Specified route table does not exist.', 'description' => 'The specified virtual route table does not exist.'], ['errorCode' => 'InvalidHaVipId.NotFound', 'errorMessage' => 'The specified HaVip does not exist in the specified VPC.', 'description' => ''], ['errorCode' => 'InvalidNetworkInterface.NotFound', 'errorMessage' => 'The specified networkInterface does not exist.', 'description' => ''], ['errorCode' => 'InvalidVpc.NotFound', 'errorMessage' => 'Specified vpc is not found in our record.', 'description' => ''], ['errorCode' => 'OperationFailed.InstanceDismatchCurrentVpc', 'errorMessage' => 'The specified instance does not exist in current vpc.', 'description' => ''], ['errorCode' => 'InvalidIpv6Gateway.NotFound', 'errorMessage' => 'Specified Ipv6Gateway does not exist.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateRouteEntry'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateRouteEntry'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateRouteEntry', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouteTable', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routetable/{#RouteTableId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreateRouteEntry', 'summary' => 'CreateRouteEntry', ], 'CreateRouterInterface' => [ 'summary' => 'CreateRouterInterface.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Role', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'OppositeRegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Spec', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouterType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouterId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'OppositeInterfaceId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'OppositeRouterId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'OppositeRouterType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'default' => 'VRouter', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'OppositeInterfaceOwnerId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'HealthCheckSourceIp', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'HealthCheckTargetIp', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AccessPointId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'OppositeAccessPointId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AutoPay', 'in' => 'query', 'schema' => ['type' => 'boolean', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PricingCycle', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'OrderId' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''], 'RouterInterfaceId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidPrice.NotFound', 'errorMessage' => 'Pricing plan result not found.', 'description' => ''], ['errorCode' => 'InvalidAliuid', 'errorMessage' => 'Invalid Aliuid.', 'description' => ''], ['errorCode' => 'InvalidBandwidth.NotEnough', 'errorMessage' => 'bandwdith not enough.', 'description' => ''], ['errorCode' => 'InvalidRole.ValueNotSupported', 'errorMessage' => 'The specified Role is not valid.', 'description' => 'The specified role is invalid.'], ['errorCode' => 'InvalidSpec.ValudNotSupported', 'errorMessage' => 'The specified Spec is not supported.', 'description' => 'The specified Spec parameter is invalid.'], ['errorCode' => 'InvalidRouterType.ValueNotSupported', 'errorMessage' => 'The specified RouterType is not valid.', 'description' => 'The specified router type is invalid.'], ['errorCode' => 'InvalidOppositeRouterType.ValueNotSupported', 'errorMessage' => 'The specified OppositeRouterType is not valid.', 'description' => 'The specified OppositeRouterType parameter is invalid.'], ['errorCode' => 'ParameterMismatch.Role-Spec', 'errorMessage' => 'The specified Spec and Role mismatch.', 'description' => 'The specified Spec does not match the Role.'], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => 'The specified "Name" is not valid.', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specifid "Description" is not valid.', 'description' => ''], ['errorCode' => 'Forbidden.BillsOutstanding', 'errorMessage' => 'You cannot create more RouterInterface because you have bills outstanding.', 'description' => 'The router interface cannot be created because you have unpaid orders. Pay for the orders and try again.'], ['errorCode' => 'QuotaExceed.RouterInterface', 'errorMessage' => 'Living RouterInterface quota exceeded.', 'description' => 'The maximum number of active router interfaces has been reached.'], ['errorCode' => 'LimitationExceed.InterfaceNumberOnRouter', 'errorMessage' => 'Total number of RouterInterfaces on a Router exceeded.', 'description' => 'The maximum number of router interfaces is exceeded.'], ['errorCode' => 'InvalidParam.NotFound', 'errorMessage' => 'Parameter must not be null,uid, bid,regionNo, remoteRegionNo or routerId', 'description' => ''], ['errorCode' => 'InvalidAccessPoint.NotMatch', 'errorMessage' => 'The accessPoint id is not matched', 'description' => 'The specified access point ID is invalid.'], ['errorCode' => 'InvalidAccessPoint.NotExist', 'errorMessage' => 'The accessPoint not exit', 'description' => ''], ['errorCode' => 'ForbiddenAction', 'errorMessage' => 'The user does not supported this action.', 'description' => ''], ['errorCode' => 'Forbidden.AcceptRoleNotSupportPrePay', 'errorMessage' => 'Acception side ri not support chargetype for prepaid.', 'description' => ''], ['errorCode' => 'IllegalParam.HealthcheckIp', 'errorMessage' => 'Healthcheck ip cannot equal with instance ip.', 'description' => ''], ['errorCode' => 'OperationFailed.HcForInvalidRiType', 'errorMessage' => 'Healthchecksourceip and healthchecktargetip is only valid for vr ri that is connected to vbr.', 'description' => ''], ['errorCode' => 'OperationFailed.SyncOrderToSub', 'errorMessage' => 'SyncOrderToSub error.', 'description' => ''], ['errorCode' => 'IllegalParam.CrossBorderBandwidth', 'errorMessage' => 'CrossBorder bandwidth error.', 'description' => ''], ['errorCode' => 'IllegalParam.VRouterType', 'errorMessage' => 'The VRouterType is not supported.', 'description' => ''], ['errorCode' => 'IllegalParam.Spec', 'errorMessage' => 'The spec is illegal.', 'description' => ''], ['errorCode' => 'Forbidden.CrossBorder', 'errorMessage' => 'User not authorized to create cross border routerInterface.', 'description' => ''], ['errorCode' => 'InvalidRouterId.NotFound', 'errorMessage' => 'Param is not valid,this user does not have this router or aliuid bid regionNo and routerId must have something wrong.', 'description' => ''], ['errorCode' => 'INVAID_VBR_STATUS', 'errorMessage' => 'VBR status must be active', 'description' => ''], ['errorCode' => 'InvalidRouterInterfaceSpec.Malformed', 'errorMessage' => 'Specified RouterInterface spec is not valid.', 'description' => ''], ['errorCode' => 'InvalidCommodity.NotFound', 'errorMessage' => 'Commodity is not exist.', 'description' => ''], ['errorCode' => 'InvalidRouterInterfaceChargeType.Malformed', 'errorMessage' => 'Specified RouterInterface ChargeType is not valid.', 'description' => ''], ['errorCode' => 'IllegalParam.RegionId', 'errorMessage' => 'The specified regionId is illegal.', 'description' => ''], ['errorCode' => 'PAY.MAYI_WITHHOLDING_AGREEMENT_ILLEGAL', 'errorMessage' => 'User withhoding argeement is illegal.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The regionId provided does not exist in our records.', 'description' => 'The RegionId provided does not exist'], ['errorCode' => 'InvalidOppositeRegionId.NotFound', 'errorMessage' => 'The oppositeRegionId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidRouterId.NotFound', 'errorMessage' => 'The specified RouterId does not exist in our recored.', 'description' => 'The specified RouterId parameter does not exist.'], ], 500 => [ ['errorCode' => 'Forbidden.NotInRouterInterfaceCreateWhitelist', 'errorMessage' => 'Not in router interface create whitelist.', 'description' => ''], ['errorCode' => 'RI_CREATE_ONE_LIMIT_BY_SYNC', 'errorMessage' => 'Create ri only one limit by sync.', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specifid "Description" is not valid.', 'description' => ''], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => 'The specified "Name" is not valid.', 'description' => ''], ['errorCode' => 'InvalidAccessPoint.ValueNotAllowed', 'errorMessage' => 'The non-vbr router interface cannot have access point configured.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateRouterInterface'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateRouterInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateRouterInterface', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:TargetAccountRDId', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"OrderId\\": 0,\\n \\"RouterInterfaceId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreateRouterInterface', 'translator' => 'machine', ], 'CreateSecurityGroup' => [ 'summary' => 'Creates a security group.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28844', 'abilityTreeNodes' => ['FEATUREecsZ4BDDO'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the security group. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'Default value: empty.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'SecurityGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the security group. The name must be 2 to 128 characters in length and must start with a letter or a Chinese character. It cannot start with `http://` or `https://`. The name can contain characters that are categorized as letter in Unicode, including Chinese characters and English letters, and digits. The name can also contain colons (:), underscores (_), periods (.), or hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testSecurityGroupName', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC to which the security group belongs.', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1opxu1zkhn00gzv****', 'title' => ''], ], [ 'name' => 'SecurityGroupType', 'in' => 'query', 'schema' => ['description' => 'The type of the security group. Valid values:'."\n" ."\n" .'- normal: basic security group.'."\n" .'- enterprise: advanced security group. For more information, see [Overview of advanced security groups](~~120621~~).'."\n" ."\n" .'Default value: normal.', 'type' => 'string', 'required' => false, 'example' => 'enterprise', 'title' => ''], ], [ 'name' => 'ServiceManaged', 'in' => 'query', 'schema' => ['description' => 'This parameter is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the security group belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to bind to the security group. Array length: 0 to 20.', 'type' => 'array', 'items' => [ 'description' => 'The tag to bind to the security group.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the security group.'."\n" ."\n" .'> To improve compatibility, use the Tag.N.Key parameter.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Key' => ['description' => 'The tag key of the security group.'."\n" ."\n" .'The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the security group.'."\n" ."\n" .'The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the security group.'."\n" ."\n" .'> To improve compatibility, use the Tag.N.Value parameter.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SecurityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'example' => 'sg-bp1fg655nh68xyz9****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified parameter "Description" is not valid.', 'description' => 'The source description can be 2 to 256 characters in length. It cannot start with http:// and https://.'], ['errorCode' => 'InvalidSecurityGroupDiscription.Malformed', 'errorMessage' => 'Specified security group description is not valid.', 'description' => 'The specified security group description is invalid.'], ['errorCode' => 'IncorrectVpcStatus', 'errorMessage' => 'Current VPC status does not support this operation.', 'description' => 'The VPC is in a state that does not support the current operation.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'Specified tag key is not valid.', 'description' => 'The specified tag key is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'Specified tag value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidParams.GroupType', 'errorMessage' => 'The specified security group type is not valid.', 'description' => 'The specified SecurityGroupType parameter is invalid.'], ['errorCode' => 'InvalidParams.VpcIdGroupType', 'errorMessage' => 'Only VPC instance supports enterprise level security group.', 'description' => 'Only ECS instances that reside in VPCs support advanced security groups.'], ['errorCode' => 'InvalidSecurityGroupName.Malformed', 'errorMessage' => 'The specified parameter SecurityGroupName is not valid.', 'description' => 'The specified SecurityGroupName parameter is not valid. This parameter is empty by default. If you specify a security group name, the name must be 2 to 128 characters in length and start with a letter. It can contain letters, digits, periods (.), underscores (_), and hyphens (-) and cannot start with http:// or https. The security group name is displayed in the ECS console.'], ], 403 => [ ['errorCode' => 'QuotaExceed.SecurityGroup', 'errorMessage' => 'The maximum number of security groups is reached.', 'description' => 'The maximum number of security groups has been reached.'], ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'The VpcId must not empty when only support vpc vm.', 'description' => 'A VPC ID must be specified.'], ['errorCode' => 'IncorrectVpcStatus', 'errorMessage' => 'Current VPC status does not support this operation.', 'description' => ''], ['errorCode' => 'IdempotentProcessing', 'errorMessage' => 'The previous idempotent request(s) is still processing.', 'description' => 'A previous idempotent request is being processed. Try again later.'], ['errorCode' => 'QuotaExceed.Tags', 'errorMessage' => '%s', 'description' => 'The number of specified tags exceeds the upper limit. %s is a variable. An error message is dynamically returned based on call conditions.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified region does not exist.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'Specified VPC does not exist.', 'description' => 'The specified VPC ID does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The service is unavailable, please try again later.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SecurityGroupId\\": \\"sg-bp1fg655nh68xyz9****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Create a security group', 'description' => '- The default internal connectivity policy for a basic security group created by this operation is **intra-group connectivity**. You can modify this policy by calling [ModifySecurityGroupPolicy](~~2679846~~).'."\n" .'- The default internal connectivity policy for an advanced security group created by this operation is **internal isolation**, and this policy cannot be modified.'."\n" .'- The number of security groups in a single region is limited. You can create a minimum of 100 security groups. For more information, see [Security group limits](~~25412#SecurityGroupQuota1~~).'."\n" .'- To create a security group of the VPC type, you must specify the VpcId parameter.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-09-23T11:16:15.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-04-07T05:09:07.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateSecurityGroup'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateSecurityGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'SecurityGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:securitygroup/*'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#vpcId}'], ], ], ], ], ], 'CreateSimulatedSystemEvents' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29260', 'abilityTreeNodes' => ['FEATUREecsBUZW7T'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'EventType', 'in' => 'query', 'schema' => ['description' => 'The type of the system event. Valid values:'."\n" .'- SystemMaintenance.Reboot: The instance is restarted due to system maintenance.'."\n" .'- SystemFailure.Reboot: The instance is restarted due to a system error.'."\n" .'- InstanceFailure.Reboot: The instance is restarted due to an instance error.'."\n" .'- SystemMaintenance.Stop: The instance is stopped due to system maintenance.'."\n" .'- SystemMaintenance.Redeploy: The instance is redeployed due to system maintenance.'."\n" .'- SystemFailure.Redeploy: The instance is redeployed due to a system error.'."\n" .'- SystemFailure.Stop: The instance is stopped due to a system error.'."\n" .'- InstanceFailure.Reboot: The instance is restarted due to an instance error.', 'type' => 'string', 'required' => true, 'example' => 'SystemMaintenance.Reboot', 'title' => ''], ], [ 'name' => 'NotBefore', 'in' => 'query', 'schema' => ['description' => 'The scheduled start time of the event. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.'."\n" ."\n" .'> For unexpected events caused by system errors or instance errors, after the event is created, the event enters the Executing state. In this case, the NotBefore parameter specifies the time when the event enters the Executed state.', 'type' => 'string', 'required' => true, 'example' => '2018-12-01T06:32:31Z', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of ECS instance IDs. You can specify up to 100 instance IDs.', 'type' => 'array', 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1gtjxuuvwj17zr****', 'title' => ''], 'required' => true, 'example' => 'i-bp1gtjxuuvwj17zr****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The request ID.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'EventIdSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'EventId' => [ 'description' => 'The list of simulated event IDs (EventId).', 'type' => 'array', 'items' => ['description' => 'The simulated event ID (EventId).', 'type' => 'string', 'example' => 'e-bp16helosl7v0ooj****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidNotBefore.Passed', 'errorMessage' => '%s', 'description' => 'The specified value of NotBefore is earlier than the current time.'], ['errorCode' => 'SimulatedEventLimitExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InstanceIdLimitExceeded', 'errorMessage' => '%s', 'description' => 'More than 100 instance IDs are specified.'], ], [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => true, 'eventNames' => ['ecs:Instance:MigrationCompleted', 'ecs:Instance:InstanceTypeChanged'], ], 'title' => 'Schedule simulated system events for instances', 'summary' => 'Schedules simulated system events for one or more ECS instances. Simulated system events are equivalent to event drills. They do not actually execute the events or affect ECS instances.', 'description' => 'After you schedule simulated events, you can view the scheduled simulated system events in the ECS console, by calling [ECS API](~~63962~~) operations, or by using CloudMonitor.'."\n" ."\n" .'The following list describes the lifecycle of simulated system events:'."\n" ."\n" .'- Scheduled: After the simulated system event is scheduled, it automatically enters the Scheduled state.'."\n" .'- Executed: If no manual intervention is performed, the simulated system event automatically enters the Executed state at the specified point in time (NotBefore).'."\n" .'- Canceled: After you call [CancelSimulatedSystemEvents](~~88808~~) to cancel the simulated system event, the event enters the Canceled state.'."\n" .'- Avoided: For simulated system events of the SystemMaintenance.Reboot type, you can [restart the instance](~~25502~~) before the scheduled time to change the event to the Avoided state.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateSimulatedSystemEvents'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateSimulatedSystemEvents', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"EventIdSet\\": {\\n \\"EventId\\": [\\n \\"e-bp16helosl7v0ooj****\\"\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'CreateSnapshot' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28846', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the cloud disk.', 'type' => 'string', 'required' => true, 'example' => 'd-bp1s5fnvk4gn2tws0****', 'title' => ''], ], [ 'name' => 'SnapshotName', 'in' => 'query', 'schema' => ['description' => 'The snapshot name must be 2 to 128 characters long. It must start with a letter or a Chinese character and can contain letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).'."\n" ."\n" .'> The name cannot start with `http://` or `https://`. To avoid conflicts with auto snapshot names, the name cannot start with `auto`.', 'type' => 'string', 'required' => false, 'example' => 'testSnapshotName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The snapshot description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.'."\n" ."\n" .'This parameter is empty by default.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'RetentionDays', 'in' => 'query', 'schema' => ['description' => 'The retention period of the snapshot, in days. Valid values: 1 to 65,536. The snapshot is automatically deleted when the retention period expires.'."\n" ."\n" .'If this parameter is not specified, the snapshot is retained indefinitely.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30', 'title' => ''], ], [ 'name' => 'Category', 'in' => 'query', 'schema' => ['description' => 'The type of the snapshot. Valid values:'."\n" ."\n" .'- Standard: a standard snapshot.'."\n" ."\n" .'- Flash: a Flash Snapshot.'."\n" ."\n" .'> This parameter is deprecated. standard snapshots for ESSD cloud disks now include the [Instant Access](~~193667~~) feature by default at no additional cost.', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token to ensure request idempotence. The token must be unique for each request. The **ClientToken** value must be an ASCII string of up to 64 characters. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Resource Group to which the snapshot belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InstantAccess', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the Instant Access feature. Valid values:'."\n" ."\n" .'- true: Enables the Instant Access feature. This feature can be enabled only for snapshots of ESSD cloud disks.'."\n" ."\n" .'- false: Disables the Instant Access feature. A standard snapshot is created.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This parameter is deprecated. standard snapshots for ESSD cloud disks now include the [Instant Access](~~193667~~) feature by default at no additional cost.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'InstantAccessRetentionDays', 'in' => 'query', 'schema' => ['description' => 'The retention period for the Instant Access feature, in days. The snapshot is automatically deleted when this retention period expires. This parameter takes effect only when `InstantAccess` is set to `true`. Valid values: 1 to 65,535.'."\n" ."\n" .'Defaults to the value of `RetentionDays`.'."\n" ."\n" .'> This parameter is deprecated. standard snapshots for ESSD cloud disks now include the [Instant Access](~~193667~~) feature by default at no additional cost.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the snapshot. You can add up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'A tag consisting of a key-value pair.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The key of the tag.'."\n" ."\n" .'> This parameter is not recommended. For better compatibility, use the Key parameter instead.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Key' => ['description' => 'The key of the tag.'."\n" ."\n" .'> This parameter is not recommended. For better compatibility, use the Key parameter instead.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value. It can be an empty string, must be 128 characters or shorter, and cannot contain http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value. It can be an empty string, must be 128 characters or shorter, and cannot contain http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 50, 'title' => '', 'example' => '', ], ], [ 'name' => 'StorageLocationArn', 'in' => 'query', 'schema' => ['description' => '> This parameter is not available for public use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SnapshotId' => ['description' => 'The snapshot ID.', 'type' => 'string', 'example' => 's-bp17441ohwka0yuh****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => 'The response body for a successful request.', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.KMSKeyId.NotFound', 'errorMessage' => 'The specified KMSKeyId does not exist.', 'description' => ''], ['errorCode' => 'InvalidSnapshotName.Malformed', 'errorMessage' => 'The specified SnapshotName is wrongly formed.', 'description' => 'The format of the specified snapshot name is invalid.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => 'The resource is in a state that does not support the current operation.'], ['errorCode' => 'DiskCategory.OperationNotSupported', 'errorMessage' => 'The type of the specified disk does not support creating a snapshot.', 'description' => 'The operation is not supported by the current disk category.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidRetentionDays.Malformed', 'errorMessage' => 'The specified RetentionDays is not valid.', 'description' => 'The specified RetentionDays parameter is invalid.'], ['errorCode' => 'CreateSnapshot.Failed', 'errorMessage' => 'The process of creating snapshot is failed.', 'description' => 'Failed to create the snapshot.'], ], 403 => [ ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.CreatingSnapshot', 'errorMessage' => 'A previous snapshot creation is in process.', 'description' => ''], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The disk attached instance is locked due to security.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.NeverAttached', 'errorMessage' => 'The specified disk has never been attached to any instance.', 'description' => ''], ['errorCode' => 'QuotaExceed.Snapshot', 'errorMessage' => 'The snapshot quota exceeds.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.NeverUsed', 'errorMessage' => 'The specified disk has never been used after creating.', 'description' => ''], ['errorCode' => 'CreateSnapshot.Failed', 'errorMessage' => 'The process of creating snapshot is failed.', 'description' => ''], ['errorCode' => 'DiskInArrears', 'errorMessage' => 'The specified operation is denied as your disk has expired.', 'description' => ''], ['errorCode' => 'DiskId.ValueNotSupported', 'errorMessage' => 'The specified parameter diskid is not supported.', 'description' => 'The specified EBS device category does not support the operation.'], ['errorCode' => 'IncorrectDiskStatus', 'errorMessage' => 'The current disk status does not support this operation.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.SnapshotServiceUnavailable', 'errorMessage' => 'Snapshot service has not been opened yet.', 'description' => 'The operation is not supported while the snapshot service is not activated.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'IncorrectVolumeStatus', 'errorMessage' => 'The current volume status does not support this operation.', 'description' => ''], ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified clientToken is used.', 'description' => 'The specified client token is already in use.'], ['errorCode' => 'IncorrectDiskStatus.Invalid', 'errorMessage' => 'The specified disk status invalid, restart instance and try again.', 'description' => 'The state of the specified disk is invalid. Restart the instance and try again.'], ['errorCode' => 'IncorrectDiskType.NotSupport', 'errorMessage' => 'The specified device type is not supported.', 'description' => 'The specified disk type does not support the operation.'], ['errorCode' => 'IncorrectDiskStatus.Transferring', 'errorMessage' => 'The specified device is transferring, you can retry after the process is finished.', 'description' => 'The specified disk is being migrated. Wait until the migration is complete and try again.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'ECS tags must be added to the CMK.', 'description' => 'ECS tags must be added to the CMK.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK needs to be enabled.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'IdempotentProcessing', 'errorMessage' => 'The previous idempotent request(s) is still processing.', 'description' => 'A previous idempotent request is being processed. Try again later.'], ['errorCode' => 'InvalidSnapshotCategory.Malformed', 'errorMessage' => 'The specified Category is not valid.', 'description' => 'The specified Category parameter is invalid.'], ['errorCode' => 'InvalidAction.Unauthorized', 'errorMessage' => 'The specified action is not valid.', 'description' => 'The specified operation is invalid.'], ['errorCode' => 'InvalidRegion.NotSupportSnapshotInstantAccessRegion', 'errorMessage' => 'The snapshot InstantAccess is not supported for this region.', 'description' => ''], ['errorCode' => 'InvalidCategoryAndInstantAccess.Malformed', 'errorMessage' => 'The snapshot Category and InstantAccess can\'t be used together.', 'description' => ''], ['errorCode' => 'DISK_HAS_CREATING_SNAPSHOT', 'errorMessage' => 'The operation cannot be performed while a snapshot is being created for the disk.', 'description' => ''], ['errorCode' => 'HibernationConfigured.InstanceOperationForbidden', 'errorMessage' => 'The operation is not permitted due to limit of the hibernation configured instance.', 'description' => 'The operation cannot be performed due to the limitations of instances for which the instance hibernation feature is enabled.'], ['errorCode' => 'QuotaExceed.SnapshotQuota', 'errorMessage' => 'The quota is insufficient, please contact your channel partner to increase the quota.', 'description' => 'The quota is insufficient. Contact your channel partner to request a quota increase.'], ['errorCode' => 'InvalidInstantAccessRetentionDays.Malformed', 'errorMessage' => 'The specified InstantAccessRetentionDays is not valid.', 'description' => ''], ['errorCode' => 'CloudBoxNotSupportSnapshotWithInstantAccess', 'errorMessage' => 'The specified disk in CloudBox does not support to create a snapshot with InstantAccess.', 'description' => ''], ['errorCode' => 'InvalidOperation.UnfinishedEncryptedSnapshotCopy', 'errorMessage' => 'This disk has unfinished encrypted copy snapshots in the target region.', 'description' => 'The cloud disk has unfinished encrypted snapshot copy tasks.'], ['errorCode' => 'QuotaExceed.ConcurrentSnapshotQuota', 'errorMessage' => 'The number of snapshots being created for the disk %s has exceeded the concurrent quota (%s). Please wait for the previous snapshots to complete before trying again.', 'description' => 'The number of snapshots being created for this disk has exceeded the concurrent quota. Please wait for the previous snapshots to complete before trying again.'], ['errorCode' => 'InvalidClientToken.Malformed', 'errorMessage' => 'The specified clientToken is improperly formatted. It must contain only ASCII characters and must not exceed 64 characters in length.', 'description' => 'The specified clientToken is improperly formatted. It must contain only ASCII characters and must not exceed 64 characters in length.'], ['errorCode' => 'InvalidParameter.UnauthorizedStorageLocationArn', 'errorMessage' => 'The operation has failed due to lack of permission for the specified "StorageLocationArn". Please use a resource with appropriate permission for the operation.', 'description' => 'The current operation failed because the specified StorageLocationArn has insufficient permissions. Contact the administrator of the resource to obtain the operation permissions.'], ['errorCode' => 'InvalidStorageLocationArn.Malformed', 'errorMessage' => 'The specified parameter StorageLocationArn is wrongly formed.', 'description' => 'The format of the specified parameter StorageLocationArn is incorrect.'], ['errorCode' => 'InvalidStatus.ResourceGroup', 'errorMessage' => 'You cannot perform an operation on a resource group that is being created or deleted.', 'description' => 'Operation not allowed while resource group is being created or deleted.'], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', 'description' => 'The maximum number of tags on resource is exceeded.'], ], [ ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified DiskId does not exist.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified description is wrongly formed.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ['errorCode' => 'InvalidVolumeId.NotFound', 'errorMessage' => 'The specified volume does not exist.', 'description' => ''], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'CreateSnapshot', 'summary' => 'Create a snapshot of a cloud disk.', 'description' => 'The instant access feature for snapshots replaces the legacy local snapshot feature. The parameters are described as follows:'."\n" ."\n" .'- If you used local snapshots before December 14, 2020, you can continue to use the `Category` parameter.'."\n" ."\n" .'- If you did not use local snapshots before December 14, 2020, no additional configuration is required. New snapshots that are created for ESSD cloud disks (ESSDs, ESSD AutoPL disks, ESSD Entry disks, and zone-redundant ESSDs) have the instant access feature enabled by default. This applies to both manual and automatic snapshots. The instant access-related parameters `InstantAccess`, `InstantAccessRetentionDays`, and `DisableInstantAccess` no longer take effect. The `DescribeSnapshots` and `DescribeSnapshotGroups` API operations return an `Available` parameter that indicates the snapshot\'s status.'."\n" ."\n" .'Prerequisites:'."\n" ."\n" .'- The snapshot feature is enabled. For more information, see [Enable the snapshot feature](~~108381~~).'."\n" ."\n" .'- The cloud disk must be in the **in-use** or **available** state. Note the following points:'."\n" ."\n" .' - If the cloud disk is in the **in-use** state, the instance to which the disk is attached must be in the **running** or **stopped** state.'."\n" ."\n" .' - If the cloud disk is in the **available** state, you can create snapshots for it only if it has been previously attached to an ECS instance.'."\n" ."\n" .' - When you use cloud disks to create dynamic scalable volumes or RAID arrays, we recommend that you use snapshot consistency groups and enable application-consistent snapshots to back up data. A snapshot consistency group ensures the crash consistency and write-order consistency of data written across multiple cloud disks. For more information, see [Create a snapshot consistency group](~~199625~~) and [Create an application-consistent snapshot](~~208589~~).'."\n" ."\n" .'Keep the following in mind when creating a snapshot:'."\n" ."\n" .'- Create snapshots during off-peak hours. During snapshot creation, the I/O performance of the cloud disk decreases by less than 10% and read and write operations may temporarily slow down.'."\n" ."\n" .'- You cannot use a snapshot that is being created to create a custom image ([CreateImage](~~25535~~)).'."\n" ."\n" .'- The snapshot does not back up incremental data generated on the cloud disk during the creation process.'."\n" ."\n" .'- If the cloud disk is attached to an ECS instance, do not change the state of the instance, such as stopping or restarting the instance, during snapshot creation. Otherwise, the snapshot creation will fail.'."\n" ."\n" .'- You cannot resize a cloud disk during snapshot creation. You can resize the cloud disk only after the snapshot is complete.'."\n" ."\n" .'- You can create a snapshot for a cloud disk that is in the **expired** (`Expired`) state. If the cloud disk is released due to expiration when the snapshot is being created, the snapshot in the **creating** (`Creating`) state is also deleted.'."\n" ."\n" .'- After a snapshot is created, you are charged for the snapshot based on its size. The fees are settled on a per-region basis. For more information, see [Snapshots](~~56159~~).'."\n" ."\n" .'- You cannot create a snapshot for a cloud disk in the following cases:'."\n" ."\n" .' - The number of manual snapshots of the cloud disk has reached the upper limit. For more information, see [Limits](~~25412#SnapshotQuota1~~).'."\n" ."\n" .' - The limit on the number of snapshots that can be created concurrently has been reached. For more information, see [Limits](~~25412#SnapshotQuota1~~).'."\n" ."\n" .' - When you query the information of an ECS instance, if the returned data contains `{"OperationLocks": {"LockReason" : "security"}}`, all operations on the instance are prohibited.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-05-27T09:59:47.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-01-03T06:06:41.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-17T07:39:10.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-22T02:39:44.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-08T03:22:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-01T02:17:36.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-30T02:01:22.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-22T03:47:54.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-10-19T05:10:23.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-06-10T10:08:25.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateSnapshot'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateSnapshot', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SnapshotId\\": \\"s-bp17441ohwka0yuh****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'CreateSnapshotGroup' => [ 'summary' => 'Creates a snapshot-consistent group for the disks of an Elastic Compute Service (ECS) instance. A snapshot-consistent group contains snapshots of one or more disks.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '28847', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent list of regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-j6ca469urv8ei629****', 'title' => ''], ], [ 'name' => 'InstantAccess', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the instant access feature. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This parameter is no longer used. By default, new standard snapshots of ESSDs are upgraded to instant access snapshots free of charge without the need for additional configurations. For more information, see [Use the instant access feature](~~193667~~).', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'InstantAccessRetentionDays', 'in' => 'query', 'schema' => ['description' => 'The number of days for which the instant access feature is available. Unit: days. Valid values: 1 to 65535.'."\n" ."\n" .'This parameter takes effect only when `InstantAccess` is set to true. The instant access feature is automatically disabled when the specified duration ends.'."\n" ."\n" .'This parameter is left empty by default, which indicates that the instant access feature is automatically disabled when the instant access snapshots are released.'."\n" ."\n" .'> This parameter is no longer used. By default, new standard snapshots of ESSDs are upgraded to instant access snapshots free of charge without the need for additional configurations. For more information, see [Use the instant access feature](~~193667~~).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the snapshot-consistent group. The name must be 2 to 128 characters in length. The name can contain letters, digits, periods (.), underscores (\\_), hyphens (-), and colons (:). It must start with a letter and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'testName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the snapshot-consistent group. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but you must make sure that the token is unique among different requests. The token can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'StorageLocationArn', 'in' => 'query', 'schema' => ['description' => '> This parameter is unavailable for public use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'ExcludeDiskId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the cloud disks for which you do not want to create snapshots. After you specify the IDs of cloud disks, the snapshot-consistent group that you create does not contain the snapshots of the specified cloud disks. Valid values of N: 1 to 16.'."\n" ."\n" .'This parameter is empty by default, which indicates that snapshots are created for all disks of the instance.'."\n" ."\n" .'> This parameter cannot be set at the same time as the `DiskId.N`.', 'type' => 'array', 'items' => ['description' => 'The IDs of the cloud disks for which you do not want to create snapshots. After you specify the IDs of cloud disks, the snapshot-consistent group that you create does not contain the snapshots of the specified cloud disks. Valid values of N: 1 to 16.'."\n" ."\n" .'This parameter is empty by default, which indicates that snapshots are created for all disks of the instance.'."\n" ."\n" .'> This parameter cannot be set at the same time as the `DiskId.N`.', 'type' => 'string', 'required' => false, 'example' => 'd-j6cf7l0ewidb78lq****', 'title' => ''], 'required' => false, 'example' => 'd-j6cf7l0ewidb78lq****', 'maxItems' => 128, 'title' => '', ], ], [ 'name' => 'DiskId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the cloud disks for which you want to create a snapshot-consistent group. You can specify the IDs of cloud disks that are attached to multiple instances within the same zone. Valid values of N: 1 to 16. A snapshot-consistent group can contain snapshots of up to 16 cloud disks whose total disk size does not exceed 32 TiB.'."\n" ."\n" .'Take note of the following:'."\n" ."\n" .'- You cannot specify both the DiskId.N and `ExcludeDiskId.N` parameters in the same request.'."\n" ."\n" .'- If you specify `InstanceId`, you can specify the IDs of cloud disks that are attached only to the specified instance. You cannot specify the IDs of cloud disks that are attached to multiple instances.', 'type' => 'array', 'items' => ['description' => 'The IDs of the cloud disks for which you want to create a snapshot-consistent group. You can specify the IDs of cloud disks that are attached to multiple instances within the same zone. Valid values of N: 1 to 16. A snapshot-consistent group can contain snapshots of up to 16 cloud disks whose total disk size does not exceed 32 TiB.'."\n" ."\n" .'Take note of the following:'."\n" ."\n" .'- You cannot specify both the DiskId.N and `ExcludeDiskId.N` parameters in the same request.'."\n" ."\n" .'- If you specify `InstanceId`, you can specify the IDs of cloud disks that are attached only to the specified instance. You cannot specify the IDs of cloud disks that are attached to multiple instances.', 'type' => 'string', 'required' => false, 'example' => 'd-bp1bcpqxahucdrcn****', 'title' => ''], 'required' => false, 'maxItems' => 128, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the snapshot-consistent group. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `acs:` or `aliyun`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the snapshot-consistent group. Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters in length and cannot start with `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the snapshot-consistent group belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SnapshotGroupId' => ['description' => 'The ID of the snapshot-consistent group.', 'type' => 'string', 'example' => 'ssg-j6ciyh3k52qp7ovm****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '01ABBD93-1ABB-4D92-B496-1A3D20EC0697', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidDiskIds.NotInSameZone', 'errorMessage' => 'The specified disks are not in the same availability zone.', 'description' => ''], ['errorCode' => 'MissingParamter.InstanceId', 'errorMessage' => 'The specified InstanceId should not be null.', 'description' => ''], ['errorCode' => 'InvalidParam.ExcludeDiskIdsAndDiskIds.Conflict', 'errorMessage' => 'The use of parameter \'ExcludeDiskIds\' and \'DiskIds\' at the same time is not supported.', 'description' => ''], ['errorCode' => 'InvalidSnapshotName.Malformed', 'errorMessage' => 'The specified SnapshotName is wrongly formed.', 'description' => 'The format of the specified snapshot name is invalid.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => 'The resource is in a state that does not support the current operation.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidRetentionDays.Malformed', 'errorMessage' => 'The specified RetentionDays is not valid.', 'description' => 'The specified RetentionDays parameter is invalid.'], ['errorCode' => 'DiskCategory.OperationNotSupported', 'errorMessage' => 'The special disk is encrypted, not support this operate.', 'description' => ''], ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The specified Name is invalid.', 'description' => 'The specified Name parameter is invalid.'], ['errorCode' => 'InvalidParameter.Description', 'errorMessage' => 'The specified Description is invalid.', 'description' => ''], ], 403 => [ ['errorCode' => 'IncorrectDiskStatus.CreatingSnapshot', 'errorMessage' => 'A previous snapshot creation is in process.', 'description' => ''], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The disk attached instance is locked due to security.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.NeverAttached', 'errorMessage' => 'The specified disk has never been attached to any instance.', 'description' => ''], ['errorCode' => 'QuotaExceed.Snapshot', 'errorMessage' => 'The snapshot quota exceeds.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.NeverUsed', 'errorMessage' => 'The specified disk has never been used after creating.', 'description' => ''], ['errorCode' => 'CreateSnapshot.Failed', 'errorMessage' => 'The process of creating snapshot is failed.', 'description' => ''], ['errorCode' => 'DiskInArrears', 'errorMessage' => 'The specified operation is denied as your disk has expired.', 'description' => ''], ['errorCode' => 'DiskId.ValueNotSupported', 'errorMessage' => 'The specified parameter diskid is not supported.', 'description' => 'The specified EBS device category does not support the operation.'], ['errorCode' => 'IncorrectDiskStatus', 'errorMessage' => 'The current disk status does not support this operation.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.SnapshotServiceUnavailable', 'errorMessage' => 'Snapshot service has not been opened yet.', 'description' => 'The operation is not supported while the snapshot service is not activated.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'IncorrectVolumeStatus', 'errorMessage' => 'The current volume status does not support this operation.', 'description' => ''], ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified clientToken is used.', 'description' => 'The specified client token is already in use.'], ['errorCode' => 'IncorrectDiskStatus.Invalid', 'errorMessage' => 'The specified device status invalid, restart instance and try again.', 'description' => ''], ['errorCode' => 'IncorrectDiskType.NotSupport', 'errorMessage' => 'The specified device type is not supported.', 'description' => 'The specified disk type does not support the operation.'], ['errorCode' => 'IncorrectDiskStatus.Transferring', 'errorMessage' => 'The specified device is transferring, you can retry after the process is finished.', 'description' => 'The specified disk is being migrated. Wait until the migration is complete and try again.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK needs to be enabled.', 'description' => ''], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'IdempotentProcessing', 'errorMessage' => 'The previous idempotent request(s) is still processing.', 'description' => 'A previous idempotent request is being processed. Try again later.'], ['errorCode' => 'InvalidSnapshotCategory.Malformed', 'errorMessage' => 'The specified Category is not valid.', 'description' => 'The specified Category parameter is invalid.'], ['errorCode' => 'InvalidOperation.Unauthorized', 'errorMessage' => 'The specified operation is unauthorized.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotSupportSnapshotInstantAccessRegion', 'errorMessage' => 'The snapshot InstantAccess is not supported for this region.', 'description' => ''], ['errorCode' => 'InvalidCategoryAndInstantAccess.Malformed', 'errorMessage' => 'The snapshot Category and InstantAccess can\'t be used together.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.TooManyCreatingSnapshots', 'errorMessage' => 'The specified disk has too many unfinished snapshots.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support creating snapshot group.', 'description' => ''], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in the white list of creating snapshot group.', 'description' => ''], ['errorCode' => 'InvalidInstance.NoDisk', 'errorMessage' => 'There is no disk mounted on the instance.', 'description' => 'No disk is mounted on the instance.'], ['errorCode' => 'NumberExceed.TooManyDisks', 'errorMessage' => 'The number of all disks in the request exceeds.', 'description' => 'The number of disks in the request exceeds the upper limit.'], ['errorCode' => 'CapacityExceed.TooManyDisks', 'errorMessage' => 'The capacity of all disks in the request exceeds.', 'description' => ''], ['errorCode' => 'InvalidOperation.MultiAttachDisk', 'errorMessage' => 'Multi attach disk does not support this operation.', 'description' => 'Disks for which the multi-attach feature is enabled do not support the operation.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK needs to be added ECS tag.', 'description' => ''], ['errorCode' => 'InvalidDisk.DiskCategoryInconsistent', 'errorMessage' => 'If any specified disk is of a regional disk category, then all disks must also be of that regional disk category.', 'description' => 'If any specified disk is of a regional disk category, then all disks must also be of that regional disk category.'], ['errorCode' => 'QuotaExceed.ConcurrentSnapshotQuota', 'errorMessage' => 'The number of snapshots being created for the disk %s has exceeded the concurrent quota (%s). Please wait for the previous snapshots to complete before trying again.', 'description' => 'The number of snapshots being created for this disk has exceeded the concurrent quota. Please wait for the previous snapshots to complete before trying again.'], ['errorCode' => 'InvalidDisk.ShareVolume', 'errorMessage' => 'The specified diskId is invalid. The shared volume does not support creating a snapshot group.', 'description' => 'The specified diskId is invalid. The shared volume does not support creating a snapshot group.'], ['errorCode' => 'InvalidParameter.UnauthorizedStorageLocationArn', 'errorMessage' => 'The operation has failed due to lack of permission for the specified "StorageLocationArn". Please use a resource with appropriate permission for the operation.', 'description' => 'The current operation failed because the specified StorageLocationArn has insufficient permissions. Contact the administrator of the resource to obtain the operation permissions.'], ['errorCode' => 'InvalidOperation.SnapshotStorageLocationUnsupported', 'errorMessage' => 'Snapshots with storage location in CloudBox do not support the current operation.', 'description' => 'The snapshot of the storage location in the CloudBox does not support the current operation.'], ['errorCode' => 'InvalidStorageLocationArn.Malformed', 'errorMessage' => 'The specified parameter StorageLocationArn is wrongly formed.', 'description' => 'The format of the specified parameter StorageLocationArn is incorrect.'], ], [ ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified DiskId does not exist.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified description is wrongly formed.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ['errorCode' => 'InvalidVolumeId.NotFound', 'errorMessage' => 'The specified volume does not exist.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidKMSKeyId.NotFound', 'errorMessage' => 'The KMS key used by the disk does not exist.', 'description' => 'The KMS key used by the disk does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'CreateSnapshotGroup', 'description' => '您可以设置`InstanceId`为实例内的指定云盘创建快照一致性组;也可以只使用`DiskId.N`为同可用区内多台 ECS 实例挂载的多块云盘创建快照一致性组。'."\n" ."\n" .'> `DiskId.N`不可与`ExcludeDiskId.N`同时设置。此外,如果设置了`InstanceId`,则`DiskId.N`只能设置指定实例内已挂载的云盘,不再支持设置多个跨实例的云盘 ID。'."\n" ."\n" .'创建快照一致性组时,请注意:'."\n" ."\n" .'- 待创建快照的云盘必须处于**使用中**(`In_use`)或**待挂载**(`Available`)的状态。'."\n" ."\n" .' - 如果云盘处于**使用中**(`In_use`)的状态,则 ECS 实例状态为**运行中**(`Running`)或者**已停止**(`Stopped`)。'."\n" ."\n" .' - 如果云盘处于**待挂载**(`Available`)的状态,则需要保证云盘有过挂载到 ECS 实例的历史操作。从未挂载过 ECS 实例的云盘不支持创建快照。'."\n" ."\n" .'- 目前快照一致性组只支持 ESSD 系列云盘(ESSD、ESSD AutoPL、ESSD Entry)。'."\n" ."\n" .'- 单个快照一致性组最多包括 16 块云盘(包括系统盘和数据盘),且总容量不超过 32 TiB。'."\n" ."\n" .'- 您自行创建的快照会一直保留,请定期删除不再需要的快照,避免快照容量持续扣费。'."\n" ."\n" .'- 开启多重挂载特性的云盘不支持创建快照一致性组。如果实例挂载了开启多重挂载特性的云盘,您需要设置`ExcludeDiskId.N`参数排除该云盘。'."\n" ."\n" .'关于快照一致性组的功能、计费等信息,请参见[快照一致性组](~~199625~~)。', 'changeSet' => [ ['createdAt' => '2025-10-30T02:56:21.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-05-27T09:59:47.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-04-29T02:58:32.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-10T05:31:57.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-04T01:44:11.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-22T02:39:43.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-05-28T02:15:16.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-05-08T01:30:51.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-25T01:35:29.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-24T03:39:25.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-10-19T05:10:23.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-06-03T10:27:28.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-03T10:27:28.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-03T10:27:28.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateSnapshotGroup'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateSnapshotGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#DiskId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SnapshotGroupId\\": \\"ssg-j6ciyh3k52qp7ovm****\\",\\n \\"RequestId\\": \\"01ABBD93-1ABB-4D92-B496-1A3D20EC0697\\"\\n}","type":"json"}]', ], 'CreateVSwitch' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28853', 'abilityTreeNodes' => ['FEATUREecsZOHB3T'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'CidrBlock', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'VSwitchName', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'VSwitchId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationFailed.IdempotentTokenProcessing', 'errorMessage' => 'Action is processing.', 'description' => ''], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'Invalid description.', 'description' => ''], ['errorCode' => 'InvalidVSwitchName.Malformed', 'errorMessage' => 'Specified virtual switch name is not valid.', 'description' => 'The vSwitch name is invalid.'], ['errorCode' => 'InvalidVSwitchDiscription.Malformed', 'errorMessage' => 'Specified virtual switch description is not valid.', 'description' => 'The specified vSwitch description is invalid.'], ['errorCode' => 'ResourceNotAvailable', 'errorMessage' => 'Resource you requested is not available in this region or zone.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Specified CIDR block is not valid in VPC.', 'description' => 'The specified CIDR block is invalid.'], ['errorCode' => 'InvalidCidrBlock.Overlapped', 'errorMessage' => 'Specified CIDR block overlapped with other subnets.', 'description' => 'The vSwitch CIDR block overlaps with another vSwitch CIDR block or with the destination CIDR block of a custom route entry. Try a different CIDR block that is not in use.'], ['errorCode' => 'QuotaExceeded.VSwitch', 'errorMessage' => 'Virtual switch quota exceeded.', 'description' => 'The maximum number of vSwitches has been reached.'], ['errorCode' => 'IncorrectRouteEntryStatus', 'errorMessage' => 'Some route entry status blocked this operation.', 'description' => 'The operation is not supported while the route table contains routes that are in the Pending or Modifying state.'], ['errorCode' => 'IncorrectVSwitchStatus', 'errorMessage' => 'Some virtual switch is modifying within the same VPC.', 'description' => 'Multiple vSwitches in the VPC are being modified. Try again later.'], ['errorCode' => 'InvalidCirdrBlock.MaskLength', 'errorMessage' => 'Specified CIDR block is not valid .', 'description' => 'The specified CIDR block is invalid.'], ['errorCode' => 'IncorrectVpcStatus', 'errorMessage' => 'Current VPC status does not support this operation.', 'description' => 'The VPC is in a state that does not support the current operation.'], ['errorCode' => 'InvalidCidrBlock.Malformed', 'errorMessage' => 'Specified CIDR block is not valid.', 'description' => 'The specified CIDR block is invalid.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'Miss mandatory parameter.', 'description' => 'Required parameters must be specified.'], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The operation is too frequent, TaskConflict.', 'description' => 'The operation is too frequent. Wait a moment and try again.'], ['errorCode' => 'RouteConflict.AlreadyExist', 'errorMessage' => 'Route conflict exists in routing table.', 'description' => ''], ['errorCode' => 'OperationFailed.CidrAcross', 'errorMessage' => 'Classic link instance cidr must not across.', 'description' => ''], ['errorCode' => 'VPC.SWITCH.RULE.QUOTA.NOT.EXISTS', 'errorMessage' => 'vSwitch quota rule not exists.', 'description' => ''], ['errorCode' => 'CreateVSwitch.IncorrectStatus.cbnStatus', 'errorMessage' => 'Current CBN status does not support this operation.', 'description' => ''], ['errorCode' => 'OperationFailed.NotifyCenCreate', 'errorMessage' => 'Failed to notify cen when create vswitch.', 'description' => ''], ['errorCode' => 'Forbidden.VpcNotFound', 'errorMessage' => 'Specified VPC can not found.', 'description' => ''], ['errorCode' => 'Duplicated.ClientToken', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'OperationFailed.DistibuteLock', 'errorMessage' => 'Distibute lock fail.', 'description' => ''], ['errorCode' => 'IllegalParam.CidrBlock', 'errorMessage' => 'The param of CidrBlock [%s] is illegal.', 'description' => 'The param of CidrBlock [%s] is illegal.'], ['errorCode' => 'OperationDenied.ZoneIsDisabled', 'errorMessage' => 'The specified zone is disabled. You cannot create a vSwitch in a disabled zone.', 'description' => 'The specified zone is disabled. You cannot create a vSwitch in a disabled zone.'], ], 404 => [ ['errorCode' => 'Invalid.NotExist', 'errorMessage' => 'witch mask rule not exists.', 'description' => ''], ['errorCode' => 'InvalidStatus.RouteEntry', 'errorMessage' => 'RouteEntry status error.', 'description' => ''], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'Specified zone does not exist.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'Specified VPC does not exist.', 'description' => 'The specified VPC ID does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateVSwitch'], ], 'changeSet' => [ ['createdAt' => '2025-03-18T08:46:14.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateVSwitch'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateVSwitch', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:tag', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"VSwitchId\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreateVSwitch', 'summary' => 'CreateVSwitch', ], 'CreateVirtualBorderRouter' => [ 'summary' => 'CreateVirtualBorderRouter', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'VPC接口', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the Virtual Border Router (VBR) is located.'."\n" ."\n" .'You can call the `DescribeRegions` operation to get the latest list of regions.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'PhysicalConnectionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the physical connection.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'VbrOwnerId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Alibaba Cloud account that owns the VBR. Specify this parameter when creating a VBR for another account.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'VlanId', 'in' => 'query', 'schema' => ['description' => 'The VLAN ID of the VBR.'."\n" ."\n" .'Valid values: 0 to 4095.'."\n" ."\n" .'A value of 0 indicates that the VBR is connected to the physical connection in Layer 3 router mode.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'CircuitCode', 'in' => 'query', 'schema' => ['description' => 'The circuit code of the physical connection. This code is provided by your connectivity provider.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'LocalGatewayIp', 'in' => 'query', 'schema' => ['description' => 'The IP address of the VBR gateway in Alibaba Cloud.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'PeerGatewayIp', 'in' => 'query', 'schema' => ['description' => 'The IP address of the gateway in your on-premises data center.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'PeeringSubnetMask', 'in' => 'query', 'schema' => ['description' => 'The peering subnet mask for the IP addresses of the local gateway and the peer gateway.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the VBR.'."\n" ."\n" .'The description must be 2 to 256 characters long and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the VBR.'."\n" ."\n" .'The name must be 2 to 128 characters long, start with a letter, and can contain only letters, digits, periods (.), underscores (\\_), and hyphens (-).', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token to ensure that the request is idempotent.'."\n" ."\n" .'You can generate this token on your client, but you must ensure that it is unique for each request. The token can contain only ASCII characters and cannot be longer than 64 characters.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token to ensure that the request is idempotent.'."\n" ."\n" .'You can generate this token on your client, but you must ensure that it is unique for each request. The token can contain only ASCII characters and cannot be longer than 64 characters.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['description' => 'The CIDR block of your on-premises network. Required when the VBR is connected to a Cloud Enterprise Network (CEN) instance.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'VbrId' => ['description' => 'The ID of the virtual border router.', 'type' => 'string', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidPhysicalConnectionId.NotFound', 'errorMessage' => 'The specified PhysicalConnectionId is not found.', 'description' => ''], ['errorCode' => 'InvalidVlanId.Used', 'errorMessage' => 'The specified VlanId has been used.', 'description' => 'The specified VLAN ID is already used.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter \'PhysicalConnectionId\' that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidPhysicalConnectionId.NotEnabled', 'errorMessage' => 'The specified PhysicalConnectionId is not in Enabled state.', 'description' => ''], ['errorCode' => 'InvalidVlanId.Malformed', 'errorMessage' => 'The specified VlanId is not valid.', 'description' => 'The specified VlanId is invalid.'], ['errorCode' => 'InvalidCircuitCode.Malformed', 'errorMessage' => 'The specified CircuitCode is not valid.', 'description' => 'The specified CircuitCode parameter is invalid.'], ['errorCode' => 'InvalidLocalGatewayIp.Malformed', 'errorMessage' => 'The specified LocalGatewayIp is not valid.', 'description' => 'The specified LocalGatewayIp parameter is invalid.'], ['errorCode' => 'InvalidPeeringSubnetMask.Malformed', 'errorMessage' => 'The specified PeeringSubnetMask is not valid.', 'description' => 'The specified PeeringSubnetMask parameter is invalid.'], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => 'The specified Name is not valid.', 'description' => 'The specified Name parameter is invalid.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specifid Description is not valid.', 'description' => 'The resource description is invalid. The description must be 2 to 256 characters in length and cannot start with http:// or https://.'], ['errorCode' => 'QuotaExceeded.vbrPerpConn', 'errorMessage' => 'Virtual boarder router per PhysicalConnection quota exceed.', 'description' => 'The maximum number of VBRs that can be associated with a physical connection has been reached.'], ['errorCode' => 'QuotaExceeded.freevbr', 'errorMessage' => 'Free virtual boarder router quota exceed.', 'description' => ''], ['errorCode' => 'InvalidIp.NotSameSubnet', 'errorMessage' => 'Local gateway ip and peer gateway ip are not in the same subnet.', 'description' => 'The IP addresses of the local gateway and the peer gateway do not fall within the same subnet.'], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The operation is too frequent, please wait a moment and try again.', 'description' => ''], ['errorCode' => 'QuotaExceeded.CrossUserVBRPerUser', 'errorMessage' => 'Cross virtual boarder router per user quota exceed.', 'description' => ''], ['errorCode' => 'OperationFailed.VlanIdInUse', 'errorMessage' => 'Operation failed because vlanId is in use.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden.LocalGatewayIpNotAllowedByCaller', 'errorMessage' => 'The caller is not allowed to specify the LocalGatewayIp parameter.', 'description' => ''], ['errorCode' => 'Forbidden.PeerGatewayIpNotAllowedByCaller', 'errorMessage' => 'The caller is not allowed to specify the PeerGatewayIp parameter.', 'description' => 'You are not allowed to set the PeerGatewayIp parameter.'], ['errorCode' => 'Forbidden.PeeringSubnetMaskNotAllowedByCaller', 'errorMessage' => 'The caller is not allowed to specify the PeeringSubnetMask parameter.', 'description' => 'You are not allowed to set the PeeringSubnetMask parameter.'], ['errorCode' => 'Forbidden.NameNotAllowedByCaller', 'errorMessage' => 'The caller is not allowed to specify the Name parameter.', 'description' => 'You are not allowed to use the Name parameter.'], ['errorCode' => 'Forbidden.DescriptionNotAllowedByCaller', 'errorMessage' => 'The caller is not allowed to specify the Description parameter.', 'description' => 'The caller is not allowed to specify the Description.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId is not found.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidVbrOwnerId.NotFound', 'errorMessage' => 'The specified VbrOwnerId is not valid.', 'description' => ''], ['errorCode' => 'OperationFailed.AccessDeviceDisabled', 'errorMessage' => 'Access device is disabled and can not create vbr.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateVirtualBorderRouter'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateVirtualBorderRouter'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateVirtualBorderRouter', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"VbrId\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreateVirtualBorderRouter', 'translator' => 'manual', ], 'CreateVpc' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the VPC will be created. You can call the `DescribeRegions` operation to query the latest list of regions.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'CidrBlock', 'in' => 'query', 'schema' => ['description' => 'The IPv4 CIDR block of the VPC. You can use one of the following standard IPv4 CIDR blocks or their subnets:'."\n" ."\n" .'- `10.0.0.0/8`'."\n" .'- `172.16.0.0/12`'."\n" .'- `192.168.0.0/16`', 'type' => 'string', 'required' => false, 'default' => '172.16.0.0/12', 'title' => '', 'example' => ''], ], [ 'name' => 'VpcName', 'in' => 'query', 'schema' => ['description' => 'The VPC name. It must be 2 to 128 characters long, start with a letter, and contain only letters, digits, underscores (_), and hyphens (-).', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The VPC description. The description must be 2 to 256 characters long and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token that ensures the idempotence of the request. The token must be unique across requests, contain only ASCII characters, and not exceed 64 characters. For more information, see [How to ensure idempotence](https://help.aliyun.com/document_detail/25693.html).', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['description' => 'The user CIDR block. You can specify a user CIDR block as an alternative to the standard CIDR blocks. This lets you use a private IP address range other than `10.0.0.0/8`, `172.16.0.0/12`, or `192.168.0.0/16` as the CIDR block for the VPC.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'VpcId' => ['description' => 'The ID of the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'VRouterId' => ['description' => 'The ID of the virtual router automatically created for the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'RouteTableId' => ['description' => 'The ID of the route table automatically created for the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'TOKEN_PROCESSING', 'errorMessage' => 'Action is processing.', 'description' => ''], ['errorCode' => 'InvokeError', 'errorMessage' => 'instance quota rule invoke error.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Specified CIDR block is not valid', 'description' => 'The specified CIDR block is invalid.'], ['errorCode' => 'ResourceNotAvailable', 'errorMessage' => 'Resource you requested is not available in this region or zone.', 'description' => ''], ['errorCode' => 'InvalidVpcName.Malformed', 'errorMessage' => 'Specified VPC name is not valid.', 'description' => 'The VPC name is invalid. Correct the name format and try again.'], ['errorCode' => 'InvalidVpcDiscription.Malformed', 'errorMessage' => 'Specified VPC description is not valid.', 'description' => 'The specified VPC description is invalid.'], ['errorCode' => 'QuotaExceeded.Vpc', 'errorMessage' => 'VPC quota exceeded.', 'description' => 'The maximum number of VPCs in your Alibaba Cloud account has been reached. You can submit a ticket to request a quota increase.'], ['errorCode' => 'ResourceNotAvailable.Vpc', 'errorMessage' => 'Resource you requested is not available in this region or zone.', 'description' => 'The requested resources are unavailable.'], ['errorCode' => 'InvalidUserCidr.Quota', 'errorMessage' => 'Specified UserCidr number is greater than 3.', 'description' => ''], ['errorCode' => 'InvalidUserCidr.Malformed', 'errorMessage' => 'Specified UserCidr overlapping in of 100.64.0.0/10.', 'description' => ''], ['errorCode' => 'System.ServiceBusy', 'errorMessage' => 'System is busy, please try later.', 'description' => ''], ['errorCode' => 'IllegalParam.UserCidr', 'errorMessage' => 'UserCidr is not a valid or strict address.', 'description' => ''], ['errorCode' => 'OperationUnsupported.ResourceGroupId', 'errorMessage' => 'ResourceGroup is not supported in this region.', 'description' => ''], ['errorCode' => 'IllegalParam.EnableIpv6', 'errorMessage' => '%s', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbbiden', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'You are not authorized to operate the specified resource.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'Specified value of "regionId" is not supported.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::CreateVpc'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'CreateVpc'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'vpc:CreateVpc', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"VpcId\\": \\"\\",\\n \\"VRouterId\\": \\"\\",\\n \\"RequestId\\": \\"\\",\\n \\"RouteTableId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'CreateVpc', 'summary' => 'CreateVpc', ], 'CreateVsc' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'consumes' => ['application/json'], 'produces' => ['application/json'], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'docRequired' => true, 'description' => '', 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'description' => '', 'required' => false, 'title' => '', 'example' => '', ], 'maxItems' => 20, 'description' => '', 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'VscName', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => '设备1', 'title' => '', 'description' => '', 'required' => false], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => '设备的描述', 'title' => '', 'description' => '', 'required' => false], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'example' => 'i-bp**c262', 'title' => '', 'description' => ''], ], [ 'name' => 'VscType', 'in' => 'query', 'schema' => [ 'type' => 'string', 'required' => false, 'enum' => ['Primary', 'Standard'], 'description' => '', 'example' => 'Primary', 'title' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => '', 'description' => '', 'required' => false], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['type' => 'boolean', 'description' => '', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'example' => 'DD38F-12VBW2-**EKX', 'title' => '', 'description' => ''], 'VscId' => ['type' => 'string', 'example' => 'vsc-b*d31dq', 'title' => '', 'description' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationDenied.InstanceNotSupportVsc', 'errorMessage' => 'The specified instance does not support VSC operations.', 'description' => 'The specified instance does not support VSC'], ['errorCode' => 'QuotaExceed.Vsc', 'errorMessage' => 'The number of VSC for the specified instance has exceeded the quota.', 'description' => 'The number of VSC channels of the instance has reached the upper limit.'], ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The specified Name is invalid.', 'description' => 'The specified Name parameter is invalid.'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => '%s.', 'description' => 'The Description parameter is invalid.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.N.Key is not valid. Tag keys cannot be empty or null, support up to 128 characters, cannot start with "aliyun" or "acs:", and cannot contain "http://" or "https://".', 'description' => 'The specified Tag.N.Key is not valid. Tag keys cannot be empty or null, support up to 128 characters, cannot start with "aliyun" or "acs:", and cannot contain "http://" or "https://".'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.N.Value is not valid. Tag values support up to 128 characters, and cannot contain "http://" or "https://".', 'description' => 'The specified Tag.N.Value is not valid. Tag values support up to 128 characters, and cannot contain "http://" or "https://".'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'Instance.VscPrimaryExist', 'errorMessage' => 'The specified instance already has a Primary VSC.', 'description' => 'The specified instance already has a primary VSC'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance doesn\'t exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'InvalidClientToken.Malformed', 'errorMessage' => 'The specified clientToken is improperly formatted. It must contain only ASCII characters and must not exceed 64 characters in length.', 'description' => 'The specified clientToken is improperly formatted. It must contain only ASCII characters and must not exceed 64 characters in length.'], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling', 'description' => 'Your request is being throttled. Try again later.'], ['errorCode' => 'InvalidVscType.ValueNotSupported', 'errorMessage' => 'The specified VscType does not support.', 'description' => 'The specified VscType does not support'], ], [ ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance does not exist.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ], ], 'title' => '', 'summary' => '', 'description' => '- 创建VSC时,需要实例规格支持,并且实例已开启VSC。'."\n" .'- 单个实例上VSC Primary类型只能创建1个。'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:CreateVsc', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Vsc', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:vsc/*'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#InstanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DD38F-12VBW2-**EKX\\",\\n \\"VscId\\": \\"vsc-b*d31dq\\"\\n}","type":"json"}]', ], 'DeactivateRouterInterface' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the router interface.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'RouterInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the router interface.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorrectStatus', 'errorMessage' => 'RouterInterface can be operated by this action only when it\'s status is Active.', 'description' => ''], ['errorCode' => 'Forbidden.FinancialLocked', 'errorMessage' => 'This RouterInterface is financiel locked because of bills outstanding.', 'description' => ''], ['errorCode' => 'Forbbiden.InvaildOwner', 'errorMessage' => 'The RouterInterface owener error', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidRouterInterfaceId.NotFound', 'errorMessage' => 'The specified RouterInterfaceId does not exist in our record.', 'description' => 'The specified router interface does not exist. Check whether the router interface ID is valid.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeactivateRouterInterface'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeactivateRouterInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:DeactivateRouterInterface', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouterInterface', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routerinterface/{#RouterInterfaceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeactivateRouterInterface', 'summary' => 'DeactivateRouterInterface', ], 'DeleteActivation' => [ 'summary' => 'Deletes an unused activation code.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29262', 'abilityTreeNodes' => ['FEATUREecsLJD94P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the activation code. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the activation code. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ActivationId', 'in' => 'query', 'schema' => ['description' => 'The ID of the unused activation code.', 'type' => 'string', 'required' => true, 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F74942176', 'title' => ''], 'Activation' => [ 'description' => 'Details about the activation code and its usage information.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the activation code was created.', 'type' => 'string', 'example' => '2021-01-20T06:00:00Z', 'title' => ''], 'DeregisteredCount' => ['description' => 'The number of instances that were deregistered.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InstanceCount' => ['description' => 'The maximum number of times that the activation code can be used to register managed instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Description' => ['description' => 'The description of the activation code.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'RegisteredCount' => ['description' => 'The number of instances that were registered.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InstanceName' => ['description' => 'The default instance name prefix.', 'type' => 'string', 'example' => 'test-InstanceName', 'title' => ''], 'IpAddressRange' => ['description' => 'The IP addresses of the hosts that are allowed to use the activation code.', 'type' => 'string', 'example' => '0.0.0.0/0', 'title' => ''], 'TimeToLiveInHours' => ['description' => 'The validity period of the activation code. Unit: hours.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''], 'ActivationId' => ['description' => 'The ID of the activation code.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ], 403 => [ ['errorCode' => 'ActivationId.InUse', 'errorMessage' => 'The specified activation id is in use.', 'description' => 'The specified activation code is in use.'], ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'ActivationId.NotFound', 'errorMessage' => 'The specified activation id does not exist.', 'description' => 'The specified activation code does not exist.'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'title' => 'DeleteActivation', 'description' => '## [](#)Usage notes'."\n" ."\n" .'Before you call this operation to delete an activation code, make sure that no managed instances are registered with the activation code.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2022-02-25T07:28:10.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteActivation'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DeleteActivation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'activation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:activation/{#activationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F74942176\\",\\n \\"Activation\\": {\\n \\"CreationTime\\": \\"2021-01-20T06:00:00Z\\",\\n \\"DeregisteredCount\\": 0,\\n \\"InstanceCount\\": 1,\\n \\"Description\\": \\"This is description.\\",\\n \\"RegisteredCount\\": 0,\\n \\"InstanceName\\": \\"test-InstanceName\\",\\n \\"IpAddressRange\\": \\"0.0.0.0/0\\",\\n \\"TimeToLiveInHours\\": 4,\\n \\"ActivationId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F1234****\\"\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DeleteAutoProvisioningGroup' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '28856', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the auto provisioning group.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'AutoProvisioningGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the auto provisioning group.', 'type' => 'string', 'required' => true, 'example' => 'apg-bpuf6jel2bbl62wh13****', 'title' => ''], ], [ 'name' => 'TerminateInstances', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release instances in the auto provisioning group. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'> By default, this parameter inherits the value of `TerminateInstances` that you specified when you call the `CreateAutoProvisioningGroup` operation to create an auto provisioning group. You can also change the value of `TerminateInstances` when you call the DeleteAutoProvisioningGroup operation to delete the auto provisioning group.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B48A12CD-1295-4A38-A8F0-0E92C937****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.InstanceType', 'errorMessage' => 'The specified parameter "TerminateInstances" should be not empty.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified parameter "AutoProvisioningGroupId" should not be null.', 'description' => 'Elastic Supply Group Id(AutoProvisioningGroupId) must be filled in.'], ['errorCode' => 'NoPermission', 'errorMessage' => '%s', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden.RAM', 'errorMessage' => 'User not authorized to operate on the specified resource, or this API doesn\'t support RAM.', 'description' => ''], ['errorCode' => 'AutoProvisioningGroup.Unauthorized', 'errorMessage' => 'Unauthorized to operate current action.', 'description' => ''], ['errorCode' => 'AutoProvisioningGroup.IncorrectStatus', 'errorMessage' => 'Current status of AutoProvisioningGroup does not support curren action.', 'description' => ''], ], [ ['errorCode' => 'InvalidAutoProvisioningGroupId.NotFound', 'errorMessage' => 'The specified AutoProvisioningGroupId does not exist.', 'description' => 'The specified elastic supply group does not exist.'], ], ], 'title' => 'DeleteAutoProvisioningGroup', 'summary' => 'Deletes an auto provisioning group. When you call this operation, you can specify AutoProvisioningGroupId and TerminateInstances in the request.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-12-27T07:51:33.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteAutoProvisioningGroup'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteAutoProvisioningGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'AutoProvisioningGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:autoprovisioninggroup/{#autoprovisioninggroupId}'], ], ], 'additionalActions' => [ ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B48A12CD-1295-4A38-A8F0-0E92C937****\\"\\n}","type":"json"}]', ], 'DeleteAutoSnapshotPolicy' => [ 'summary' => 'Deletes an automatic snapshot policy. After you delete an automatic snapshot policy, the policy is no longer applied to the disks on which it previously took effect.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28857', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'regionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region to which the automatic snapshot policy belongs. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'autoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the automatic snapshot policy. You can call the [DescribeAutoSnapshotPolicyEx](~~25530~~) operation to query the IDs of available automatic snapshot policies.', 'type' => 'string', 'required' => true, 'example' => 'sp-bp14yziiuvu3s6jn****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'ParameterInvalid', 'errorMessage' => 'The specified automatic snapshot policy does not exist.', 'description' => ''], ], ], 'title' => 'DeleteAutoSnapshotPolicy', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteAutoSnapshotPolicy'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteAutoSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'AutoSnapshotPolicy', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotpolicy/{#SnapshotPolicyId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DeleteBandwidthPackage' => [ 'summary' => 'Deletes a bandwidth package.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the bandwidth package is located.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'BandwidthPackageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the bandwidth package to delete.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'DependencyViolation.ForwardEntry', 'errorMessage' => 'The specified BandwidthPackageId has dependent resource.', 'description' => ''], ['errorCode' => 'DependencyViolation.SnatEntry', 'errorMessage' => 'The specified BandwidthPackageId has dependent resource.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidBandwidth.NotExist', 'errorMessage' => 'bandwidth package not exist.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidBandwidthPackageId.NotFound', 'errorMessage' => 'The specified BandwidthPackageId does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidNatGateway.NotFound', 'errorMessage' => 'The specified natGateway does not exist in our records.', 'description' => ''], ], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteBandwidthPackage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteBandwidthPackage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'BandwidthPackage', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:bandwidthpackage/{#BandwidthPackageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteBandwidthPackage', ], 'DeleteCommand' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29263', 'abilityTreeNodes' => ['FEATUREecsXZ3H4M'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the command. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the command. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'CommandId', 'in' => 'query', 'schema' => ['description' => 'The ID of the command. You can call the [DescribeCommands](~~64843~~) operation to query all available command IDs.', 'type' => 'string', 'required' => true, 'example' => 'c-4d34302d02424c5c8e10281e3a31****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ], 403 => [ ['errorCode' => 'InvalidStatus.CmdIdInUse', 'errorMessage' => 'The specified commandId is in use by some runing Invocation.', 'description' => 'The specified command is being run. Stop the command and try again.'], ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidCmdId.NotFound', 'errorMessage' => 'The specified command ID does not exist.', 'description' => 'The specified CommandId parameter is invalid. Check the parameter value. You can call the DescribeCommands operation to query all available command IDs.'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'title' => 'DeleteCommand', 'summary' => 'Deletes a Cloud Assistant command in a region. This operation cannot delete Cloud Assistant commands that are being run.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2022-02-25T07:28:10.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteCommand'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteCommand', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Command', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:command/{#commandId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'DeleteDedicatedHostCluster' => [ 'summary' => 'Deletes a dedicated host group. Before you call the API operation, you must migrate the dedicated hosts in the host group to another host group.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '28860', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the host group. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DedicatedHostClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the host group.', 'type' => 'string', 'required' => true, 'example' => 'dc-bp12wlf6am0vz9v2****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D02FF8', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'DedicatedHostExists', 'errorMessage' => 'Dedicated Host exists in the dedicated host cluster.', 'description' => ''], ['errorCode' => 'IncompleteParamter', 'errorMessage' => 'Parameter DedicatedHostClusterId can not be null in this request.', 'description' => ''], ], ], 'title' => 'DeleteDedicatedHostCluster', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteDedicatedHostCluster'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteDedicatedHostCluster', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'DedicatedHostCluster', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddhcluster/{#ddhclusterId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D02FF8\\"\\n}","type":"json"}]', ], 'DeleteDeploymentSet' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '28862', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the deployment set. You can call [DescribeRegions](~~25609~~) to query the most recent Alibaba Cloud region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DeploymentSetId', 'in' => 'query', 'schema' => ['description' => 'The ID of the deployment set to delete.', 'type' => 'string', 'required' => true, 'example' => 'ds-bp1g5ahlkal88d7x****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter "DeploymentSetId" that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'DependencyViolation.NotEmpty', 'errorMessage' => 'There are still instance(s) in the specified DeploymentSetId.', 'description' => 'Instances still exist in the specified DeploymentSetId.'], ['errorCode' => 'DependencyViolation.ReferByHPC', 'errorMessage' => 'The specified deployment set is still referred by an HPC cluster.', 'description' => ''], ], ], 'title' => 'DeleteDeploymentSet', 'summary' => 'Deletes a deployment set.', 'description' => 'Before you delete a deployment set, make sure that no instances are in the deployment set. If instances exist, you must remove or release the instances before you can delete the deployment set. For more information, see [Change the deployment set of an instance](~~108407~~) and [Release an ECS instance](~~25442~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteDeploymentSet'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteDeploymentSet', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'DeploymentSet', 'arn' => 'acs:ecs:{#regionid}:{#accountId}:deploymentset/{#deploymentSetId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], 'DeleteDiagnosticMetricSets' => [ 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '144566', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'MetricSetIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of diagnostic metric sets. You can specify up to 10 set IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of diagnostic metric set N. You can specify up to 10 set IDs.', 'type' => 'string', 'required' => false, 'example' => 'dms-uf6i0tv2refv8wz*****', 'title' => ''], 'required' => true, 'maxItems' => 10, 'minItems' => 1, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidMetricSetId.NotExist', 'errorMessage' => 'The specified MetricSetId does not exist.', 'description' => 'The specified MetricSetId does not exist.'], ], ], 'title' => 'DeleteDiagnosticMetricSets', 'summary' => 'Deletes diagnostic metric sets.', 'changeSet' => [ ['createdAt' => '2025-09-09T05:32:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-07-21T10:53:56.000Z', 'description' => 'OpenAPI offline'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteDiagnosticMetricSets'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteDiagnosticMetricSets', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\"\\n}","type":"json"}]', ], 'DeleteDiagnosticReports' => [ 'summary' => 'Deletes diagnostic reports.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '142758', 'abilityTreeNodes' => ['FEATUREecsE0CAY4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ReportIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the diagnostic reports. You can specify up to 100 resource IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of the diagnostic report N. You can specify up to 100 resource IDs.', 'type' => 'string', 'required' => false, 'example' => 'dr-uf6i0tv2refv8wz*****', 'title' => ''], 'required' => true, 'maxItems' => 100, 'minItems' => 1, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidStatus.InProgress', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'InvalidResource.NotFound', 'errorMessage' => 'The specified resource not exists.', 'description' => 'The specified resource does not exist'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DeleteDiagnosticReports', 'description' => 'You can call this operation to delete the diagnostic reports that are no longer needed.', 'changeSet' => [ ['createdAt' => '2025-09-10T03:06:35.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-07-21T10:53:56.000Z', 'description' => 'OpenAPI offline'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteDiagnosticReports'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteDiagnosticReports', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\"\\n}","type":"json"}]', ], 'DeleteDisk' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'paid', 'abilityTreeCode' => '28863', 'abilityTreeNodes' => ['FEATUREecsTKAXF8', 'FEATUREecs70JNQP'], ], 'parameters' => [ [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the disk that you want to release.', 'type' => 'string', 'required' => true, 'example' => 'd-bp14k9cxvr5uzy5****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ], 403 => [ ['errorCode' => 'IncorrectDiskStatus', 'errorMessage' => 'The current disk status does not support this operation.', 'description' => ''], ['errorCode' => 'DiskNotPortable', 'errorMessage' => 'The specified disk is not a portable disk.', 'description' => ''], ['errorCode' => 'DiskTypeViolation', 'errorMessage' => 'The specified disk is a system disk and cannot support the operation.', 'description' => 'The specified disk is a system disk and cannot be detached.'], ['errorCode' => 'DiskCreatingSnapshot', 'errorMessage' => 'The operation is denied due to a snapshot of the specified disk is not completed yet.', 'description' => ''], ['errorCode' => 'IncorrectDiskStatus.Initializing', 'errorMessage' => 'The current disk status does not support this operation.', 'description' => ''], ['errorCode' => 'DiskStillAttached', 'errorMessage' => 'The disk is still attached to the disk.', 'description' => ''], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in disk white list.', 'description' => 'You are not authorized to manage the disk. Try again when you are authorized.'], ['errorCode' => 'InvalidDiskStatus.DeleteProtection', 'errorMessage' => 'The specified disk is under delete protection, can not be deleted.', 'description' => 'Release protection is enabled for the specified disk and the disk cannot be released. Possible cause: The disk was detached from an instance on which it was previously used as the system disk but was retained as a data disk. This disk cannot be released before the instance is released.'], ], [ ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified disk does not exist.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'Release a pay-as-you-go data disk', 'summary' => 'Releases a pay-as-you-go data disk. Supported disk types include basic disks, ultra disks, standard SSDs, and enterprise SSDs (ESSDs).', 'description' => 'When you invoke this operation, take note of the following items:'."\n" ."\n" .'- Manual snapshots of the disk are retained.'."\n" .'- You can invoke [ModifyDiskAttribute](~~25517~~) to specify whether to retain or release automatic snapshots along with the disk. Delete unnecessary snapshots promptly to maintain sufficient snapshot quota for epoch-based automatic snapshot policy execution.'."\n" .'- The disk must be in the **Unattached** (Available) state when you release it.'."\n" .'- If the disk with the specified ID does not exist, the request is ignored.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteDisk'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteDisk', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DeleteForwardEntry' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ForwardTableId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ForwardEntryId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorretForwardEntryStatus', 'errorMessage' => 'Some Forward entry status blocked this operation..', 'description' => 'The DNAT entry is in a state that does not support the current operation.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'Missing mandatory parameter', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidForwardEntryId.NotFound', 'errorMessage' => 'Specified forward entry ID does not exist', 'description' => 'The specified DNAT entry ID does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteForwardEntry'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteForwardEntry'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteForwardEntry', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ForwardTable', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:forwardtable/{#ForwardTableId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteForwardEntry', 'summary' => 'Deletes a DNAT entry.', ], 'DeleteHaVip' => [ 'summary' => 'DeleteHaVip', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'HaVipId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorrectStatus', 'errorMessage' => 'HaVip can be deleted only when it is status is Available.', 'description' => ''], ['errorCode' => 'DependencyViolation.HaVipReferedByRouteEntry', 'errorMessage' => 'HaVip cannot be deleted when it is refered by a route table entry as next hop.', 'description' => 'The HAVIP is being referenced as the next hop of a route entry. Delete the route entry and then try deleting the HAVIP.'], ['errorCode' => 'DependencyViolation.HaVipAssociatedWithEIP', 'errorMessage' => 'HaVip cannot be deleted when it is associated with EIP.', 'description' => 'The HAVIP is associated with an EIP and cannot be deleted.'], ['errorCode' => 'IncorrectHaVipStatus', 'errorMessage' => 'HaVip?s status is invalid.', 'description' => ''], ['errorCode' => 'Forbidden.HaVip', 'errorMessage' => 'No permissions to perform operations on HAVIPs. Please apply for privilege--vpc_privilege_allow_buy_havip_instance.', 'description' => 'You do not have the permissions to manage the HAVIP. Go to the Quota Center to apply for the permissions.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidHaVipId.NotFound', 'errorMessage' => 'The specified HaVip does not exist in the specified region.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteHaVip'], ], 'changeSet' => [ ['createdAt' => '2023-06-12T07:10:42.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHaVip'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteHaVip', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'HaVip', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:havip/{#HaVipId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteHaVip', ], 'DeleteHpcCluster' => [ 'summary' => 'Calls DeleteHpcCluster to delete an HPC cluster.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '29264', 'abilityTreeNodes' => ['FEATUREecsVE4GXS'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the HPC cluster. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'HpcClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the HPC cluster.', 'type' => 'string', 'required' => true, 'example' => 'hpc-cxvr5uzy54j0ya****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The input parameter RegionId that is mandatory for processing this request is not supplied.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'MissingParameter.HpcClusterId', 'errorMessage' => 'The input parameter HpcClusterId that is mandatory for processing this request is not supplied.', 'description' => 'The HpcClusterId parameter is required.'], ['errorCode' => 'Invalid.Parameter', 'errorMessage' => 'Invalid parameters.', 'description' => 'Invalid parameters.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter "RegionId" is not valid.', 'description' => ''], ['errorCode' => 'NotExists.HpcCluster', 'errorMessage' => 'The specified hpc cluster does not exist.', 'description' => ''], ['errorCode' => 'NotEmpty.HpcCluster', 'errorMessage' => 'The specified hpc cluster is not empty, still contains instances.', 'description' => 'Instances are present in the specified HPC cluster. Release the instances and then try again.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter "RegionId" is not valid.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Delete an HPC cluster', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteHpcCluster'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteHpcCluster', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DeleteImage' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28869', 'abilityTreeNodes' => ['FEATUREecsJ8B02D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the custom image. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The image ID. If the specified custom image does not exist, the request will be ignored.', 'type' => 'string', 'required' => true, 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcibly delete the custom image. Valid values:'."\n" ."\n" .'- true: Forcibly deletes the custom image, ignoring whether the image is currently used by other instances.'."\n" .'- false: Normally deletes the custom image. Before deletion, the system checks whether the image is currently used by other instances.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['type' => 'boolean', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'ImageUsingByInstance', 'errorMessage' => 'The specified image has been used to create instances. You can use the DescribeInstances API to query these instances, or you can use the force parameter to proceed.', 'description' => 'The specified image has already been used to create the instance. You can query these instances using the DescribeInstances API or continue with the \'force\' parameter.'], ['errorCode' => 'ImageUseShared', 'errorMessage' => 'The specified image has been shared to others. You can use the DescribeImageSharePermission API to query the users who have been shared.', 'description' => 'The specified image has been shared with other users. You can use the DescribeImageSharePermission API to query shared users.'], ['errorCode' => 'OperationDenied.ImageCopying', 'errorMessage' => 'The image is being copied. Please use the CancelCopyImage API.', 'description' => 'The image is being copied, please use the CancelCopyImage API.'], ['errorCode' => 'ImageIsImporting', 'errorMessage' => 'The specified Image is importing.', 'description' => ''], ['errorCode' => 'ImageIsExporting', 'errorMessage' => 'The specified image is currently being exported. You can use the DescribeTasks API to check the status of related tasks and cancel them if needed.', 'description' => 'The specified image is being exported. You can use the DescribeTasks API to check the task status and cancel the task if necessary.'], ['errorCode' => 'ImageIsPublic', 'errorMessage' => 'You can not delete public image, please modify it to private.', 'description' => 'The specified image is a community image and cannot be deleted. You must call the ModifyImageSharePermission operation to unpublish the image before you can delete the image.'], ], [ ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified ImageId does not exist.', 'description' => 'The specified image does not exist in this account. Check whether the image ID is correct.'], ], ], 'title' => 'DeleteImage', 'summary' => 'Calls the DeleteImage operation. You can specify the ImageId and Force parameters to delete a custom image.', 'description' => 'For scenarios where deleting a custom image is not allowed and precautions after an image is deleted, see [Delete a custom image](~~25466~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-04-29T06:23:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-18T07:35:09.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-27T06:39:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteImage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteImage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/{#imageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DeleteImageComponent' => [ 'summary' => 'Deletes an image component by specifying the RegionId and ImageComponentId parameters.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29265', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageComponentId', 'in' => 'query', 'schema' => ['description' => 'The ID of the image component to delete.', 'type' => 'string', 'required' => true, 'example' => 'ic-bp67acfmxazb4p****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidImageComponent.InUse', 'errorMessage' => '%s.', 'description' => 'The current component is being used by the image pipeline and cannot be deleted.'], ], [ ['errorCode' => 'InvalidImageComponent.NotFound', 'errorMessage' => '%s', 'description' => 'The specified image component does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Delete an image component', 'description' => '- Only custom image components that you have created can be deleted.'."\n" .'- Before deleting a component, make sure that the component is not used in any template. Otherwise, the deletion fails.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-10-10T06:14:45.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-08-30T06:08:52.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteImageComponent'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteImageComponent', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImageComponent', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagecomponent/{#imagecomponentId}'], ], ], ], ], ], 'DeleteImagePipeline' => [ 'summary' => 'Deletes an image template.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29266', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImagePipelineId', 'in' => 'query', 'schema' => ['description' => 'The image template ID.', 'type' => 'string', 'required' => true, 'example' => 'ip-2ze5tsl5bp6nf2b3****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidImagePipeline.HasRunningExecution', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'InvalidImagePipeline.NotFound', 'errorMessage' => '%s', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'title' => 'Delete an image template', 'description' => 'If a build task is currently running, you cannot directly delete the template. Wait until the build task reaches a desired state: SUCCESS, FAILED, TEST_FAILED, PARTITION_SUCCESS, or CANCELLED. You can call [DescribeImagePipelineExecutions](~~25609~~) to query the details of build tasks.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2022-08-30T06:08:52.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteImagePipeline'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteImagePipeline', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipeline', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipeline/{#imagepipelineId}'], ], ], ], ], ], 'DeleteInstance' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'paid', 'abilityTreeCode' => '28872', 'abilityTreeNodes' => ['FEATUREecs0ILANB'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1g6zv0ce8oghu7****', 'title' => ''], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcefully release a **running** (`Running`) instance.'."\n" ."\n" .'- true: Forcefully releases a **running** (`Running`) instance.'."\n" .'- false: Releases the instance in the normal way. The instance must be in the **Stopped** (`Stopped`) state.'."\n" ."\n" .'Default value: false.'."\n" .'>A forceful release is equivalent to a power-off. Temporary data in the instance memory and storage is erased and cannot be recovered.>.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'ForceStop', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to use the forced shutdown policy when releasing a **running** (`Running`) instance. This parameter takes effect only when `Force=true`. Valid values:'."\n" ."\n" .'- true: Forcefully shuts down and releases the instance. This is equivalent to a typical power-off operation. The instance directly enters the resource release process.'."\n" .'>A forceful release is equivalent to a power-off. Temporary data in the instance memory and storage is erased and cannot be recovered.>'."\n" .'- false: Before the instance is released, the system preferentially performs a standard shutdown process. This mode causes the instance release to take several minutes. You can configure service draining actions during the operating system shutdown to reduce noise in your business systems.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'default' => 'true', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'TerminateSubscription', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release an expired subscription instance.'."\n" ."\n" .'- true: Releases the instance.'."\n" .'- false: Does not release the instance.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run. Valid values:'."\n" ."\n" .'- true: Sends a check request without releasing the instance. The system checks whether the required parameters are specified, the request format is valid, business requirements are met, and ECS resources are sufficient. If the check fails, the corresponding error is returned. If the check succeeds, the error code `DryRunOperation` is returned.'."\n" .'- false (default): Sends a normal request. After the request passes the check, the instance is directly deleted.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'DependencyViolation.SLBConfiguring', 'errorMessage' => 'Specified operation is denied as your instance is using by another product.', 'description' => ''], ['errorCode' => 'DependencyViolation.RouteEntry', 'errorMessage' => 'Specified instance is used by route entry.', 'description' => 'Custom route entries exist in the VPC and the VPC cannot be deleted.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The input parameter InstanceId is invalid.', 'description' => 'The specified InstanceId parameter is invalid.'], ], 403 => [ ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The specified operation is denied as your instance is locked for security reasons.', 'description' => ''], ['errorCode' => 'ChargeTypeViolation', 'errorMessage' => 'The operation is not permitted due to charge type of the instance.', 'description' => ''], ['errorCode' => 'IncorrectInstanceStatus.Initializing', 'errorMessage' => 'The specified instance status does not support this operation.', 'description' => 'The specified instance cannot be released at this time. Try again later.'], ['errorCode' => 'InvalidOperation.DeletionProtection', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Disable release protection for the instance first.'], ['errorCode' => 'InvalidOperation.EniLinked', 'errorMessage' => '%s', 'description' => 'The operation is invalid because the current ENI of the instance is associated with other ENIs. You must disassociate the ENI from the other ENIs before you can unbind the ENI from the instance.'], ['errorCode' => 'OperationDenied.SystemInstanceNotSupport', 'errorMessage' => 'The system instance does not support the %s operation because %s.', 'description' => ''], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'Delete an instance', 'summary' => 'Deletes or releases a specified ECS instance.', 'description' => '>'."\n" .'After an instance is released, all physical resources used by the instance are reclaimed. All related data is permanently lost and cannot be recovered.'."\n" .'>.'."\n" ."\n" .'- Manual snapshots of disks are retained and continue to incur charges. You can delete them by calling [DeleteSnapshot](~~2679824~~).'."\n" .'- Whether disks attached to the instance and automatic snapshots are released depends on the parameter settings specified when they were created. Before you release an instance, you can call [DescribeDisks](~~2679767~~) and [ModifyDiskAttribute](~~2679770~~) to query and modify the related parameter settings:'."\n" .' - If `DeleteWithInstance=false`, the disk is converted to a pay-as-you-go disk and retained. Otherwise, the disk is released along with the instance.'."\n" .' - If `DeleteAutoSnapshot=false`, automatic snapshots are retained. Otherwise, they are released along with the instance.'."\n" .'- Elastic IP addresses (EIPs) are not released along with the instance. You can call [ReleaseEipAddress](~~448702~~) to release them.'."\n" .'>For a security-locked instance, even if the `DeleteWithInstance` parameter of a disk is set to `false`, this attribute is ignored and the disk is released along with the instance.>.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-04-09T07:09:08.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-20T07:00:52.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-02-01T07:28:41.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-07-17T10:03:56.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteInstance'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteInstance', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DeleteInstances' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'paid', 'abilityTreeCode' => '28873', 'abilityTreeNodes' => ['FEATUREecs0ILANB'], ], 'parameters' => [ [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run, without performing the actual request.'."\n" ."\n" .'- true: sends a check request without querying resource status. The check items include whether your AccessKey pair is valid, whether Resource Access Management (RAM) user authorization is granted, and whether the required parameters are specified. If the check fails, the corresponding error is returned. If the check succeeds, the DRYRUN.SUCCESS error code is returned.'."\n" .'- false: sends a Normal request. After the check succeeds, a 2xx HTTP status code is returned and the resource status is queried directly.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcefully release an instance that is in the **Running** (`Running`) state.'."\n" ."\n" .'- true: forcefully releases ECS instance that is in the **Running** (`Running`) state.'."\n" .'- false: releases ECS instance only when it is in the **Stopped** (`Stopped`) state.'."\n" ."\n" .'Default value: false.'."\n" .'>Forceful release is equivalent to powering off ECS instance. All in-memory data and temporary data in the storage are erased and cannot be recovered.>.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'ForceStop', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcefully shut down the instance before release when the instance is in the **Running** (`Running`) state. This parameter takes effect only when `Force=true`. Valid values:'."\n" ."\n" .'- true: forcefully shuts down and releases the instance. This is equivalent to a power-off operation. The instance directly enters the resource release process.'."\n" .'>Forceful release is equivalent to powering off the instance. All in-memory data and temporary data in the storage are erased and cannot be recovered.>'."\n" .'- false: performs a standard shutdown before releasing the instance. This mode causes the release process to take several minutes. You can configure service draining actions during the operating system shutdown to reduce noise in your business systems.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'default' => 'true', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'TerminateSubscription', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release an expired subscription instance.'."\n" ."\n" .'- true: releases the instance.'."\n" .'- false: does not release the instance.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instances. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance ID array. Array length: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1g6zv0ce8oghu7****', 'title' => ''], 'required' => true, 'example' => 'i-bp1g6zv0ce8oghu7****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7B7813C6-57BF-41XX-B12B-F172F65A6046', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.CrossRegionNotSupport', 'errorMessage' => 'Instances of multiple regions not support.', 'description' => ''], ['errorCode' => 'DRYRUN.SUCCESS', 'errorMessage' => 'This request is a dryrun request with successful result.', 'description' => 'The request is checked and determined as valid.'], ['errorCode' => 'DependencyViolation.SLBConfiguring', 'errorMessage' => 'Specified operation is denied as your instance is using by another product.', 'description' => ''], ['errorCode' => 'DependencyViolation.RouteEntry', 'errorMessage' => 'Specified instance is used by route entry.', 'description' => 'Custom route entries exist in the VPC and the VPC cannot be deleted.'], ], 403 => [ ['errorCode' => 'InvalidParameter.TooManyInstanceIds', 'errorMessage' => 'Instance ids cannot be more than 100.', 'description' => 'InstanceIds cannot be more than 100.'], ['errorCode' => 'InvalidInstanceIds.ValueNotSupported', 'errorMessage' => 'The specified instanceIds is not valid.', 'description' => ''], ['errorCode' => 'InvalidOperation.DeletionProtection', 'errorMessage' => 'The operation is not allowed due to deletion protection.', 'description' => 'Instance has release protection turned on, so this operation cannot be performed'], ['errorCode' => 'ChargeTypeViolation', 'errorMessage' => '%s', 'description' => 'The payment type conflicts. This operation is not supported for resources of the payment type.'], ['errorCode' => 'IncorrectInstanceStatus.Initializing', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.EniLinked', 'errorMessage' => '%s', 'description' => 'The operation is invalid because the current ENI of the instance is associated with other ENIs. You must disassociate the ENI from the other ENIs before you can unbind the ENI from the instance.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => '%s', 'description' => 'The instance is in a state that does not support the current operation.'], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The specified operation is denied as your instance is locked for security reasons.', 'description' => ''], ['errorCode' => 'OperationDenied.SystemInstanceNotSupport', 'errorMessage' => 'The system instance does not support the %s operation because %s.', 'description' => ''], ], [ ['errorCode' => 'InvalidInstanceIds.NotFound', 'errorMessage' => 'The specified InstanceIds does not exist.', 'description' => 'The specified InstanceId parameter does not exist. You can call the DescribeInstances operation to query the state of the instance.'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => '%s', 'description' => ''], ], 500 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameters.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'Batch delete instances', 'summary' => 'Deletes or releases multiple pay-as-you-go instances or expired subscription instances in a batch. You can use parameters to specify whether to release or convert cloud disks to pay-as-you-go disks and retain them.', 'description' => '>'."\n" .'After an instance is released, all physical resources used by the instance are reclaimed. All related data is permanently lost and cannot be recovered.'."\n" .'>.'."\n" ."\n" .'- Manual snapshots of cloud disks are retained and continue to incur charges. You can call [DeleteSnapshot](~~2679824~~) to delete them.'."\n" .'- Whether cloud disks and automatic snapshots attached to the instance are released depends on the parameter settings specified when they were created. Before you release an instance, you can call [DescribeDisks](~~2679767~~) and [ModifyDiskAttribute](~~2679770~~) to query and modify the related parameter settings:'."\n" .' - If `DeleteWithInstance=false`, the cloud disk is converted to a pay-as-you-go cloud disk and retained. Otherwise, the cloud disk is released along with the instance.'."\n" .' - If `DeleteAutoSnapshot=false`, the automatic snapshots are retained. Otherwise, the automatic snapshots are released along with the instance.'."\n" .'- Elastic IP addresses (EIPs) are not released along with the instance. You can call [ReleaseEipAddress](~~448702~~) to release them.'."\n" .'>For security-locked instances, even if the `DeleteWithInstance` parameter of a cloud disk is set to `false`, this attribute is ignored and the cloud disk is released along with the instance.>.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-04-09T07:09:08.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-03-20T07:00:52.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"7B7813C6-57BF-41XX-B12B-F172F65A6046\\"\\n}","type":"json"}]', ], 'DeleteKeyPairs' => [ 'summary' => 'Call DeleteKeyPairs to delete one or more SSH key pairs.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28874', 'abilityTreeNodes' => ['FEATUREecsNMEQ4B'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region where the SSH key pairs reside. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'KeyPairNames', 'in' => 'query', 'schema' => ['description' => 'The names of SSH key pairs. The value can be a JSON array that consists of up to 100 SSH key pair names. Separate multiple names with commas (,).'."\n" ."\n" .'>Before you delete SSH key pairs, you can call [DescribeKeyPairs](~~51773~~) to query existing key pairs.', 'type' => 'string', 'required' => true, 'example' => '["TestKeyPairName-1", "TestKeyPairName-2", … "TestKeyPairName-100"]', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter "KeyPairNames" that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidKeyPairNames.ValueNotSupported', 'errorMessage' => 'The specified parameter "KeyPairNames" is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.KeypairAlreadyAttachedInstance', 'errorMessage' => 'The specified parameter "KeyPairNames" attached to instances can not be deleted.', 'description' => ''], ], 403 => [ ['errorCode' => 'InstanceKeyPairLimitExceeded', 'errorMessage' => 'Exceeding the allowed amount of instance which will be deleted.', 'description' => 'The number of specified key pairs exceeds the upper limit.'], ], ], 'title' => 'Delete key pairs in batches', 'description' => 'After you delete an SSH key pair, take note of the following items:'."\n" ."\n" .'- You cannot query the SSH key pair by calling [DescribeKeyPairs](~~51773~~).'."\n" .'- If an ECS instance is bound to the SSH key pair, the SSH key pair cannot be deleted.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteKeyPairs'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteKeyPairs', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'KeyPair', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:keypair/{#keypairName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DeleteLaunchTemplate' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '28875', 'abilityTreeNodes' => ['FEATUREecsYZ506D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the launch template. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'LaunchTemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the launch template. For more information, see [DescribeLaunchTemplates](~~73759~~).'."\n" ."\n" .'You must specify `LaunchTemplateId` or `LaunchTemplateName` to determine the launch template.', 'type' => 'string', 'required' => false, 'example' => 'lt-bp1apo0bbbkuy0rj****', 'title' => ''], ], [ 'name' => 'LaunchTemplateName', 'in' => 'query', 'schema' => ['description' => 'The name of the launch template.'."\n" ."\n" .'You must specify `LaunchTemplateId` or `LaunchTemplateName` to determine the launch template.', 'type' => 'string', 'required' => false, 'example' => 'testLaunchTemplateName', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'LaunchTemplateId' => ['description' => 'The ID of the launch template. For more information, see [DescribeLaunchTemplates](~~73759~~).'."\n" ."\n" .'When you use a launch template to create an instance, you must specify `LaunchTemplateId` or `LaunchTemplateName` to determine the launch template.', 'type' => 'string', 'example' => 'lt-bp1apo0bbbkuy0rj****', 'title' => ''], 'LaunchTemplateVersionNumbers' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'versionNumbers' => [ 'description' => 'The collection of deleted launch template version numbers.', 'type' => 'array', 'items' => ['description' => 'The collection of deleted launch template version numbers.', 'type' => 'integer', 'format' => 'int64', 'example' => '[3,2,1]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegion.NotExist', 'errorMessage' => '%s', 'description' => 'The specified region does not exist.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'InnerServiceFailed', 'errorMessage' => '%s', 'description' => 'An internal service cannot be called.'], ], ], 'title' => 'Delete a launch template', 'summary' => 'Deletes a launch template in a specified region by specifying the LaunchTemplateId or LaunchTemplateName parameter.', 'description' => 'Take note of the following items:'."\n" .'- After you delete a launch template, ECS instances that were created by using the launch template are not affected.'."\n" ."\n" .'- After you delete a launch template, all versions of the template are also deleted and cannot be recovered. If you want to delete only a specific version of a launch template, see [DeleteLaunchTemplateVersion](~~2679735~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-11-06T07:25:11.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-03-10T06:37:38.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteLaunchTemplate'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteLaunchTemplate', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/{#launchtemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"LaunchTemplateId\\": \\"lt-bp1apo0bbbkuy0rj****\\",\\n \\"LaunchTemplateVersionNumbers\\": {\\n \\"versionNumbers\\": [\\n 0\\n ]\\n }\\n}","type":"json"}]', ], 'DeleteLaunchTemplateVersion' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '65903', 'abilityTreeNodes' => ['FEATUREecsV7EC6D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the launch template. You can call [DescribeRegions](~~25609~~) to query the most recent region list of Alibaba Cloud.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DeleteVersion', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The version numbers of the launch template to delete.', 'type' => 'array', 'items' => ['description' => 'The version number of the launch template. Valid values of N: 1 to 29. You can call [DescribeLaunchTemplateVersions](~~73761~~) to query launch template version numbers.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2', 'title' => ''], 'required' => true, 'example' => '2', 'maxItems' => 1000, 'title' => '', ], ], [ 'name' => 'LaunchTemplateId', 'in' => 'query', 'schema' => ['description' => 'The ID of the launch template to delete. For more information, see [DescribeLaunchTemplates](~~73759~~).', 'type' => 'string', 'required' => false, 'example' => 'lt-bp1apo0bbbkuy0rj****', 'title' => ''], ], [ 'name' => 'LaunchTemplateName', 'in' => 'query', 'schema' => ['description' => 'The name of the launch template.', 'type' => 'string', 'required' => false, 'example' => 'testLaunchTemplateName', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'LaunchTemplateVersions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LaunchTemplateVersion' => [ 'description' => 'The deleted launch template versions.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LaunchTemplateId' => ['description' => 'The ID of the launch template.', 'type' => 'string', 'example' => 'lt-bp1apo0bbbkuy0rj****', 'title' => ''], 'LaunchTemplateVersionNumber' => ['description' => 'The version number of the launch template.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegion.NotExist', 'errorMessage' => '%s', 'description' => 'The specified region does not exist.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidOperation.DeleteDefaultVersion', 'errorMessage' => '%s', 'description' => 'The operation is invalid. The default version cannot be deleted.'], ['errorCode' => 'InnerServiceFailed', 'errorMessage' => '%s', 'description' => 'An internal service cannot be called.'], ], ], 'title' => 'Delete launch template versions', 'summary' => 'Deletes one or more versions of a specified launch template by specifying parameters such as LaunchTemplateId and DeleteVersion.', 'description' => 'When you call this operation, take note of the following items:'."\n" .'- The default version cannot be deleted. You must delete the entire launch template to remove the default version.'."\n" ."\n" .'- If the version you want to delete is the default version, you can call [ModifyLaunchTemplateDefaultVersion](~~2679734~~) or switch the default version in the **Launch Template** console, and then perform the delete operation.'."\n" ."\n" .'- Deleting a version does not affect instances that were already created from that version.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-03-10T06:37:38.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteLaunchTemplateVersion'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteLaunchTemplateVersion', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/{#launchtemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"LaunchTemplateVersions\\": {\\n \\"LaunchTemplateVersion\\": [\\n {\\n \\"LaunchTemplateId\\": \\"lt-bp1apo0bbbkuy0rj****\\",\\n \\"LaunchTemplateVersionNumber\\": 2\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DeleteNatGateway' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the NAT gateway is deployed.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'NatGatewayId', 'in' => 'query', 'schema' => ['description' => 'The ID of the NAT gateway that you want to delete.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'DependencyViolation.BandwidthPackages', 'errorMessage' => 'There are BandwidthPackages on specified NatGateway not deleted.', 'description' => 'NAT service plans are associated with the NAT gateway. Disassociate the NAT service plans from the NAT gateway and try again.'], ['errorCode' => 'DependencyViolation.EIPS', 'errorMessage' => 'There are Eips on specified NatGateway, please unbind it first.', 'description' => ''], ['errorCode' => 'Forbidden.PrePaidNatGateway', 'errorMessage' => 'The specified NatGateway is PrePaid.', 'description' => ''], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The operation is too frequent, TaskConflict.', 'description' => ''], ], 404 => [ ['errorCode' => 'INSTANCE_NOT_EXISTS', 'errorMessage' => 'Instance not exists.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidNatGatewayId.NotFound', 'errorMessage' => 'The specified NatGatewayId does not exist in our records.', 'description' => 'The specified NatGatewayId parameter does not exist.'], ['errorCode' => 'IncorrectStatus.natgw', 'errorMessage' => 'NatGateway status is invalid.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteNatGateway'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteNatGateway'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteNatGateway', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NatGateway', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:natgateway/{#natgatewayid}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteNatGateway', 'summary' => 'DeleteNatGateway', ], 'DeleteNetworkInterface' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29267', 'abilityTreeNodes' => ['FEATUREecsT5S9N2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the ENI. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the ENI. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the ENI.', 'type' => 'string', 'required' => true, 'example' => 'eni-bp14v2sdd3v8htln****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'F3CD6886-D8D0-4FEE-B93E-1B73239673DE', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidOperation.HasSlaveEniBonded', 'errorMessage' => '%s', 'description' => 'This network card also has a SLAVE network card bound to it.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEcsState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.DetachPrimaryEniNotAllowed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidParams.EniId', 'errorMessage' => '%s', 'description' => 'The specified EniId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'MaxEniCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be managed has been reached.'], ['errorCode' => 'EniPerInstanceLimitExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be attached to the specified instance has been reached.'], ['errorCode' => 'InvalidOperation.AvailabilityZoneMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.VpcMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check whether the VPC in the operation corresponds to other parameters.'], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSecurityGroupId.NotVpc', 'errorMessage' => '%s', 'description' => 'The specified SecurityGroupId parameter is invalid and the network type of the security group is not VPC.'], ['errorCode' => 'InvalidOperation.InvalidEniType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified ENI ID does not exist.'], ['errorCode' => 'InvalidOperation.EniServiceManaged', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ], [ ['errorCode' => 'InvalidEcsId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance ID does not exist.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified security group ID does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ['errorCode' => 'InvalidSecurityGroupId.EniMustHaveSecurityGroup', 'errorMessage' => 'The specified network card does not have an associated security group.', 'description' => 'The specified NIC is not associated with a security group.'], ], ], 'staticInfo' => ['returnType' => 'asynchronous', 'callback' => 'Ecs::2014-05-26::DescribeNetworkInterfaces', 'callbackInterval' => 2000, 'maxCallbackTimes' => 30], 'title' => 'DeleteNetworkInterface', 'summary' => 'Deletes an elastic network interface (ENI) in a region. DeleteNetworkInterface is an asynchronous operation.', 'description' => 'Take note of the following items:'."\n" ."\n" .'- The ENI to be deleted must be in the Available state.'."\n" ."\n" .'- If the ENI to be deleted is attached to an Elastic Compute Service (ECS) instance, you must detach the ENI from the instance before you can delete the ENI. To detach the ENI, you can call the [DetachNetworkInterface](~~58514~~) operation.'."\n" ."\n" .'- After an ENI is deleted, the following situations occur:'."\n" ."\n" .' - All private IP addresses (including primary and secondary private IP addresses) of the ENI are automatically released.'."\n" ."\n" .' - The ENI is automatically removed from all security groups.'."\n" ."\n" .'- The DeleteNetworkInterface operation is an asynchronous operation. After this operation is called to delete an ENI, you can check the status or events of the ENI to determine whether the ENI is deleted. The following figure shows the transitions between the states of the ENI.'."\n" .' ![](https://static-aliyun-doc.oss-cn-hangzhou.aliyuncs.com/file-manage-files/en-US/20230223/krcd/DeleteNetworkInterface.png)'."\n" ."\n" .' - If the ENI is in the Deleting state, the ENI deletion request is sent and the ENI is being deleted.'."\n" ."\n" .' - If the ENI is not found, the ENI is deleted.'."\n" ."\n" .' - If the ENI is stuck in the Deleting state, the ENI fails to be deleted. You can re-initiate the request to delete the ENI.'."\n" ."\n" .'For information about examples on how to call the DeleteNetworkInterface operation, see [Delete an ENI](~~471553~~).', 'changeSet' => [ ['createdAt' => '2024-09-12T11:03:31.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-10-28T09:01:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteNetworkInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteNetworkInterface', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3CD6886-D8D0-4FEE-B93E-1B73239673DE\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'DeleteNetworkInterfacePermission' => [ 'summary' => 'Deletes a permission for an elastic network interface.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29268', 'abilityTreeNodes' => ['FEATUREecsPW8UD1'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'NetworkInterfacePermissionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['type' => 'boolean', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'NotBelongUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage the specified resource.'], ['errorCode' => 'InvalidOperation.PermissionExisted', 'errorMessage' => '%s', 'description' => 'This NetworkInterfacePermission already exists.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ], [ ['errorCode' => 'InvalidOperation.PermissionNotExisted', 'errorMessage' => '%s', 'description' => 'The operation is invalid. First apply for permissions to perform the operation.'], ['errorCode' => 'InvalidEniPermissionId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified NetworkInterfaceId parameter does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Ecs::2014-05-26::DeleteNetworkInterface'], 'returnType' => 'synchronous', ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteNetworkInterfacePermission'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteNetworkInterfacePermission', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteNetworkInterfacePermission', 'translator' => 'machine', ], 'DeletePhysicalConnection' => [ 'summary' => 'Deletes a physical connection.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the physical connection.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'PhysicalConnectionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the physical connection.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated, case-sensitive token used to ensure request idempotency. This token must be unique across all requests and contain a maximum of 64 ASCII characters.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Forbidden.NotAllowedInState', 'errorMessage' => 'The request does not allow in this state.', 'description' => ''], ['errorCode' => 'InvalidPhysicalConnectionId.NotMatched', 'errorMessage' => 'instance id not matched.', 'description' => 'The specified Express Connect circuit ID is invalid.'], ['errorCode' => 'Forbidden.VBRExists', 'errorMessage' => 'physical connection owner\'s vbr still exists.', 'description' => ''], ['errorCode' => 'Forbidden.AssociateToVBR', 'errorMessage' => 'The physical connection still associate to VBR.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidPhysicalConnectionId.NotFound', 'errorMessage' => 'The PhysicalConnectionId provided does not exist in our records.', 'description' => 'The specified Express Connect circuit does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeletePhysicalConnection'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeletePhysicalConnection'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeletePhysicalConnection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PhysicalConnection', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:physicalconnection/{#PhysicalConnectionId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeletePhysicalConnection', ], 'DeletePlanMaintenanceWindow' => [ 'path' => '', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '258862', 'abilityTreeNodes' => ['FEATUREecsET2ML7'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'PlanWindowId', 'in' => 'query', 'schema' => ['description' => 'The ID of the maintenance window to delete.', 'type' => 'string', 'required' => true, 'example' => 'pw-bp12kkvnebe7hksqnx9w', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call [DescribeRegions](~~25609~~) to retrieve the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response data.', 'title' => 'Schema of Response ', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request ', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F3CD6886-D8D0-4FEE-B93E-1B732396****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'AccessForbidden', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'You are not authorized to use the specified resource.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Internal error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Delete O&M window ', 'summary' => 'Deletes a maintenance window.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeletePlanMaintenanceWindow', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3CD6886-D8D0-4FEE-B93E-1B732396****\\"\\n}","type":"json"}]', ], 'DeletePortRangeList' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '262568', 'abilityTreeNodes' => ['FEATUREecs0ZAT7E'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PortRangeListId', 'in' => 'query', 'schema' => ['description' => 'The ID of the port list.'."\n" ."\n" .'> If the port list is associated with other resources, you cannot delete the port list. You must disassociate the port list from the resources and then delete the port list.', 'type' => 'string', 'required' => true, 'example' => 'prl-2ze9743****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidOperation.Conflict', 'errorMessage' => 'The port range list has conflict task.', 'description' => 'The port list has conflicting tasks.'], ['errorCode' => 'InvalidPortRangeListId.AssociationExist', 'errorMessage' => 'The specified port range list has association resources.', 'description' => 'The associated resource exists in the port list.'], ['errorCode' => 'InvalidPortRangeListId.NotFound', 'errorMessage' => 'The specified port range list was not found.', 'description' => 'The specified port list was not found.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'eventInfo' => [ 'enable' => true, 'eventNames' => [], ], 'title' => 'DeletePortRangeList', 'summary' => 'Deletes a port list and all entries in the port list.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeletePortRangeList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PortRangeList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:portrangelist/{#portRangeListId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'DeletePrefixList' => [ 'summary' => 'Calls DeletePrefixList to delete a specified prefix list and all entries in the prefix list.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29269', 'abilityTreeNodes' => ['FEATUREecsKTKFUC'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'PrefixListId', 'in' => 'query', 'schema' => ['description' => 'The ID of the prefix list.', 'type' => 'string', 'required' => true, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '38793DB8-A4B2-4AEC-BFD3-111234E9188D', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'NotAllowed.AssociationExist', 'errorMessage' => 'The specified prefix list has associated resources.', 'description' => 'The prefix list is associated with resources.'], ], 404 => [ ['errorCode' => 'InvalidPrefixListId.NotFound', 'errorMessage' => 'The specified prefix list was not found.', 'description' => 'The prefix list does not exist.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"38793DB8-A4B2-4AEC-BFD3-111234E9188D\\"\\n}","type":"json"}]', 'title' => 'Delete a prefix list', 'description' => 'If a prefix list is associated with other resources, you cannot directly delete it. Dissociate the prefix list from the other resources first, and then delete it. You can call [DescribePrefixListAssociations](~~204724~~) to query the resources associated with a specified prefix list.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-11-13T03:17:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeletePrefixList'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeletePrefixList', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PrefixList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:prefixlist/{#PrefixListId}'], ], ], ], ], ], 'DeleteRouteEntry' => [ 'summary' => 'DeleteRouteEntry', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'RouteTableId', 'in' => 'query', 'schema' => ['description' => 'The ID of the route table that contains the route entry.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'DestinationCidrBlock', 'in' => 'query', 'schema' => ['description' => 'The destination CIDR block of the route entry.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'NextHopId', 'in' => 'query', 'schema' => ['description' => 'The ID of the next hop.'."\n" ."\n" .'> `NextHopId` and `NextHopList` are mutually exclusive. You can specify one but not both.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'NextHopList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'maxItems' => 4, 'description' => 'A list of next hops for an ECMP route.'."\n" ."\n" .'> `NextHopId` and `NextHopList` are mutually exclusive. You can specify one but not both.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'NextHopId' => ['description' => 'The ID of a next hop in the ECMP route.', 'type' => 'string', 'title' => '', 'example' => ''], 'NextHopType' => ['description' => 'The type of a next hop in the ECMP route. Set the value to `Instance`.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'Miss mandatory parameter.', 'description' => 'Required parameters must be specified.'], ['errorCode' => 'IncorrcetRouteEntryStatus', 'errorMessage' => 'Some route entry status blocked this operation.', 'description' => 'The route entry is in an state that does not support current operation.'], ['errorCode' => 'InvalidCidrBlock.Malformed', 'errorMessage' => 'Specified CIDR block is not valid.', 'description' => 'The specified CIDR block is invalid.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'Specified operation is denied as route entry type is system.', 'description' => 'The specified route is a system route and does not support the operation.'], ['errorCode' => 'InvalidRouteEntry.NotFound', 'errorMessage' => 'Route entry not exists.', 'description' => ''], ['errorCode' => 'InvalidVRouter.NotFound', 'errorMessage' => 'vRouter not exists.', 'description' => ''], ['errorCode' => 'IncorrectRouteEntryStatus', 'errorMessage' => 'Some route entry status blocked this operation.', 'description' => 'The operation is not supported while the route table contains routes that are in the Pending or Modifying state.'], ['errorCode' => 'Forbbiden', 'errorMessage' => 'Specified RouteEntry cannot allowed delete by openApi.', 'description' => ''], ['errorCode' => 'InvalidNextHop', 'errorMessage' => 'Specified nexthop and nexthop list cannot both null.', 'description' => 'The next hop and next hop list cannot be left empty.'], ['errorCode' => 'InvalidRouteEntry', 'errorMessage' => 'Specified routeEntry not exist.', 'description' => ''], ['errorCode' => 'Forbidden.VRouterNotFound', 'errorMessage' => 'pecified virtual switch is not found during access authentication.', 'description' => ''], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The operation is too frequent, TaskConflict.', 'description' => ''], ['errorCode' => 'IncorrectVpcStatus', 'errorMessage' => 'Current VPC status does not support this operation.', 'description' => 'The VPC is in a state that does not support the current operation.'], ['errorCode' => 'InvalidVpnInstanceId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidNextHopList.Size', 'errorMessage' => 'Nexthop list size should be between 2 and 16', 'description' => ''], ['errorCode' => 'ParamExclusive.NextHopIdAndList', 'errorMessage' => 'NextHopId and NextHopList cannot both be not null.', 'description' => ''], ['errorCode' => 'OperationFailed.DeleteMultiScopeEntry', 'errorMessage' => 'Multi or ecmp scope must delete with force.', 'description' => ''], ['errorCode' => 'OperationFailed.DistibuteLock', 'errorMessage' => 'Distibute lock fail.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRouteTableId.NotFound', 'errorMessage' => 'Specified route table does not exist.', 'description' => 'The specified virtual route table does not exist.'], ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'Specified value of VpcId is not found in our record.', 'description' => 'The specified VPC ID does not exist.'], ], 500 => [ ['errorCode' => 'Vpc.Error', 'errorMessage' => 'error code 500,Internal server error.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteRouteEntry'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteRouteEntry'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteRouteEntry', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouteTable', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routetable/{#RouteTableId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteRouteEntry', ], 'DeleteRouterInterface' => [ 'summary' => 'DeleteRouterInterface', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouterInterfaceId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorrectStatus', 'errorMessage' => 'This openeration would be allowed only when status of this RouterInterface is Idle/Inactive.', 'description' => 'The operation can be performed only when the router interface is in the Available or Inactive state.'], ['errorCode' => 'DependencyViolation.RouterInterfaceReferedByRouteEntry', 'errorMessage' => 'RouterInterface cannot be deleted when it is refered by a route table entry as next hop.', 'description' => 'The router interface is referenced as a next hop by a route entry and cannot be deleted. Delete the route entry before you can delete the router interface.'], ['errorCode' => 'IllegalParam.InstanceOwner', 'errorMessage' => 'The router instance owener error.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => ' ', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ], 500 => [ ['errorCode' => 'InvalidRouterInterfaceChargeType.Malformed', 'errorMessage' => 'The prepaid routerinterface can not delete.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteRouterInterface'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteRouterInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteRouterInterface', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouterInterface', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routerinterface/{#RouterInterfaceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteRouterInterface', ], 'DeleteSecurityGroup' => [ 'summary' => 'Deletes a security group and all security group rules in the security group.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28886', 'abilityTreeNodes' => ['FEATUREecsZ4BDDO'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the security group. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The security group ID. You can call the [DescribeSecurityGroups](~~25556~~) operation to query the security group ID.', 'type' => 'string', 'required' => true, 'example' => 'sg-bp1fg655nh68xyz9****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The parameter "RegionId" should not be null.', 'description' => ''], ], [ ['errorCode' => 'InvalidOperation.SecurityGroupNotAuthorized', 'errorMessage' => 'The specified security group is not authorized to operate.', 'description' => 'You do not have permission to operate the current security group.'], ], 403 => [ ['errorCode' => 'DependencyViolation', 'errorMessage' => 'There is still instance(s) in the specified security group.', 'description' => ''], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ], [ ['errorCode' => 'InvalidSecurityGroup.NotFound', 'errorMessage' => 'The specified security group is not found.', 'description' => 'The specified security group could not be found'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'DeleteSecurityGroup', 'description' => '- Make sure that no Elastic Compute Service (ECS) instances exist in the security group. You can query instances by calling the [DescribeInstances](~~2679689~~) operation.'."\n" ."\n" .'- Make sure that no elastic network interfaces (ENIs) exist in the security group. You can query ENIs by calling the [DescribeNetworkInterfaces](~~2679884~~) operation.'."\n" ."\n" .'- Make sure that the security group that you want to delete is not referenced by rules of other security groups. You can query the associations by calling the [DescribeSecurityGroupReferences](~~57320~~) operation.'."\n" ."\n" .'- If the `InvalidOperation.DeletionProtection` error code is returned when you call the DeleteSecurityGroup operation to delete a security group, the deletion protection feature is enabled for the security group. When you create a Container Service for Kubernetes (ACK) cluster, the deletion protection feature is enabled for an associated security group to prevent accidental deletion. You cannot manually disable the deletion protection feature for the security group. The deletion protection feature can be automatically disabled only after the ACK cluster is deleted. For more information, see the [Disable deletion protection for a security group](~~353191~~) section of the "Configure and manage security groups for an ACK cluster" topic.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-01-03T08:53:56.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteSecurityGroup'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteSecurityGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'SecurityGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:securitygroup/{#securitygroupId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], 'DeleteSnapshot' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'paid', 'abilityTreeCode' => '28887', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'SnapshotId', 'in' => 'query', 'schema' => ['description' => 'The snapshot ID.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 's-bp1c0doj0taqyzzl****', 'title' => ''], ], [ 'name' => 'Force', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to force delete the snapshot that has been used to create cloud disks. Valid values:'."\n" ."\n" .'- true: force deletes the snapshot. After the snapshot is force deleted, the cloud disks created from the snapshot cannot be re-initialized.'."\n" ."\n" .'- false: does not force delete the snapshot.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter SnapshotId that is mandatory for processing this request is not supplied.', 'description' => 'The SnapshotId parameter is required.'], ['errorCode' => 'IncorrectDiskStatus.CreatingSnapshot', 'errorMessage' => 'A previous snapshot creation is in process.', 'description' => 'A previous snapshot creation task is in process. Please try again later.'], ], 403 => [ ['errorCode' => 'SnapshotCreatedImage', 'errorMessage' => 'The snapshot has been used to create user defined image(s).', 'description' => 'The snapshot has been used to create custom images and cannot be deleted. The snapshot can be deleted only after the created custom images are deleted (DeleteImage).'], ['errorCode' => 'SnapshotCreatedDisk', 'errorMessage' => 'The snapshot has been used to create disk(s).', 'description' => 'The specified snapshot has been used to create disks, and cannot be deleted when the Force parameter is left empty or set to false. If you do want to delete the snapshot, set the Force parameter to true to force delete the snapshot. The disks created from the snapshot cannot be re-initialized after the snapshot is force deleted.'], ['errorCode' => 'Operation.Conflict', 'errorMessage' => 'The operation may conflicts with others, please retry later.', 'description' => 'This operation conflicts with another operation. Try again later.'], ['errorCode' => 'InvalidOperation.RelatedSnapshotNotFinished', 'errorMessage' => 'The related standard snapshot is not finished.', 'description' => 'The snapshot associated with the current snapshot has not completed. Please try again later.'], ['errorCode' => 'InvalidOperation.DeleteSharedSnapshotUnsupported', 'errorMessage' => 'The current snapshot shares authorization with other users. Please revoke the shared authorization through resource management first.', 'description' => 'The current snapshot is used by other users with the shared authorization. Use Resource Management to revoke the authorization before performing the operation.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => 'The current operation is not supported because the resource is managed by a cloud product. Please contact the relevant cloud product to confirm the reason.', 'description' => 'This operation is not supported because the resource is managed by cloud products. Contact the corresponding cloud product to confirm the reason.'], ['errorCode' => 'InvalidOperation.SnapshotIsLocked', 'errorMessage' => 'The current operation is not supported because the snapshot is locked. Please wait for the lock to expire before retrying.', 'description' => 'The current operation is not supported because the snapshot is locked. Please wait for the lock to expire before retrying.'], ], [ ['errorCode' => 'InvalidSnapshotId.NotFound', 'errorMessage' => 'The specified snapshot is not found.', 'description' => 'The specified Snapshot does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'DeleteSnapshot', 'summary' => 'Deletes a specified snapshot. If you call this operation to delete a snapshot that is being created, the associated snapshot creation task is also canceled.', 'description' => 'Take note of the following items:'."\n" ."\n" .'- If the snapshot does not exist, the request is ignored.'."\n" ."\n" .'- If the snapshot has been used to create custom images, the snapshot cannot be deleted. You need to call the [DeleteImage](~~25537~~) operation to delete the custom images before you can delete the snapshot.'."\n" ."\n" .'- If the snapshot has been used to create disks and `Force` is not specified or is set to `false`, the snapshot cannot be deleted directly. If you want to delete the snapshot, set `Force` to true to forcibly delete the snapshot. The disks created from the snapshot cannot be re-initialized after the snapshot is forcibly deleted.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-05-23T02:45:03.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-18T07:35:08.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-12-04T05:54:57.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-10-16T02:04:36.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-11-08T02:09:27.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteSnapshot'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteSnapshot', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/{#snapshotId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DeleteSnapshotGroup' => [ 'summary' => 'Deletes snapshot-consistent groups.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '28888', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the snapshot-consistent group. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SnapshotGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the snapshot-consistent group. You can call the [DescribeSnapshotGroups](~~210940~~) operation to query the IDs of one or more snapshot-consistent groups.', 'type' => 'string', 'required' => true, 'example' => 'ssg-j6c9lpuyxo2uxxny****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '6EDE885A-FDC1-4FAE-BC44-6EACAEA6CC6E', 'title' => ''], 'OperationProgressSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'OperationProgress' => [ 'description' => 'Details about the delete operation.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ErrorMsg' => ['description' => 'The error message. This parameter is empty when the operation is successful.'."\n" ."\n" .'For information about error codes and error messages, visit the [API error center](https://error-center.aliyun.com/status/product/Ecs).', 'type' => 'string', 'example' => 'testErrorMsg', 'title' => ''], 'ErrorCode' => ['description' => 'The error code. This parameter is empty when the operation is successful.'."\n" ."\n" .'For information about error codes and error messages, visit the [API error center](https://error-center.aliyun.com/status/product/Ecs).', 'type' => 'string', 'example' => '400', 'title' => ''], 'OperationStatus' => ['description' => 'Indicates whether the operation was successful. If the operation was successful, a value of Success is returned. If the operation failed, an error code and an error message are returned.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'RelatedItemSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RelatedItem' => [ 'description' => 'Details about the resources.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the resource.', 'type' => 'string', 'example' => 'SnapshotId', 'title' => ''], 'Value' => ['description' => 'The ID of the resource.', 'type' => 'string', 'example' => 's-j6c9lpuyxo2uxxnx****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'SnapshotCreatedImage', 'errorMessage' => 'The snapshot has been used to create user defined image(s).', 'description' => 'The snapshot has been used to create custom images and cannot be deleted. The snapshot can be deleted only after the created custom images are deleted (DeleteImage).'], ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ['errorCode' => 'SnapshotCreatedDisk', 'errorMessage' => 'The snapshot that you are trying to delete is in use by one or more Disks.', 'description' => 'The snapshot that you are attempting to delete has been used to create one or more disks.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => 'The current operation is not supported because the resource is managed by a cloud product. Please contact the relevant cloud product to confirm the reason.', 'description' => 'This operation is not supported because the resource is managed by cloud products. Contact the corresponding cloud product to confirm the reason.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidSnapshotGroup.NotFound', 'errorMessage' => 'The SnapshotGroupId provided does not exist in our records.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'DeleteSnapshotGroup', 'description' => 'If a disk snapshot that is contained in a snapshot-consistent group has been used to create a custom image, the disk snapshot is retained after the snapshot-consistent group is deleted. Before you can delete the disk snapshot, you must call the [DeleteImage](~~25537~~) operation to delete the custom image. Then, you can call the [DeleteSnapshot](~~25525~~) operation to delete the disk snapshot.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-03-31T05:50:35.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-11-27T08:48:02.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-08-31T02:20:20.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-08-19T11:08:23.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-08-19T11:08:23.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteSnapshotGroup'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ecs:DeleteSnapshotGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'SnapshotGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotgroup/{#snapshotgroupId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6EDE885A-FDC1-4FAE-BC44-6EACAEA6CC6E\\",\\n \\"OperationProgressSet\\": {\\n \\"OperationProgress\\": [\\n {\\n \\"ErrorMsg\\": \\"testErrorMsg\\",\\n \\"ErrorCode\\": \\"400\\",\\n \\"OperationStatus\\": \\"Success\\",\\n \\"RelatedItemSet\\": {\\n \\"RelatedItem\\": [\\n {\\n \\"Name\\": \\"SnapshotId\\",\\n \\"Value\\": \\"s-j6c9lpuyxo2uxxnx****\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DeleteVSwitch' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28893', 'abilityTreeNodes' => ['FEATUREecsZOHB3T'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'docRequired' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorrectVSwitchStatus', 'errorMessage' => 'vpc subnet status not working.', 'description' => ''], ['errorCode' => 'DependencyViolation', 'errorMessage' => 'Specified object has dependent resources.', 'description' => 'Resources deployed in the vSwitch are not deleted and the vSwitch cannot be deleted. Delete the resources deployed in the VPC before you can delete the VPC.'], ['errorCode' => 'IncorrectRouteEntryStatus', 'errorMessage' => 'Some route entry status blocked this operation.', 'description' => 'The operation is not supported while the route table contains routes that are in the Pending or Modifying state.'], ['errorCode' => 'DependencyViolation.HaVip', 'errorMessage' => 'VSwitch cannot be deleted when there are some HaVip dependent with it.', 'description' => 'The vSwitch is associated with a HAVIP and cannot be deleted.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'Miss mandatory parameter.', 'description' => 'Required parameters must be specified.'], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The operation is too frequent, TaskConflict.', 'description' => ''], ['errorCode' => 'DependencyViolation.RouteTable', 'errorMessage' => 'VSwitch cannot be deleted when associated with route table', 'description' => ''], ['errorCode' => 'DependencyViolation.Snat', 'errorMessage' => 'VSwitch cannot be deleted when has snat routeEntry.', 'description' => ''], ['errorCode' => 'DeleteVSwitch.IncorrectStatus.cbnStatus', 'errorMessage' => 'Current CBN status does not support this operation.', 'description' => ''], ['errorCode' => 'AttrMismatching.NaclAndBindInstance', 'errorMessage' => 'The network acl and resource not in same vpc.', 'description' => ''], ['errorCode' => 'InvalidResource.NotBinding', 'errorMessage' => 'The resource has not been binded.', 'description' => ''], ['errorCode' => 'DependencyViolation.SnatEntry', 'errorMessage' => 'VSwitch cannot be deleted when snat entry exist.', 'description' => ''], ['errorCode' => 'DependencyViolation.NetworkAcl', 'errorMessage' => 'VSwitch cannot be deleted when network acl exist.', 'description' => ''], ['errorCode' => 'DependencyViolation.EnhancedNatgw', 'errorMessage' => 'VSwitch cannot be deleted when enhanced NAT gateway exists.', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'VSwitch not exist.', 'description' => 'The specified vSwitch does not exist.'], ], 404 => [ ['errorCode' => 'Forbidden.RegionNotFound', 'errorMessage' => 'Specified instance is not found during access authentication.', 'description' => ''], ['errorCode' => 'IncorrectVSwitchId', 'errorMessage' => 'Specified vSwtich instance is not found during access authentication.', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'VSwitch not exist.', 'description' => ''], ['errorCode' => 'IncorrectStatus', 'errorMessage' => 'Vswtich status not stable.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteVSwitch'], ], 'changeSet' => [ ['createdAt' => '2023-07-12T02:51:04.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteVSwitch'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteVSwitch', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VSwitch', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vswitch/{#VSwitchId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteVSwitch', 'summary' => 'Deletes a specified VSwitch.', ], 'DeleteVirtualBorderRouter' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'VbrId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidOperation.RouterInterfaceNotDeleted', 'errorMessage' => 'The specified VirutalBorderRouter still has routerInterface.', 'description' => 'The specified VBR is associated with a router interface.'], ['errorCode' => 'InvalidOperation.OperationNotAllowedInState', 'errorMessage' => 'The specified VirutalBorderRouter is in invalid state.', 'description' => 'The specified VBR state is invalid.'], ['errorCode' => 'InvalidStatus.NotAllowed', 'errorMessage' => 'Invalid virtual border router status.', 'description' => 'The VBR state is invalid.'], ['errorCode' => 'DependencyViolation.RouterInterfaceReferedByRouteEntry', 'errorMessage' => 'The specified VirutalBorderRouter is refered by routeEntry.', 'description' => ''], ['errorCode' => 'DependencyViolation.BgpGroup', 'errorMessage' => 'bgp group exists, cannot delete vbr.', 'description' => ''], ['errorCode' => 'DependencyViolation.Nqa', 'errorMessage' => 'nqa exists, cannot delete vbr.', 'description' => ''], ['errorCode' => 'DependencyViolation.BgpNetwork', 'errorMessage' => 'bgp network exists, cannot delete vbr.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden.OperationNotAllowedByUser', 'errorMessage' => 'The caller is not allowed to delete the specified VirtualBorderRouter.', 'description' => 'You are not authorized to delete the VBR.'], ['errorCode' => 'Forbidden.MultiVlanRi', 'errorMessage' => 'Multiple vlan router interfaces are found.', 'description' => ''], ['errorCode' => 'Forbidden.NoRiFound', 'errorMessage' => 'No vlan router interfaces are found.', 'description' => 'The specified VLAN router interface does not exist.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidVbrId.NotFound', 'errorMessage' => 'The specified VirutalBorderRouter does not exist in our records.', 'description' => 'The specified virtual border router does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteVirtualBorderRouter'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteVirtualBorderRouter'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteVirtualBorderRouter', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VirtualBorderRouter', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:virtualborderrouter/{#VirtualBorderRouterId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteVirtualBorderRouter', 'summary' => 'Deletes a virtual border router (VBR).', ], 'DeleteVpc' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC to delete.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the VPC is located. Call the [DescribeRegions](~~DescribeRegions~~) operation to get the latest list of regions.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'DependencyViolation.RouteTable', 'errorMessage' => 'VPC cannot be deleted when custom route table exists.', 'description' => ''], ['errorCode' => 'IncorrectVpcStatus', 'errorMessage' => 'Current VPC status does not support this operation.', 'description' => 'The VPC is in a state that does not support the current operation.'], ['errorCode' => 'DependencyViolation.RouteEntry', 'errorMessage' => 'Specified object has dependent resources', 'description' => ''], ['errorCode' => 'DependencyViolation.Instance', 'errorMessage' => 'Specified object has dependent resources', 'description' => 'Cloud service instances are present in the VPC and the VPC cannot be deleted.'], ['errorCode' => 'DependencyViolation.VSwitch', 'errorMessage' => 'Specified object has dependent resources', 'description' => 'The VPC contains vSwitches and cannot be deleted. Delete the vSwitches from the VPC and try again.'], ['errorCode' => 'DependencyViolation.SecurityGroup', 'errorMessage' => 'Specified object has dependent resources SecurityGroup.', 'description' => 'Security groups exist in the VPC and the VPC cannot be deleted. Delete the security groups and try again. The specified vSwitch is associated with security groups and cannot be deleted.'], ['errorCode' => 'DependencyViolation.RouteInterface', 'errorMessage' => 'Specified object has dependent route interface .', 'description' => 'The specified vSwitch is connected to a router interface and cannot be deleted.'], ['errorCode' => 'DependencyViolation.Tunnel', 'errorMessage' => 'Specified object has dependent tunnel.', 'description' => 'The vSwitch is associated with a data tunnel and cannot be deleted.'], ['errorCode' => 'DependencyViolation.NatGateway', 'errorMessage' => 'Specified object has dependent resources NatGateway.', 'description' => 'The VPC contains NAT gateways and cannot be deleted. Delete the NAT gateways from the VPC and try again.'], ['errorCode' => 'DependencyViolation.RouterInterface', 'errorMessage' => 'Specified object has dependent resources RouterInterface.', 'description' => ''], ['errorCode' => 'Forbidden.VpcNotFound', 'errorMessage' => 'Specified VPC can not found.', 'description' => ''], ['errorCode' => 'Forbbiden', 'errorMessage' => 'Active custom route in vpc.', 'description' => 'You must add a custom route entry to the VPC.'], ['errorCode' => 'TaskConflict', 'errorMessage' => 'The eip operate too frequent, TaskConflict.', 'description' => ''], ['errorCode' => 'InvalidAction', 'errorMessage' => 'The VPC has been connected to the classic network ECS. Please cancel the connection before proceeding.', 'description' => ''], ['errorCode' => 'DependencyViolation.Ipv6Gateway', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'IncorrectStatus.cbnStatus', 'errorMessage' => 'Current CBN status does not support this operation.', 'description' => ''], ['errorCode' => 'DependencyViolation.CloudServiceResource', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'DependencyViolation.ClassicLinkInstance', 'errorMessage' => 'Specified object has active classicLink instance.', 'description' => ''], ['errorCode' => 'IllegalParam.RegionId', 'errorMessage' => 'The specified RegionId is illegal.', 'description' => ''], ['errorCode' => 'DependencyViolation.NetworkAcl', 'errorMessage' => 'Specified object has dependent resources network acl.', 'description' => ''], ['errorCode' => 'InvalidRegionInstance', 'errorMessage' => 'The specified InstanceId does not exist in given region.', 'description' => 'The instance does not exist in the specified region.'], ['errorCode' => 'DependencyViolation.Ipv4Gateway', 'errorMessage' => 'The VPC cannot be deleted when it has ipv4Gateway.', 'description' => ''], ['errorCode' => 'OperationDenied.VpcPeerExists', 'errorMessage' => 'The operation is not allowed because the VpcPeer exists.', 'description' => ''], ['errorCode' => 'DependencyViolation.GatewayRouteTable', 'errorMessage' => 'Specified object has dependent resources gatewayRouteTable.', 'description' => ''], ['errorCode' => 'DependencyViolation.DhcpOptionsSet', 'errorMessage' => 'The VPC cannot be deleted when it is associated with dhcpOptionsSet.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error', 'description' => 'The request failed due to an internal error.'], ], [ ['errorCode' => 'DependencyViolation.RouterInterface', 'errorMessage' => 'Specified object has dependent resources RouterInterface.', 'description' => 'The specified vSwitch is connected to a router interface and cannot be deleted.'], ], 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not supported in this status.', 'description' => 'The resource is in a state that does not support the specified operation.'], ], [ ['errorCode' => 'InvalidVpcId.NotFound', 'errorMessage' => 'Specified VPC does not exist.', 'description' => 'The specified VPC ID does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DeleteVpc'], ], 'changeSet' => [ ['createdAt' => '2023-12-20T08:22:06.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-07-12T02:51:03.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-06-12T07:10:42.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-24T06:12:07.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-10-28T07:20:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-11T03:59:53.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeleteVpc'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'vpc:DeleteVpc', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:tag', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#VpcId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DeleteVpc', 'summary' => 'delete a VPC', ], 'DeleteVsc' => [ 'summary' => '', 'path' => '', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'docRequired' => true, 'description' => '', 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'VscId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'example' => 'vsc-bp1j8y**etwq1ow3jal', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => '123e4567-e89b-1**3-a456-426655440000', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['type' => 'boolean', 'description' => '', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => '', 'example' => '745CEC9F-0DD7-4451-9FE7-8B752F39****'], ], 'title' => '', 'description' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'Vsc.NotBelongToInstance', 'errorMessage' => 'The specified VSC does not belong to the specified instance.', 'description' => ''], ['errorCode' => 'IncorrectVscStatus', 'errorMessage' => 'The specified VSC is in a status that does not support this operation.', 'description' => ''], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the instance does not support this operation.', 'description' => 'The instance is in a state that does not support the current operation.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance doesn\'t exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling', 'description' => 'Your request is being throttled. Try again later.'], ['errorCode' => 'InvalidClientToken.Malformed', 'errorMessage' => 'The specified clientToken is improperly formatted. It must contain only ASCII characters and must not exceed 64 characters in length.', 'description' => 'The specified clientToken is improperly formatted. It must contain only ASCII characters and must not exceed 64 characters in length.'], ['errorCode' => 'InvalidOperation.VscReferredByFileSystem', 'errorMessage' => 'The specified vsc is referenced by the file system and cannot be deleted.', 'description' => 'The specified vsc is referenced by the file system and cannot be deleted.'], ], [ ['errorCode' => 'Vsc.NotFound', 'errorMessage' => 'The specified VSC channel does not exist.', 'description' => 'VSC channel does not exist'], ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance does not exist.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => '', 'description' => '调用该接口时,您需要注意:'."\n" ."\n" .'- VSC需要先解绑CPFS等文件系统绑定。'."\n" .'- 调用释放VSC,需要实例操作系统响应,如果实例操作系统未响应,VSC删除失败进入DetachFailed状态。您可以检查操作系统是否正常,或者对实例关机后再尝试删除。'."\n" .'- 释放实例时,如果实例上有VSC会随实例一并释放。'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"745CEC9F-0DD7-4451-9FE7-8B752F39****\\"\\n}","type":"json"}]', ], 'DeregisterManagedInstance' => [ 'summary' => 'You can invoke DeregisterManagedInstance to log off a managed instance. After logging off, you can no longer use Cloud Assistant to send commands or files to the instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29270', 'abilityTreeNodes' => ['FEATUREecsLJD94P'], 'autoTest' => false, ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The managed instance ID.', 'type' => 'string', 'required' => true, 'example' => 'mi-hz01axdfas****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'Ensures the idempotence of the request. Generate a unique value for this parameter from your client to guarantee that the value is unique across different requests. **ClientToken** supports only ASCII characters and must not exceed 64 characters. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F74942176', 'title' => ''], 'Instance' => [ 'description' => 'Details of the managed instances.', 'type' => 'object', 'properties' => [ 'LastInvokedTime' => ['description' => 'The time when the Cloud Assistant task was last executed.', 'type' => 'string', 'example' => '2021-01-20T09:00:40Z', 'title' => ''], 'InternetIp' => ['description' => 'The public IP address of the managed instance.', 'type' => 'string', 'example' => '47.8.**.**', 'title' => ''], 'Hostname' => ['description' => 'The hostname of the managed instance.', 'type' => 'string', 'example' => 'test-Hostname', 'title' => ''], 'InstanceId' => ['description' => 'The managed instance ID.', 'type' => 'string', 'example' => 'mi-hz01axdfas****', 'title' => ''], 'ActivationId' => ['description' => 'The activation code ID.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F7494****', 'title' => ''], 'IntranetIp' => ['description' => 'The internal IP address of the managed instance.', 'type' => 'string', 'example' => '10.0.**.**', 'title' => ''], 'AgentVersion' => ['description' => 'The version number of Cloud Assistant Agent.', 'type' => 'string', 'example' => '2.2.0.102', 'title' => ''], 'RegistrationTime' => ['description' => 'The time when the managed instance was registered.', 'type' => 'string', 'example' => '2021-01-20T08:57:56Z', 'title' => ''], 'InstanceName' => ['description' => 'The name of the managed instance.', 'type' => 'string', 'example' => 'test-InstanceName-001', 'title' => ''], 'OsType' => ['description' => 'The operating system type of the managed instance.', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'OsVersion' => ['description' => 'The version information about the operating system.', 'type' => 'string', 'example' => 'Linux_#38~18.04.1-Ubuntu SMP Wed Jan 6 18:26:30 UTC 2021_x86_64', 'title' => ''], 'InvocationCount' => ['description' => 'The number of times that Cloud Assistant tasks were executed on the managed instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'MachineId' => ['description' => 'The machine code of the managed instance.', 'type' => 'string', 'example' => 'e03231b37ab14e53b5795ad625fc****', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the managed instance belongs.', 'type' => 'string', 'example' => 'rg-123******', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'InvalidClientToken.Malformed', 'errorMessage' => 'The specified parameter clientToken is not valid.', 'description' => ''], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', 'description' => ''], ['errorCode' => 'IdempotentProcessing', 'errorMessage' => 'The previous idempotent request(s) is still processing.', 'description' => 'A previous idempotent request is being processed. Try again later.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance id does not exist.', 'description' => 'The specified instance ID does not exist.'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'title' => 'Log off a managed instance', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-11-23T01:21:54.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-02-25T07:28:10.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DeregisterManagedInstance'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DeregisterManagedInstance', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F74942176\\",\\n \\"Instance\\": {\\n \\"LastInvokedTime\\": \\"2021-01-20T09:00:40Z\\",\\n \\"InternetIp\\": \\"47.8.**.**\\",\\n \\"Hostname\\": \\"test-Hostname\\",\\n \\"InstanceId\\": \\"mi-hz01axdfas****\\",\\n \\"ActivationId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F7494****\\",\\n \\"IntranetIp\\": \\"10.0.**.**\\",\\n \\"AgentVersion\\": \\"2.2.0.102\\",\\n \\"RegistrationTime\\": \\"2021-01-20T08:57:56Z\\",\\n \\"InstanceName\\": \\"test-InstanceName-001\\",\\n \\"OsType\\": \\"linux\\",\\n \\"OsVersion\\": \\"Linux_#38~18.04.1-Ubuntu SMP Wed Jan 6 18:26:30 UTC 2021_x86_64\\",\\n \\"InvocationCount\\": 2,\\n \\"MachineId\\": \\"e03231b37ab14e53b5795ad625fc****\\",\\n \\"ResourceGroupId\\": \\"rg-123******\\"\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribeAccessPoints' => [ 'summary' => 'Queries access points.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Value' => [ 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PageNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'PageSize' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TotalCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'AccessPointSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AccessPointType' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Type' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'HostOperator' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Description' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'AttachedRegionNo' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Name' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'AccessPointId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Location' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAccessPointType.NotSupport', 'errorMessage' => 'Invalid access point type.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidRegionId.NotSupport', 'errorMessage' => 'The RegionId provided does not support in our records.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeAccessPoints'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAccessPoints'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"PageSize\\": 0,\\n \\"TotalCount\\": 0,\\n \\"AccessPointSet\\": {\\n \\"AccessPointType\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"Type\\": \\"\\",\\n \\"HostOperator\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"AttachedRegionNo\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"AccessPointId\\": \\"\\",\\n \\"Location\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeAccessPoints', ], 'DescribeAccountAttributes' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28896', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call the [DescribeRegions](~~25609~~) operation to query the most recent list of regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the zone in which the resource resides.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-b', 'title' => ''], ], [ 'name' => 'AttributeName', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The type of resource quota N. Valid values of N: 1 to 8. Valid values:'."\n" ."\n" .'- instance-network-type: the available network types.'."\n" ."\n" .'- max-security-groups: the maximum number of security groups.'."\n" ."\n" .'- max-elastic-network-interfaces: the maximum number of ENIs.'."\n" ."\n" .'- max-postpaid-instance-vcpu-count: the maximum number of vCPUs for pay-as-you-go instances.'."\n" ."\n" .'- max-spot-instance-vcpu-count: the maximum number of vCPUs for spot instances.'."\n" ."\n" .'- used-postpaid-instance-vcpu-count: the number of vCPUs that have been allocated to pay-as-you-go instances.'."\n" ."\n" .'- used-spot-instance-vcpu-count: the number of vCPUs that have been allocated to spot instances.'."\n" ."\n" .'- max-postpaid-yundisk-capacity: the maximum capacity of pay-as-you-go data disks. (The value is deprecated.)'."\n" ."\n" .'- used-postpaid-yundisk-capacity: the capacity of pay-as-you-go data disks that have been created. (The value is deprecated.)'."\n" ."\n" .'- max-dedicated-hosts: the maximum number of dedicated hosts.'."\n" ."\n" .'- supported-postpaid-instance-types: the instance types of pay-as-you-go I/O optimized instances.'."\n" ."\n" .'- max-axt-command-count: the maximum number of Cloud Assistant commands.'."\n" ."\n" .'- max-axt-invocation-daily: the maximum number of Cloud Assistant command executions per day.'."\n" ."\n" .'- real-name-authentication: whether the account has completed the real-name verification.'."\n" ."\n" .' \\*\\*'."\n" ."\n" .' **Note** To create an ECS instance in a region in the Chinese mainland, you must complete the real-name verification.'."\n" ."\n" .'- max-cloud-assistant-activation-count: the maximum number of activation codes that can be created to use to register managed instances.'."\n" ."\n" .'This parameter is empty by default.', 'type' => 'array', 'items' => ['description' => 'The type of resource quota N. Valid values of N: 1 to 8. Valid values:'."\n" ."\n" .'- instance-network-type: the available network types.'."\n" ."\n" .'- max-security-groups: the maximum number of security groups.'."\n" ."\n" .'- max-elastic-network-interfaces: the maximum number of ENIs.'."\n" ."\n" .'- max-postpaid-instance-vcpu-count: the maximum number of vCPUs for pay-as-you-go instances.'."\n" ."\n" .'- max-spot-instance-vcpu-count: the maximum number of vCPUs for spot instances.'."\n" ."\n" .'- used-postpaid-instance-vcpu-count: the number of vCPUs that have been allocated to pay-as-you-go instances.'."\n" ."\n" .'- used-spot-instance-vcpu-count: the number of vCPUs that have been allocated to spot instances.'."\n" ."\n" .'- max-postpaid-yundisk-capacity: the maximum capacity of pay-as-you-go data disks. (The value is deprecated.)'."\n" ."\n" .'- used-postpaid-yundisk-capacity: the capacity of pay-as-you-go data disks that have been created. (The value is deprecated.)'."\n" ."\n" .'- max-dedicated-hosts: the maximum number of dedicated hosts.'."\n" ."\n" .'- supported-postpaid-instance-types: the instance types of pay-as-you-go I/O optimized instances.'."\n" ."\n" .'- max-axt-command-count: the maximum number of Cloud Assistant commands.'."\n" ."\n" .'- max-axt-invocation-daily: the maximum number of Cloud Assistant command executions per day.'."\n" ."\n" .'- max-cloud-assistant-activation-count: the maximum number of activation codes that can be created to use to register managed instances.'."\n" ."\n" .'- real-name-authentication: whether the account has completed the real-name verification.'."\n" ."\n" .' \\*\\*'."\n" ."\n" .' **Note** To create an ECS instance in a region in the Chinese mainland, you must complete the real-name verification.'."\n" ."\n" .'This parameter is empty by default.', 'type' => 'string', 'required' => false, 'example' => 'max-security-groups', 'title' => ''], 'required' => false, 'example' => 'max-security-groups', 'maxItems' => 30, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '8CE45CD5-31FB-47C2-959D-CA8144CE****', 'title' => ''], 'AccountAttributeItems' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AccountAttributeItem' => [ 'description' => 'Details about account privileges in the specified region.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'AttributeName' => ['description' => 'The type of the resource quota in the specified region. Valid values:'."\n" ."\n" .'- instance-network-type: the available network types.'."\n" ."\n" .'- max-security-groups: the maximum number of security groups.'."\n" ."\n" .'- max-elastic-network-interfaces: the maximum number of ENIs.'."\n" ."\n" .'- max-postpaid-instance-vcpu-count: the maximum number of vCPUs for pay-as-you-go instances.'."\n" ."\n" .'- max-spot-instance-vcpu-count: the maximum number of vCPUs for spot instances.'."\n" ."\n" .'- used-postpaid-instance-vcpu-count: the number of vCPUs that were allocated to pay-as-you-go instances.'."\n" ."\n" .'- used-spot-instance-vcpu-count: the number of vCPUs that were allocated to spot instances.'."\n" ."\n" .'- max-postpaid-yundisk-capacity: the maximum capacity of pay-as-you-go data disks. (The value is deprecated.)'."\n" ."\n" .'- used-postpaid-yundisk-capacity: the capacity of pay-as-you-go data disks that were created. (The value is deprecated.)'."\n" ."\n" .'- max-dedicated-hosts: the maximum number of dedicated hosts.'."\n" ."\n" .'- supported-postpaid-instance-types: the instance types of pay-as-you-go I/O optimized instances.'."\n" ."\n" .'- max-axt-command-count: the maximum number of Cloud Assistant commands.'."\n" ."\n" .'- max-axt-invocation-daily: the maximum number of Cloud Assistant command executions per day.'."\n" ."\n" .'- real-name-authentication: whether the account completed the real-name verification.'."\n" ."\n" .'- max-cloud-assistant-activation-count: the maximum number of activation codes that can be created to use to register managed instances.', 'type' => 'string', 'example' => 'max-security-groups', 'title' => ''], 'AttributeValues' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ValueItem' => [ 'description' => 'The values of resource quotas.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'DiskCategory' => ['description' => 'The data disk category. Valid values:'."\n" ."\n" .'- cloud\\_efficiency: ultra disk'."\n" ."\n" .'- cloud\\_ssd: standard SSD'."\n" ."\n" .'- cloud\\_essd: enhanced SSD (ESSD)', 'type' => 'string', 'example' => 'cloud_ssd', 'title' => ''], 'Value' => ['description' => 'The value of the resource quota in the specified region. Valid values:'."\n" ."\n" .'The values returned for the resource quotas to which the following AttributeName values correspond are 0 or positive integers:'."\n" ."\n" .'- max-security-groups'."\n" ."\n" .'- max-elastic-network-interfaces'."\n" ."\n" .'- max-postpaid-instance-vcpu-count'."\n" ."\n" .'- max-spot-instance-vcpu-count'."\n" ."\n" .'- used-postpaid-instance-vcpu-count'."\n" ."\n" .'- used-spot-instance-vcpu-count'."\n" ."\n" .'- max-postpaid-yundisk-capacity (the value is deprecated)'."\n" ."\n" .'- used-postpaid-yundisk-capacity (the value is deprecated)'."\n" ."\n" .'- max-dedicated-hosts'."\n" ."\n" .'- max-axt-command-count'."\n" ."\n" .'- max-axt-invocation-daily'."\n" ."\n" .'- max-cloud-assistant-activation-count'."\n" ."\n" .'When AttributeName is set to supported-postpay-instance-types, instance types are returned. For more information, see [Overview of instance families](~~25378~~).'."\n" ."\n" .'When AttributeName is set to real-name-authentications, one of the following values is returned:'."\n" ."\n" .'- yes'."\n" ."\n" .'- none'."\n" ."\n" .'- unnecessary'."\n" ."\n" .'When AttributeName is set to instance-network-type, one of the following values is returned:'."\n" ."\n" .'- vpc'."\n" ."\n" .'- classic', 'type' => 'string', 'example' => '800', 'title' => ''], 'ExpiredTime' => ['description' => 'The expiration time of a privilege. This parameter is returned only when the account privilege has an expiration time. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2019-01-01T12:30:00Z', 'title' => ''], 'ZoneId' => ['description' => 'The ID of the zone in which the resource resides.', 'type' => 'string', 'example' => 'cn-hangzhou-b', 'title' => ''], 'InstanceType' => ['description' => 'The type of the instance.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'Count' => ['description' => 'The number of privilege attributes in the account.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'InstanceChargeType' => ['description' => 'The billing method of the instance.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'Invalid.Parameter', 'errorMessage' => 'The required parameter regionId must be not null.', 'description' => 'The RegionId parameter is required.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The process of creating snapshot has failed due to some unknown error.', 'description' => 'The snapshot cannot be created.'], ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The service is unavailable, please try again later.', 'description' => ''], ], ], 'title' => 'DescribeAccountAttributes', 'summary' => 'Queries the quotas of Elastic Compute Service (ECS) resources that you can create in an Alibaba Cloud region. For a specific region, you can query the maximum numbers of security groups, elastic network interfaces (ENIs), vCPUs for pay-as-you-go instances, vCPUs for spot instances, and dedicated hosts that you can create and the capacity quotas for pay-as-you-go disks that you can create. You can also query information such as network types or whether an account has completed the account verification.', 'description' => 'After you [create](https://account.alibabacloud.com/register/intl_register.htm) an Alibaba Cloud account, you can create a specific number of ECS instances in different regions within the account. For more information, see [Limits](~~25412~~).'."\n" ."\n" .'You can apply for a quota increase in the [Quota Center console](https://quotas.console.aliyun.com/products).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAccountAttributes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeAccountAttributes', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"8CE45CD5-31FB-47C2-959D-CA8144CE****\\",\\n \\"AccountAttributeItems\\": {\\n \\"AccountAttributeItem\\": [\\n {\\n \\"AttributeName\\": \\"max-security-groups\\",\\n \\"AttributeValues\\": {\\n \\"ValueItem\\": [\\n {\\n \\"DiskCategory\\": \\"cloud_ssd\\",\\n \\"Value\\": \\"800\\",\\n \\"ExpiredTime\\": \\"2019-01-01T12:30:00Z\\",\\n \\"ZoneId\\": \\"cn-hangzhou-b\\",\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"Count\\": 3,\\n \\"InstanceChargeType\\": \\"PrePaid\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeActivations' => [ 'summary' => 'Queries existing activation codes and their usage information.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29271', 'abilityTreeNodes' => ['FEATUREecsLJD94P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ActivationId', 'in' => 'query', 'schema' => ['description' => 'The ID of the activation code.', 'type' => 'string', 'required' => false, 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], ], [ 'name' => 'InstanceName', 'in' => 'query', 'schema' => ['description' => 'The default instance name prefix.', 'type' => 'string', 'required' => false, 'example' => 'test-InstanceName', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page.'."\n" ."\n" .'Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, '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. You must specify the token that is obtained from the previous query as the value of NextToken.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the activation code belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-123******', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the activation code.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the activation code.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the activation code. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If a single tag is specified to query resources, up to 1,000 resources that have this tag can be returned. If multiple tags are specified to query resources, up to 1,000 resources that have all these tags can be returned. To query more than 1,000 resources that have specified tags, call the [ListTagResources](~~110425~~) operation.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot start with `acs:` or `aliyun`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the activation code. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F74625134', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'ActivationList' => [ 'description' => 'The activation codes and their usage information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the activation code was created.', 'type' => 'string', 'example' => '2021-01-20T06:00:00Z', 'title' => ''], 'DeregisteredCount' => ['description' => 'The number of instances that were deregistered.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceCount' => ['description' => 'The maximum number of times that the activation code can be used to register managed instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Description' => ['description' => 'The description of the activation code.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'RegisteredCount' => ['description' => 'The number of instances that were registered.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceName' => ['description' => 'The default instance name prefix.', 'type' => 'string', 'example' => 'test-InstanceName', 'title' => ''], 'Disabled' => ['description' => 'Indicates whether the activation code is disabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'IpAddressRange' => ['description' => 'The IP addresses of hosts that are allowed to use the activation code.', 'type' => 'string', 'example' => '0.0.0.0/0', 'title' => ''], 'TimeToLiveInHours' => ['description' => 'The validity period of the activation code. Unit: hours.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''], 'ActivationId' => ['description' => 'The ID of the activation code.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the activation code belongs.', 'type' => 'string', 'example' => 'rg-123******', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the activation code.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the activation code.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key of the activation code.', 'type' => 'string', 'example' => 'owner', 'title' => ''], 'TagValue' => ['description' => 'The tag value of the activation code.', 'type' => 'string', 'example' => 'zhangsan', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'InvalidParam.PageNumber', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.PageSize', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The Tags parameter number is exceed.', 'description' => 'The number of tags exceeds the maximum limit.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'MissingParameter.TagKey', 'errorMessage' => 'You must specify Tag.N.Key.', 'description' => 'The tag key is not specified.'], ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F74625134\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"ActivationList\\": [\\n {\\n \\"CreationTime\\": \\"2021-01-20T06:00:00Z\\",\\n \\"DeregisteredCount\\": 1,\\n \\"InstanceCount\\": 1,\\n \\"Description\\": \\"This is description.\\",\\n \\"RegisteredCount\\": 1,\\n \\"InstanceName\\": \\"test-InstanceName\\",\\n \\"Disabled\\": false,\\n \\"IpAddressRange\\": \\"0.0.0.0/0\\",\\n \\"TimeToLiveInHours\\": 4,\\n \\"ActivationId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F1234****\\",\\n \\"ResourceGroupId\\": \\"rg-123******\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"owner\\",\\n \\"TagValue\\": \\"zhangsan\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', 'title' => 'DescribeActivations', 'description' => '## [](#)Usage notes'."\n" ."\n" .'You can use one of the following methods to check the responses:'."\n" ."\n" .'- Method 1: During a paged query, when you call the DescribeActivations operation to retrieve the first page of results, use `MaxResults` to specify the maximum number of entries to return in the call. The return value of `NextToken` is a pagination token, which you can use in the next request to retrieve a new page of results. When you call the DescribeActivations operation to retrieve a new page of results, set `NextToken` to the `NextToken` value returned in the previous call and set `MaxResults` to specify the maximum number of entries to return in this call.'."\n" ."\n" .'- Method 2: Use `PageSize` to specify the number of entries to return on each page, and then use `PageNumber` to specify the number of the page to return. You can use only one of the preceding methods. If you specify `MaxResults` or `NextToken`, the `PageSize` and `PageNumber` request parameters do not take effect and the `TotalCount` response parameter is invalid.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-12-21T01:35:08.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-10-24T05:49:39.000Z', 'description' => 'Request parameters changed, Response parameters changed, Response parameters changed'], ['createdAt' => '2022-02-25T07:28:10.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeActivations'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeActivations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Activation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:activation/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Activation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:activation/{#activationId}'], ], ], ], ], 'translator' => 'manual', ], 'DescribeAutoProvisioningGroupHistory' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28898', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the Auto Provisioning Group is located.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '5', 'title' => ''], ], [ 'name' => 'AutoProvisioningGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the auto provisioning group.', 'type' => 'string', 'required' => true, 'example' => 'apg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query the scheduling history. The time follows the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time is displayed in UTC.', 'type' => 'string', 'required' => false, 'example' => '2019-04-01T15:10:20Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query the scheduling history. The time follows the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time is displayed in UTC.', 'type' => 'string', 'required' => false, 'example' => '2019-06-20T15:10:20Z', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B48A12CD-1295-4A38-A8F0-0E92C937****', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of scheduled tasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'AutoProvisioningGroupHistories' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AutoProvisioningGroupHistory' => [ 'description' => 'An array of scheduled task history records.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of a scheduled task. Valid values:'."\n" ."\n" .'- prepare: The scheduled task is in progress.'."\n" ."\n" .'- success: The scheduled task succeeded.'."\n" ."\n" .'- failed: The scheduled task failed.', 'type' => 'string', 'example' => 'success', 'title' => ''], 'StartTime' => ['description' => 'The time when the scheduled task started.', 'type' => 'string', 'example' => '2019-04-01T15:10:20Z', 'title' => ''], 'TaskId' => ['description' => 'The ID of the scheduled task.', 'type' => 'string', 'example' => 'apg-task-bp67acfmxazb4p****', 'title' => ''], 'LastEventTime' => ['description' => 'The execution time of the last instance creation activity.', 'type' => 'string', 'example' => '2019-04-01T15:10:20Z', 'title' => ''], 'ActivityDetails' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ActivityDetail' => [ 'description' => 'An array of instance creation activities within the scheduled task.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of an instance creation activity. Valid values:'."\n" ."\n" .'- Successful: The instance creation activity succeeded.'."\n" ."\n" .'- Failed: The instance creation activity failed.'."\n" ."\n" .'- InProgress: The instance creation activity is in progress.'."\n" ."\n" .'- Warning: The instance creation activity was partially successful.', 'type' => 'string', 'example' => 'Successful', 'title' => ''], 'Detail' => ['description' => 'A human-readable summary of the activity.', 'type' => 'string', 'example' => 'New ECS instances "i-bp67acfmxazb4p****, i-bp67acfmxazb5p****" created.', 'title' => ''], 'CreatedInstanceIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'CreatedInstanceId' => [ 'type' => 'array', 'items' => ['description' => 'The ID of a created instance.', 'type' => 'string', 'example' => 'i-123xxxyyy', 'title' => ''], 'description' => 'The ID of a created instance.', 'title' => '', 'example' => '', ], ], 'description' => 'The IDs of the created instances.', 'title' => '', 'example' => '', ], 'DestroyedInstanceIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DestroyedInstanceId' => [ 'type' => 'array', 'items' => ['description' => 'The ID of a released instance.', 'type' => 'string', 'example' => 'i-werq2xxdfs', 'title' => ''], 'description' => 'The ID of a released instance.', 'title' => '', 'example' => '', ], ], 'description' => 'The IDs of the released instances.', 'title' => '', 'example' => '', ], 'ErrorMessages' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ErrorMessage' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'InvalidSecurityGroupId.NotFound', 'title' => ''], 'Message' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'The specified SecurityGroupId "sg-bp1d8modxxxxx" is not found.', 'title' => ''], 'FailedInstanceIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'FailedInstanceId' => [ 'type' => 'array', 'items' => ['description' => 'The ID of a failed instance.', 'type' => 'string', 'example' => 'i-sdf234sdf23', 'title' => ''], 'description' => 'The IDs of the failed instances.', 'title' => '', 'example' => '', ], ], 'description' => 'The IDs of the failed instances.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The error messages returned if the instance creation activity fails.', 'title' => '', 'example' => '', ], ], 'description' => 'The error messages returned if the instance creation activity fails.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'An array of instance creation activities within the scheduled task.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'An array of scheduled task history records.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified parameter "AutoProvisioningGroupId" should not be null.', 'description' => 'Elastic Supply Group Id(AutoProvisioningGroupId) must be filled in.'], ['errorCode' => 'MissingParamter.RegionId', 'errorMessage' => 'The regionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.periodTime', 'errorMessage' => 'The format of startTime or endTime is invalid.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden.RAM', 'errorMessage' => 'User not authorized to operate on the specified resource, or this API doesn\'t support RAM.', 'description' => ''], ], [ ['errorCode' => 'InvalidAutoProvisioningGroupId.NotFound', 'errorMessage' => 'The specified AutoProvisioningGroupId does not exist.', 'description' => 'The specified elastic supply group does not exist.'], ], ], 'title' => 'DescribeAutoProvisioningGroupHistory', 'summary' => 'Call `DescribeAutoProvisioningGroupHistory` to query the history of scheduling tasks for an auto provisioning group.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-14T11:30:40.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAutoProvisioningGroupHistory'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeAutoProvisioningGroupHistory', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"B48A12CD-1295-4A38-A8F0-0E92C937****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 10,\\n \\"AutoProvisioningGroupHistories\\": {\\n \\"AutoProvisioningGroupHistory\\": [\\n {\\n \\"Status\\": \\"success\\",\\n \\"StartTime\\": \\"2019-04-01T15:10:20Z\\",\\n \\"TaskId\\": \\"apg-task-bp67acfmxazb4p****\\",\\n \\"LastEventTime\\": \\"2019-04-01T15:10:20Z\\",\\n \\"ActivityDetails\\": {\\n \\"ActivityDetail\\": [\\n {\\n \\"Status\\": \\"Successful\\",\\n \\"Detail\\": \\"New ECS instances \\\\\\"i-bp67acfmxazb4p****, i-bp67acfmxazb5p****\\\\\\" created.\\",\\n \\"CreatedInstanceIds\\": {\\n \\"CreatedInstanceId\\": [\\n \\"i-123xxxyyy\\"\\n ]\\n },\\n \\"DestroyedInstanceIds\\": {\\n \\"DestroyedInstanceId\\": [\\n \\"i-werq2xxdfs\\"\\n ]\\n },\\n \\"ErrorMessages\\": {\\n \\"ErrorMessage\\": [\\n {\\n \\"Code\\": \\"InvalidSecurityGroupId.NotFound\\",\\n \\"Message\\": \\"The specified SecurityGroupId \\\\\\"sg-bp1d8modxxxxx\\\\\\" is not found.\\",\\n \\"FailedInstanceIds\\": {\\n \\"FailedInstanceId\\": [\\n \\"i-sdf234sdf23\\"\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeAutoProvisioningGroupInstances' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28899', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the auto provisioning group resides. You can invoke [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number for the paging query.'."\n" ."\n" .'Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in the paging query. You can use this parameter to configure paging settings.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'AutoProvisioningGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the auto provisioning group.', 'type' => 'string', 'required' => true, 'example' => 'apg-uf6jel2bbl62wh13****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B48A12CD-1295-4A38-A8F0-0E92C937****', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances in the auto provisioning group.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'Instances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Instance' => [ 'description' => 'The information about all instances in the auto provisioning group.', 'type' => 'array', 'items' => [ 'description' => 'The information about all instances in the auto provisioning group.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The instance status.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'CreationTime' => ['description' => 'The time when the instance was created.', 'type' => 'string', 'example' => '2017-12-10T04:04Z', 'title' => ''], 'IsSpot' => ['description' => 'Indicates whether the instance is a spot instance.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'CPU' => ['description' => 'The number of vCPUs of the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'NetworkType' => ['description' => 'The network type of the instance. Valid values:'."\n" ."\n" .'- vpc: virtual private cloud (VPC).'."\n" .'- classic: classic network. This feature has been retired. For more information, see [Retirement notice](~~2833134~~).', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'RegionId' => ['description' => 'The ID of the region where the instance resides.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'IoOptimized' => ['description' => 'Indicates whether the instance is I/O optimized.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'OsType' => ['description' => 'The operating system type of the instance. Valid values:'."\n" ."\n" .'- windows: Windows.'."\n" .'- linux: Linux.', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'ZoneId' => ['description' => 'The zone where the instance resides.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'Memory' => ['description' => 'The memory size. Unit: MiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The specified parameter "AutoProvisioningGroupId" should not be null.', 'description' => 'Elastic Supply Group Id(AutoProvisioningGroupId) must be filled in.'], ['errorCode' => 'MissingParamter.RegionId', 'errorMessage' => 'The regionId should not be null.', 'description' => 'The RegionId parameter is required.'], ], 403 => [ ['errorCode' => 'Forbidden.RAM', 'errorMessage' => 'User not authorized to operate on the specified resource, or this API doesn\'t support RAM.', 'description' => ''], ], [ ['errorCode' => 'InvalidAutoProvisioningGroupId.NotFound', 'errorMessage' => 'The specified AutoProvisioningGroupId does not exist.', 'description' => 'The specified elastic supply group does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"B48A12CD-1295-4A38-A8F0-0E92C937****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"Instances\\": {\\n \\"Instance\\": [\\n {\\n \\"Status\\": \\"Running\\",\\n \\"CreationTime\\": \\"2017-12-10T04:04Z\\",\\n \\"IsSpot\\": true,\\n \\"CPU\\": 2,\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"NetworkType\\": \\"vpc\\",\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"IoOptimized\\": true,\\n \\"OsType\\": \\"linux\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"Memory\\": 1024\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query instances in an auto provisioning group', 'summary' => 'Queries information about instances in an auto provisioning group.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAutoProvisioningGroupInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeAutoProvisioningGroupInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'AutoProvisioningGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:autoprovisioninggroup/{#autoprovisioninggroupId}'], ], ], ], ], ], 'DescribeAutoProvisioningGroups' => [ 'summary' => 'Queries one or more Auto Provisioning Groups.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28900', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the auto provisioning group is located.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return.'."\n" ."\n" .'Start value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return per page.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '2', 'title' => ''], ], [ 'name' => 'AutoProvisioningGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the auto provisioning group.', 'type' => 'string', 'required' => false, 'example' => 'testAutoProvisioningGroupName', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the auto provisioning group belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'AutoProvisioningGroupId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the auto provisioning groups. You can specify up to 20 IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of the auto provisioning group.', 'type' => 'string', 'required' => false, 'example' => 'apg-sn54avj8htgvtyh8****', 'title' => ''], 'required' => false, 'example' => 'apg-sn54avj8htgvtyh8****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'AutoProvisioningGroupStatus', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The statuses of the auto provisioning groups.', 'type' => 'array', 'items' => ['description' => 'The status of the auto provisioning group. Valid values:'."\n" ."\n" .'- `submitted`: The auto provisioning group is created but has not started scheduling tasks.'."\n" ."\n" .'- `active`: The auto provisioning group is executing scheduling tasks.'."\n" ."\n" .'- `deleted`: The auto provisioning group is deleted.'."\n" ."\n" .'- `delete-running`: The auto provisioning group is being deleted.'."\n" ."\n" .'- `modifying`: The auto provisioning group is being modified.', 'type' => 'string', 'required' => false, 'example' => 'active', 'title' => ''], 'required' => false, 'example' => 'active', 'maxItems' => 10, 'title' => '', ], ], [ 'name' => 'AutoProvisioningGroupTypes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['type' => 'string', 'example' => 'request', 'title' => '', 'description' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'description' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags used to filter auto provisioning groups. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the tag. The key can be up to 128 characters in length and cannot be an empty string. It cannot start with `aliyun` or `acs:` or contain http\\:// or https\\://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of the tag. The value can be up to 128 characters in length and can be an empty string. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '745CEC9F-0DD7-4451-9FE7-8B752F39****', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of auto provisioning groups found.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'AutoProvisioningGroups' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AutoProvisioningGroup' => [ 'description' => 'Details about the auto provisioning groups.', 'type' => 'array', 'items' => [ 'description' => 'Details of the auto provisioning group.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the auto provisioning group was created.', 'type' => 'string', 'example' => '2019-04-01T15:10:20Z', 'title' => ''], 'AutoProvisioningGroupName' => ['description' => 'The name of the auto provisioning group.', 'type' => 'string', 'example' => 'EcsDocTest', 'title' => ''], 'Status' => ['description' => 'The status of the auto provisioning group. Valid values:'."\n" ."\n" .'- `submitted`: The auto provisioning group is created but has not started scheduling tasks.'."\n" ."\n" .'- `active`: The auto provisioning group is executing scheduling tasks.'."\n" ."\n" .'- `deleted`: The auto provisioning group is deleted.'."\n" ."\n" .'- `delete-running`: The auto provisioning group is being deleted.'."\n" ."\n" .'- `modifying`: The auto provisioning group is being modified.', 'type' => 'string', 'example' => 'submitted', 'title' => ''], 'TerminateInstances' => ['description' => 'Indicates whether to release the instances in the auto provisioning group when the group is deleted. Valid values:'."\n" ."\n" .'- true: Releases the instances.'."\n" ."\n" .'- false: Retains the instances.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'MaxSpotPrice' => ['description' => 'The maximum price for preemptible instances.'."\n" ."\n" .'> If you specify `MaxSpotPrice` and `LaunchTemplateConfig.N.MaxPrice`, the lower value of the two parameters is used.'."\n" ."\n" .'The `LaunchTemplateConfig.N.MaxPrice` parameter is set when the auto provisioning group is created and cannot be modified.', 'type' => 'number', 'format' => 'float', 'example' => '2', 'title' => ''], 'State' => ['description' => 'The state of the auto provisioning group. Valid values:'."\n" ."\n" .'- `fulfilled`: The scheduling task is complete and the instance cluster is provisioned.'."\n" ."\n" .'- `pending-fulfillment`: The instances are being created.'."\n" ."\n" .'- `pending-termination`: The instances are being removed.'."\n" ."\n" .'- `error`: An error occurred during scheduling and the instance cluster failed to be provisioned.', 'type' => 'string', 'example' => 'fulfilled', 'title' => ''], 'LaunchTemplateId' => ['description' => 'The ID of the launch template.', 'type' => 'string', 'example' => 'lt-bp1fgzds4bdogu03****', 'title' => ''], 'ValidFrom' => ['description' => 'The time when the auto provisioning group starts. The combination of `ValidFrom` and `ValidUntil` determines the validity period of the auto provisioning group.', 'type' => 'string', 'example' => '2019-04-01T15:10:20Z', 'title' => ''], 'LaunchTemplateVersion' => ['description' => 'The version of the launch template.', 'type' => 'string', 'example' => '1', 'title' => ''], 'TerminateInstancesWithExpiration' => ['description' => 'Indicates whether to release the instances in the auto provisioning group when the group expires. Valid values:'."\n" ."\n" .'- true: Releases the instances.'."\n" ."\n" .'- false: Removes the instances from the auto provisioning group but does not release them.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the auto provisioning group.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'ValidUntil' => ['description' => 'The time when the auto provisioning group expires. The combination of `ValidFrom` and `ValidUntil` determines the validity period of the auto provisioning group.', 'type' => 'string', 'example' => '2019-06-01T15:10:20Z', 'title' => ''], 'AutoProvisioningGroupType' => ['description' => 'The delivery type of the auto provisioning group. Valid values:'."\n" ."\n" .'- `request`: one-time delivery. After the auto provisioning group is started, it delivers the instance cluster only once. If the instances fail to be delivered, the group does not retry the delivery.'."\n" ."\n" .'- `maintain`: continuous delivery. After the auto provisioning group is started, it attempts to deliver the instance cluster and monitors the real-time capacity. If the target capacity is not reached, the group continues to create ECS instances.', 'type' => 'string', 'example' => 'maintain', 'title' => ''], 'AutoProvisioningGroupId' => ['description' => 'The ID of the auto provisioning group.', 'type' => 'string', 'example' => 'apg-sn54avj8htgvtyh8****', 'title' => ''], 'ExcessCapacityTerminationPolicy' => ['description' => 'Indicates whether to release the scaled-in instances when the real-time capacity of the auto provisioning group exceeds the target capacity and a scale-in event is triggered. Valid values:'."\n" ."\n" .'- `termination`: releases the scaled-in instances.'."\n" ."\n" .'- `no-termination`: only removes the scaled-in instances from the auto provisioning group.', 'type' => 'string', 'example' => 'termination', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the auto provisioning group belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'LaunchTemplateConfigs' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LaunchTemplateConfig' => [ 'description' => 'The details of the extended launch template.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'MaxPrice' => ['description' => 'The maximum price of the instance type in the extended launch template.', 'type' => 'number', 'format' => 'float', 'example' => '3', 'title' => ''], 'Priority' => ['description' => 'The priority of the instance type in the extended launch template. A value of 0 indicates the highest priority.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'VSwitchId' => ['description' => 'The vSwitch ID of the instance type in the extended launch template.', 'type' => 'string', 'example' => 'vsw-sn5bsitu4lfzgc5o7****', 'title' => ''], 'WeightedCapacity' => ['description' => 'The weight of the instance type in the extended launch template.', 'type' => 'number', 'format' => 'float', 'example' => '2', 'title' => ''], 'InstanceType' => ['description' => 'The instance type in the extended launch template.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The extended configurations of the launch template.', 'title' => '', 'example' => '', ], 'SpotOptions' => [ 'description' => 'The policies related to preemptible instances.', 'type' => 'object', 'properties' => [ 'InstancePoolsToUseCount' => ['description' => 'The number of lowest-priced instance types that the auto provisioning group selects to create instances.'."\n" ."\n" .'> This parameter is set when the auto provisioning group is created and cannot be modified.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'AllocationStrategy' => ['description' => 'The policy for creating preemptible instances. Valid values:'."\n" ."\n" .'- `lowest-price`: cost-optimized policy. The auto provisioning group selects the lowest-priced instance type to create instances.'."\n" ."\n" .'- `diversified`: balanced distribution policy. The auto provisioning group creates instances in the zones that are specified in the extended launch template and distributes the instances evenly across the zones.', 'type' => 'string', 'example' => 'diversified', 'title' => ''], 'InstanceInterruptionBehavior' => ['description' => 'The action to be performed after the excess preemptible instances are stopped. Valid values:'."\n" ."\n" .'- `stop`: stops the instances.'."\n" ."\n" .'- `terminate`: releases the instances.', 'type' => 'string', 'example' => 'stop', 'title' => ''], ], 'title' => '', 'example' => '', ], 'PayAsYouGoOptions' => [ 'description' => 'The policies related to pay-as-you-go instances.', 'type' => 'object', 'properties' => [ 'AllocationStrategy' => ['description' => 'The policy for creating pay-as-you-go instances. Valid values:'."\n" ."\n" .'- `lowest-price`: cost-optimized policy. The auto provisioning group selects the lowest-priced instance type to create instances.'."\n" ."\n" .'- `prioritized`: priority-based policy. The auto provisioning group creates instances based on the priority specified by `LaunchTemplateConfig.N.Priority`.'."\n" ."\n" .'> The `LaunchTemplateConfig.N.Priority` parameter is set when the auto provisioning group is created and cannot be modified.', 'type' => 'string', 'example' => 'prioritized', 'title' => ''], ], 'title' => '', 'example' => '', ], 'TargetCapacitySpecification' => [ 'description' => 'The target capacity of the auto provisioning group.', 'type' => 'object', 'properties' => [ 'SpotTargetCapacity' => ['description' => 'The target capacity of preemptible instances.', 'type' => 'number', 'format' => 'float', 'example' => '20', 'title' => ''], 'PayAsYouGoTargetCapacity' => ['description' => 'The target capacity of pay-as-you-go instances.', 'type' => 'number', 'format' => 'float', 'example' => '30', 'title' => ''], 'DefaultTargetCapacityType' => ['description' => 'The billing method of the balance of capacity when the sum of `PayAsYouGoTargetCapacity` and `SpotTargetCapacity` is smaller than `TotalTargetCapacity`. Valid values:'."\n" ."\n" .'- `PayAsYouGo`: pay-as-you-go instances.'."\n" ."\n" .'- `Spot`: preemptible instances.', 'type' => 'string', 'example' => 'Spot', 'title' => ''], 'TotalTargetCapacity' => ['description' => 'The total target capacity of the auto provisioning group. The capacity consists of the following three parts:'."\n" ."\n" .'- `PayAsYouGoTargetCapacity`'."\n" ."\n" .'- `SpotTargetCapacity`'."\n" ."\n" .'- The balance of capacity other than `PayAsYouGoTargetCapacity` and `SpotTargetCapacity`.', 'type' => 'number', 'format' => 'float', 'example' => '60', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags that are added to the auto provisioning group.', 'type' => 'array', 'items' => [ 'description' => 'The tags that are added to the auto provisioning group.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The key of tag N that is added to the auto provisioning group.'."\n" ."\n" .'Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be up to 128 characters in length and cannot start with aliyun or acs:. It cannot contain http\\:// or https\\://.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'TagValue' => ['description' => 'The value of tag N that is added to the auto provisioning group.'."\n" ."\n" .'Valid values of N: 1 to 20. The tag value can be an empty string. It can be up to 128 characters in length and cannot contain http\\:// or https\\://.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'CandidateOptions' => [ 'type' => 'object', 'properties' => [ 'TimeoutMinutes' => ['type' => 'integer', 'format' => 'int32', 'example' => '60', 'description' => '', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'CapacitySpecification' => [ 'type' => 'object', 'properties' => [ 'PayAsYouGoCapacity' => ['type' => 'number', 'format' => 'float', 'example' => '2', 'description' => '', 'title' => ''], 'PrePaidCapacity' => ['type' => 'number', 'format' => 'float', 'example' => '0', 'description' => '', 'title' => ''], 'SpotCapacity' => ['type' => 'number', 'format' => 'float', 'example' => '3', 'description' => '', 'title' => ''], 'TotalCapacity' => ['type' => 'number', 'format' => 'float', 'example' => '5', 'description' => '', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'SuspendedProcesses' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SuspendedProcess' => [ 'type' => 'array', 'items' => ['type' => 'string', 'example' => 'ScaleOut', 'description' => '', 'title' => ''], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The auto provisioning groups.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParamter.RegionId', 'errorMessage' => 'The regionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => 'The specified parameter "AutoProvisioningGroupName" is not valid.', 'description' => ''], ], ], 'title' => 'DescribeAutoProvisioningGroups', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-02-29T03:19:06.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-01-04T11:43:20.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAutoProvisioningGroups'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeAutoProvisioningGroups', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"745CEC9F-0DD7-4451-9FE7-8B752F39****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 10,\\n \\"AutoProvisioningGroups\\": {\\n \\"AutoProvisioningGroup\\": [\\n {\\n \\"CreationTime\\": \\"2019-04-01T15:10:20Z\\",\\n \\"AutoProvisioningGroupName\\": \\"EcsDocTest\\",\\n \\"Status\\": \\"submitted\\",\\n \\"TerminateInstances\\": false,\\n \\"MaxSpotPrice\\": 2,\\n \\"State\\": \\"fulfilled\\",\\n \\"LaunchTemplateId\\": \\"lt-bp1fgzds4bdogu03****\\",\\n \\"ValidFrom\\": \\"2019-04-01T15:10:20Z\\",\\n \\"LaunchTemplateVersion\\": \\"1\\",\\n \\"TerminateInstancesWithExpiration\\": true,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ValidUntil\\": \\"2019-06-01T15:10:20Z\\",\\n \\"AutoProvisioningGroupType\\": \\"maintain\\",\\n \\"AutoProvisioningGroupId\\": \\"apg-sn54avj8htgvtyh8****\\",\\n \\"ExcessCapacityTerminationPolicy\\": \\"termination\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"LaunchTemplateConfigs\\": {\\n \\"LaunchTemplateConfig\\": [\\n {\\n \\"MaxPrice\\": 3,\\n \\"Priority\\": 1,\\n \\"VSwitchId\\": \\"vsw-sn5bsitu4lfzgc5o7****\\",\\n \\"WeightedCapacity\\": 2,\\n \\"InstanceType\\": \\"ecs.g5.large\\"\\n }\\n ]\\n },\\n \\"SpotOptions\\": {\\n \\"InstancePoolsToUseCount\\": 2,\\n \\"AllocationStrategy\\": \\"diversified\\",\\n \\"InstanceInterruptionBehavior\\": \\"stop\\"\\n },\\n \\"PayAsYouGoOptions\\": {\\n \\"AllocationStrategy\\": \\"prioritized\\"\\n },\\n \\"TargetCapacitySpecification\\": {\\n \\"SpotTargetCapacity\\": 20,\\n \\"PayAsYouGoTargetCapacity\\": 30,\\n \\"DefaultTargetCapacityType\\": \\"Spot\\",\\n \\"TotalTargetCapacity\\": 60\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagKey\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\"\\n }\\n ]\\n },\\n \\"CandidateOptions\\": {\\n \\"TimeoutMinutes\\": 60\\n },\\n \\"CapacitySpecification\\": {\\n \\"PayAsYouGoCapacity\\": 2,\\n \\"PrePaidCapacity\\": 0,\\n \\"SpotCapacity\\": 3,\\n \\"TotalCapacity\\": 5\\n },\\n \\"SuspendedProcesses\\": {\\n \\"SuspendedProcess\\": [\\n \\"ScaleOut\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeAutoSnapshotPolicyAssociations' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28902', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the automatic snapshot policy. You can call [DescribeRegions](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-ecs-2014-05-26-describeregions) to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'AutoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the automatic snapshot policy.'."\n" .'- You can specify only one of AutoSnapshotPolicyId and DiskId.', 'type' => 'string', 'required' => false, 'example' => 'sp-bp12quk7gqhhuu1f****', 'title' => ''], ], [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The cloud disk ID.'."\n" .'- You can specify only one of AutoSnapshotPolicyId and DiskId.', 'type' => 'string', 'required' => false, 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for paging queries. Maximum value: 100.'."\n" ."\n" .'Default value:'."\n" .'- If this parameter is not set or is set to a value less than 10, the default value is 10.'."\n" .'- If the value is set to a value greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****', 'title' => ''], 'AutoSnapshotPolicyAssociations' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AutoSnapshotPolicyAssociation' => [ 'description' => 'The collection of automatic snapshot policy associations.', 'type' => 'array', 'items' => [ 'description' => 'The automatic snapshot policy association.', 'type' => 'object', 'properties' => [ 'AutoSnapshotPolicyId' => ['description' => 'The ID of the automatic snapshot policy.', 'type' => 'string', 'example' => 'sp-bp12quk7gqhhuu1f****', 'title' => ''], 'DiskId' => ['description' => 'The cloud disk ID.', 'type' => 'string', 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'MissingParameter.AutoSnapshotPolicyIdOrDiskId', 'errorMessage' => 'The AutoSnapshotPolicyId and DiskId parameters cannot both be empty. Please specify one of them.', 'description' => 'The AutoSnapshotPolicyId and DiskId parameters cannot both be empty. Please specify one of them.'], ['errorCode' => 'ParameterConflict.AutoSnapshotPolicyIdAndDiskId', 'errorMessage' => 'The AutoSnapshotPolicyId and DiskId parameters cannot be specified at the same time. You may specify only one of them.', 'description' => 'The AutoSnapshotPolicyId and DiskId parameters cannot be specified at the same time. You may specify only one of them.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidAutoSnapshotPolicyId.NotFound', 'errorMessage' => 'Specified parameter AutoSnapshotPolicyId not found.', 'description' => 'The specified automatic snapshot policy does not exist.'], ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified disk does not exist.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query automatic snapshot policy associations', 'summary' => 'Queries the associate relationships of an automatic snapshot policy.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeAutoSnapshotPolicyAssociations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'AutoSnapshotPolicy', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotpolicy/{#snapshotpolicyId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"AutoSnapshotPolicyAssociations\\": {\\n \\"AutoSnapshotPolicyAssociation\\": [\\n {\\n \\"AutoSnapshotPolicyId\\": \\"sp-bp12quk7gqhhuu1f****\\",\\n \\"DiskId\\": \\"d-bp67acfmxazb4p****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeAutoSnapshotPolicyEx' => [ 'summary' => 'Queries the details of automatic snapshot policies that are created in a specified region.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28902', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the automatic snapshot policies that you want to query. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'AutoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the automatic snapshot policy.', 'type' => 'string', 'required' => false, 'example' => 'sp-bp67acfmxazb4ph****', 'title' => ''], ], [ 'name' => 'AutoSnapshotPolicyName', 'in' => 'query', 'schema' => ['description' => 'The name of the automatic snapshot policy. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-). It must support characters in the Unicode letter category, which includes characters from various languages such as English and Chinese.', 'type' => 'string', 'required' => false, 'example' => 'TestName', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the automatic snapshot policy list.'."\n" ."\n" .'Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page when automatic snapshot policies are displayed in paging mode.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag information.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the automatic snapshot policy. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with aliyun or acs:. The tag key cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the automatic snapshot policy. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. When you use this parameter to filter resources, the resource count cannot exceed 1000.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2kkmhmhs****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page when automatic snapshot policies are displayed in paging mode.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the automatic snapshot policy list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of automatic snapshot policies.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'AutoSnapshotPolicies' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AutoSnapshotPolicy' => [ 'description' => 'The details of the automatic snapshot policies.', 'type' => 'array', 'items' => [ 'description' => 'The details of an automatic snapshot policy.', 'type' => 'object', 'properties' => [ 'TimePoints' => ['description' => 'The points in time at which automatic snapshots are created.'."\n" ."\n" .'The time is displayed in UTC+8. Unit: hours. Valid values: 0 to 23, which correspond to the 24 points in time from 00:00 to 23:00. For example, 1 indicates 01:00. Multiple points in time can be specified.'."\n" ."\n" .'The parameter value is a JSON array in the format of `["0", "1", ... "23"]`. A maximum of 24 points in time can be specified, separated by commas (,).', 'type' => 'string', 'example' => '["1"]', 'title' => ''], 'CreationTime' => ['description' => 'The time when the automatic snapshot policy was created. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2019-12-10T16:00Z', 'title' => ''], 'Status' => ['description' => 'The status of the automatic snapshot policy. Valid values:'."\n" ."\n" .'- Normal: The policy is normal.'."\n" .'- Expire: The policy cannot be used because your account has an overdue payment.', 'type' => 'string', 'example' => 'Normal', 'title' => ''], 'AutoSnapshotPolicyName' => ['description' => 'The name of the automatic snapshot policy.', 'type' => 'string', 'example' => 'testAutoSnapshotPolicyName', 'title' => ''], 'TargetCopyRegions' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'CopiedSnapshotsRetentionDays' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'AutoSnapshotPolicyId' => ['description' => 'The ID of the automatic snapshot policy.', 'type' => 'string', 'example' => 'sp-bp67acfmxazb4ph****', 'title' => ''], 'RetentionDays' => ['description' => 'The retention period of the automatic snapshot. Unit: days. Valid values:'."\n" ."\n" .'- -1: The snapshot is permanently retained.'."\n" .'- 1 to 65536: The snapshot is retained for the specified number of days.', 'type' => 'integer', 'format' => 'int32', 'example' => '7', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the automatic snapshot policy.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'DiskNums' => ['description' => 'The number of disks to which the automatic snapshot policy is applied.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'EnableCrossRegionCopy' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'RepeatWeekdays' => ['description' => 'The days of the week on which automatic snapshots are created. Valid values: 1 to 7, which correspond to Monday through Sunday. For example, 1 indicates Monday. Multiple days can be specified.', 'type' => 'string', 'example' => '["6"]', 'title' => ''], 'VolumeNums' => ['description' => 'The number of extended volumes to which the automatic snapshot policy is applied.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-aek2kkmhmhs****', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tag key-value pairs of the automatic snapshot policy.', 'type' => 'array', 'items' => [ 'description' => 'The tag key-value pairs of the automatic snapshot policy.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the automatic snapshot policy.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the automatic snapshot policy.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'CopyEncryptionConfiguration' => [ 'description' => 'The encryption configuration for cross-region snapshot replication.', 'type' => 'object', 'properties' => [ 'Encrypted' => ['description' => 'Indicates whether encryption is enabled for cross-region snapshot replication. Valid values:'."\n" ."\n" .'- true: Encryption is enabled.'."\n" .'- false: Encryption is disabled.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'KMSKeyId' => ['description' => 'The ID of the KMS key used for encrypted cross-region snapshot replication.', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Type' => ['description' => 'The type of the automatic snapshot policy.'."\n" ."\n" .'- Custom: a user-defined snapshot policy.'."\n" .'- System: a system-defined snapshot policy.', 'type' => 'string', 'example' => 'Custom', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidTag.Mismatch', 'errorMessage' => 'The specified Tag.n.Key and Tag.n.Value are not match.', 'description' => 'The specified Tag.N.Key and Tag.N.Value parameters do not correspond to each other.'], ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query automatic snapshot policies', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-02-28T07:48:42.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-02-02T03:34:53.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-06-02T02:05:52.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAutoSnapshotPolicyEx'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeAutoSnapshotPolicyEx', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'AutoSnapshotPolicy', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotpolicy/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'AutoSnapshotPolicy', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotpolicy/{#snapshotpolicyId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"AutoSnapshotPolicies\\": {\\n \\"AutoSnapshotPolicy\\": [\\n {\\n \\"TimePoints\\": \\"[\\\\\\"1\\\\\\"]\\",\\n \\"CreationTime\\": \\"2019-12-10T16:00Z\\",\\n \\"Status\\": \\"Normal\\",\\n \\"AutoSnapshotPolicyName\\": \\"testAutoSnapshotPolicyName\\",\\n \\"TargetCopyRegions\\": \\"test\\",\\n \\"CopiedSnapshotsRetentionDays\\": 0,\\n \\"AutoSnapshotPolicyId\\": \\"sp-bp67acfmxazb4ph****\\",\\n \\"RetentionDays\\": 7,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"DiskNums\\": 1,\\n \\"EnableCrossRegionCopy\\": false,\\n \\"RepeatWeekdays\\": \\"[\\\\\\"6\\\\\\"]\\",\\n \\"VolumeNums\\": 2,\\n \\"ResourceGroupId\\": \\"rg-aek2kkmhmhs****\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"CopyEncryptionConfiguration\\": {\\n \\"Encrypted\\": false,\\n \\"KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\"\\n },\\n \\"Type\\": \\"Custom\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribeAvailableResource' => [ 'summary' => 'Queries the inventory status of resources in a specified zone. This operation is primarily used to check whether target resources, such as instance types and system disk types, are available in a specific zone before you create instances (RunInstances) or modify instance specifications (ModifyInstanceSpec).', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28903', 'abilityTreeNodes' => ['FEATUREecs2UXJI2'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the destination region. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the resource. For more information, see [Billing overview](~~25398~~). Valid values: '."\n" .' '."\n" .'- PrePaid: subscription. '."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .'Default value: PostPaid.', 'type' => 'string', 'required' => false, 'example' => 'PrePaid', 'title' => ''], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => ['description' => 'The bidding policy for pay-as-you-go instances. Valid values: '."\n" .' '."\n" .'- NoSpot: a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: a spot instance with a maximum price limit.'."\n" .'- SpotAsPriceGo: a spot instance priced at the market price with the pay-as-you-go price as the upper limit.'."\n" ."\n" .'Default value: NoSpot.'."\n" ."\n" .'This parameter takes effect only when InstanceChargeType is set to `PostPaid`.', 'type' => 'string', 'required' => false, 'example' => 'NoSpot', 'title' => ''], ], [ 'name' => 'SpotDuration', 'in' => 'query', 'schema' => ['description' => 'The protection period of the spot instance. Unit: hours. Default value: 1. Valid values:'."\n" .'- 1: After a spot instance is created, Alibaba Cloud ensures that the instance is not automatically released within 1 hour. After 1 hour, the system compares the bid price with the market price and checks the inventory to determine whether to retain automatic release the instance.'."\n" .'- 0: After a spot instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system compares the bid price with the market price and checks the inventory to determine whether to retain automatic release the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. Select an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'> This parameter takes effect only when `InstanceChargeType` is set to `PostPaid` and `SpotStrategy` is set to `SpotWithPriceLimit` or `SpotAsPriceGo`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '6', 'minimum' => '0', 'example' => '1', 'title' => ''], ], [ 'name' => 'DestinationResource', 'in' => 'query', 'schema' => ['description' => 'The type of resource to query. Valid values: '."\n" .' '."\n" .'- Zone: zone.'."\n" .'- IoOptimized: I/O optimized.'."\n" .'- InstanceType: instance type.'."\n" .'- Network: network type.'."\n" .'- ddh: dedicated host.'."\n" .'- SystemDisk: system disk.'."\n" .'- DataDisk: data disk.'."\n" ."\n" .'> When DestinationResource is set to `SystemDisk`, you must specify InstanceType because system disks are restricted by instance types.'."\n" ."\n" .'For more information about how to set the DestinationResource parameter, see the **operation description** section of this topic.', 'type' => 'string', 'required' => true, 'example' => 'InstanceType', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID.'."\n" ."\n" .'Default value: null. The operation returns resources that match the query conditions across all zones in the specified region (RegionId).', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-e', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is an I/O optimized instance. Valid values:'."\n" ."\n" .'- none: non-I/O optimized instance.'."\n" .'- optimized: I/O optimized instance.'."\n" ."\n" .'Default value: optimized.', 'type' => 'string', 'required' => false, 'example' => 'optimized', 'title' => ''], ], [ 'name' => 'DedicatedHostId', 'in' => 'query', 'schema' => ['description' => 'The ID of the dedicated host.', 'type' => 'string', 'required' => false, 'example' => 'dh-bp165p6xk2tlw61e****', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type. For more information, see [Instance family](~~25378~~). You can also invoke [DescribeInstanceTypes](~~25620~~) to query the most recent instance type list.'."\n" ."\n" .'For more information about how to set the InstanceType parameter, see the **operation description** section at the beginning of this topic.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5.large', 'title' => ''], ], [ 'name' => 'SystemDiskCategory', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. Valid values: '."\n" .' '."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- ephemeral_ssd: local SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .''."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .''."\n" ."\n" .'Default value description:'."\n" ."\n" .'- If InstanceType is set to a retired instance type, the default value is `cloud`.'."\n" .'- In other cases, the default value is `cloud_efficiency`.After January 30, 2026, for instance types that support only cloud_essd, the default value is changed from cloud_efficiency to cloud_essd PL0. For more information, see [Change notice](https://www.aliyun.com/notice/117844).'."\n" ."\n" .'> When ResourceType is set to instance and DestinationResource is set to DataDisk, the SystemDiskCategory parameter is required. If you do not specify this parameter, the default value takes effect.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'DataDiskCategory', 'in' => 'query', 'schema' => ['description' => 'The category of the data disk. Valid values: '."\n" .' '."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- ephemeral_ssd: local SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .''."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .'', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'NetworkCategory', 'in' => 'query', 'schema' => ['description' => 'The network type. Valid values: '."\n" .' '."\n" .'- vpc: virtual private cloud (VPC).'."\n" .'- classic: classic network. The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'string', 'required' => false, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'Cores', 'in' => 'query', 'schema' => ['description' => 'The number of vCPU cores of the instance type. For valid values, see [Instance family](~~25378~~).'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to InstanceType.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'Memory', 'in' => 'query', 'schema' => ['description' => 'The memory size of the instance type. Unit: GiB. For valid values, see [Instance family](~~25378~~).'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to InstanceType.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '8.0', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- instance: ECS instance.'."\n" .'- disk: cloud disk.'."\n" .'- reservedinstance: reserved instance.'."\n" .'- ddh: dedicated host.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'Scope', 'in' => 'query', 'schema' => ['description' => 'The scope of the reserved instance. Valid values:'."\n" .' '."\n" .'- Region: regional.'."\n" .'- Zone: zonal.', 'type' => 'string', 'required' => false, 'example' => 'Region', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0041D94C-FB92-4C49-B115-259DA1C*****', 'title' => ''], 'AvailableZones' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableZone' => [ 'description' => 'The collection of zone inventory information.', 'type' => 'array', 'items' => [ 'description' => 'The zone inventory information.', 'type' => 'object', 'properties' => [ 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-e', 'title' => ''], 'Status' => ['description' => 'The status of the zone. Valid values: '."\n" .' '."\n" .'- Available: Resources are available for sale. This indicates that the zone has resources available for sale, not limited to the specific resource being queried.'."\n" .'- SoldOut: Resources are sold out. This indicates that no resources are available for sale in the zone.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'StatusCategory' => ['description' => 'The detailed status of the zone based on inventory. Valid values:'."\n" ."\n" .'- WithStock: Resources are in stock and will be replenished.'."\n" .'- ClosedWithStock: Resources are in stock but will not be replenished.'."\n" .'- WithoutStock: Resources are sold out but will be replenished. Use instance types with the WithStock status.'."\n" .'- ClosedWithoutStock: Resources are sold out and will not be replenished. Use instance types with the WithStock status.', 'type' => 'string', 'example' => 'WithStock', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'AvailableResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableResource' => [ 'description' => 'The array of available resource types.', 'type' => 'array', 'items' => [ 'description' => 'The collection of available resources.', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The resource type. Valid values: '."\n" .' '."\n" .'- Zone: zone.'."\n" .'- IoOptimized: I/O optimized. '."\n" .'- InstanceType: instance type.'."\n" .'- SystemDisk: system disk. '."\n" .'- DataDisk: data disk. '."\n" .'- Network: network type.'."\n" .'- ddh: dedicated host.', 'type' => 'string', 'example' => 'InstanceType', 'title' => ''], 'SupportedResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedResource' => [ 'description' => 'The array of specific supported resources that can be created.', 'type' => 'array', 'items' => [ 'description' => 'The information about a specific supported resource.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the specific resource type. Valid values: '."\n" .' '."\n" .'- Available: Resources are available for sale. '."\n" .'- SoldOut: Resources are sold out.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'Value' => ['description' => 'The resource value.', 'type' => 'string', 'example' => 'ecs.d1ne.xlarge', 'title' => ''], 'Max' => ['description' => 'The maximum disk capacity. Unit: GiB.'."\n" ."\n" .'> This parameter takes effect only when DestinationResource is set to `SystemDisk` or `DataDisk`.', 'type' => 'integer', 'format' => 'int32', 'example' => '2048', 'title' => ''], 'Unit' => ['description' => 'The unit of the disk capacity.'."\n" ."\n" .'> This parameter takes effect only when DestinationResource is set to `SystemDisk` or `DataDisk`.', 'type' => 'string', 'example' => 'GiB', 'title' => ''], 'StatusCategory' => ['description' => 'The detailed status of the resource based on inventory. Valid values:'."\n" ."\n" .'- WithStock: Resources are in stock and will be replenished.'."\n" .'- ClosedWithStock: Resources are in stock but will not be replenished.'."\n" .'- WithoutStock: Resources are sold out but will be replenished. Use instance types with the WithStock status.'."\n" .'- ClosedWithoutStock: Resources are sold out and will not be replenished. Use instance types with the WithStock status.', 'type' => 'string', 'example' => 'WithStock', 'title' => ''], 'Min' => ['description' => 'The minimum disk capacity. Unit: GiB.'."\n" ."\n" .'> This parameter takes effect only when DestinationResource is set to `SystemDisk` or `DataDisk`.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The specified InstanceChargeType is not valid.', 'description' => 'The specified InstanceChargeType parameter is invalid.'], ['errorCode' => 'Invalid.Param', 'errorMessage' => 'The input parameter DestinationResource that is mandatory for processing this request is not supplied.', 'description' => 'The specified DestinationResource parameter is invalid.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidDedicatedHostId.NotFound', 'errorMessage' => 'The specified DedicatedHostId does not exist.', 'description' => ''], ['errorCode' => 'InvalidParam.TypeAndCpuMem.Conflict', 'errorMessage' => 'The specified \'InstanceType\' and \'Cores\',\'Memory\' are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParam.Cores', 'errorMessage' => 'The specified parameter \'Cores\' should be empty.', 'description' => 'The specified parameter \'Cores\' should be empty.'], ['errorCode' => 'InvalidParam.Memory', 'errorMessage' => 'The specified parameter \'Memory\' should be empty.', 'description' => 'The specified parameter \'Memory\' should be empty.'], ['errorCode' => 'InvalidParameter.Scope', 'errorMessage' => 'The specified parameter Scope is invalid.', 'description' => 'The specified parameter Scope is invalid.'], ['errorCode' => 'OperationDenied.RegionIdNotSupported', 'errorMessage' => 'The region does not support preemptible instances.', 'description' => ''], ['errorCode' => 'OperationDenied.FlavorNotSupported', 'errorMessage' => 'The flavor does not support preemptible instances.', 'description' => ''], ['errorCode' => 'OperationDenied.TimestampNotSupported', 'errorMessage' => 'Preemptible instances are not for sale for current time.', 'description' => ''], ['errorCode' => 'InvalidParameter.ResourceOwnerId', 'errorMessage' => 'The specified parameter ResourceOwnerId is not available anymore.', 'description' => ''], ], [ ['errorCode' => 'Invalid.RegionId', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'Unavailable.Regions', 'errorMessage' => 'The available region does not exist.', 'description' => ''], ['errorCode' => 'Invalid.ResourceType', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => 'The specified resource type is invalid.'], ['errorCode' => 'Invalid.DestinationResource', 'errorMessage' => 'The specified DestinationResource is not valid.', 'description' => 'The specified DestinationResource parameter is invalid.'], ['errorCode' => 'Invalid.IoOptimized', 'errorMessage' => 'The specified IoOptimized is not valid.', 'description' => 'The specified IoOptimized parameter is invalid.'], ['errorCode' => 'Invalid.NetworkCategory', 'errorMessage' => 'The specified NetworkCategory is not valid.', 'description' => 'The specified NetworkCategory parameter is invalid.'], ['errorCode' => 'Invalid.SpotStrategy', 'errorMessage' => 'The specified SpotStrategy is not valid.', 'description' => 'The specified SpotStrategy parameter is invalid.'], ['errorCode' => 'Invalid.NetworkType', 'errorMessage' => 'The specified NetworkType is not valid.', 'description' => 'The specified NetworkType parameter is invalid.'], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceId is not found in our records.', 'description' => 'The specified resource does not exist. Check whether the resource ID is correct.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidDedicatedHostId.NotFound', 'errorMessage' => 'The specified Dedicated Host does not exist.', 'description' => 'The specified dedicated host does not exist.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0041D94C-FB92-4C49-B115-259DA1C*****\\",\\n \\"AvailableZones\\": {\\n \\"AvailableZone\\": [\\n {\\n \\"ZoneId\\": \\"cn-hangzhou-e\\",\\n \\"Status\\": \\"Available\\",\\n \\"StatusCategory\\": \\"WithStock\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AvailableResources\\": {\\n \\"AvailableResource\\": [\\n {\\n \\"Type\\": \\"InstanceType\\",\\n \\"SupportedResources\\": {\\n \\"SupportedResource\\": [\\n {\\n \\"Status\\": \\"Available\\",\\n \\"Value\\": \\"ecs.d1ne.xlarge\\",\\n \\"Max\\": 2048,\\n \\"Unit\\": \\"GiB\\",\\n \\"StatusCategory\\": \\"WithStock\\",\\n \\"Min\\": 20\\n }\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query resource inventory in a zone', 'description' => 'The DestinationResource parameter has different logic and requirements depending on its value. In the following ordered list, a lower-ranked value requires more parameters to be set. You cannot use a lower-ranked value to filter resources of a higher-ranked category.'."\n" ."\n" .'- Value order: `Zone > IoOptimized > InstanceType = Network = ddh > SystemDisk > DataDisk`'."\n" ."\n" .'- Examples:'."\n" ."\n" .' - If DestinationResource is set to `DataDisk`:'."\n" ."\n" .' - If `ResourceType` is set to `disk`, the operation queries data disk types that are not associated with a specific ECS instance type. In this case, the InstanceType parameter is optional.'."\n" ."\n" .' - If `ResourceType` is set to `instance`, the operation queries data disk types that can be attached to an ECS instance. Because instance types impose restrictions on data disks, you must specify both `InstanceType` and `DataDiskCategory`.'."\n" ."\n" .' - If DestinationResource is set to `SystemDisk` and `ResourceType` is set to `instance`, you must specify the InstanceType parameter because ECS instance types impose restrictions on system disks.'."\n" ."\n" .' - If DestinationResource is set to `InstanceType`, specify the IoOptimized and InstanceType parameters.'."\n" ."\n" .' - Query the inventory of ecs.g5.large across all zones in a specified region: `RegionId=ap-southeast-1 &DestinationResource=InstanceType &IoOptimized=optimized &InstanceType=ecs.g5.large`.'."\n" ."\n" .' - Query the zones in a specified region where ecs.g5.large is available: `RegionId=ap-southeast-1 &DestinationResource=Zone &IoOptimized=optimized &InstanceType=ecs.g5.large`.'."\n" ."\n" .'
'."\n" .'Query the zones in the China (Hangzhou) region where the ecs.g5.large instance type is available.'."\n" ."\n" .'```'."\n" .'"RegionId": "cn-hangzhou",'."\n" .'"DestinationResource": "Zone",'."\n" .'"InstanceType": "ecs.g5.large"'."\n" .'```'."\n" .'
'."\n" ."\n" .'
'."\n" .'Query the inventory of the ecs.g5.large instance type across all zones in the China (Hangzhou) region.'."\n" ."\n" .'```'."\n" .'"RegionId": "cn-hangzhou",'."\n" .'"DestinationResource": "InstanceType",'."\n" .'"InstanceType": "ecs.g5.large"'."\n" .'```'."\n" .'
'."\n" ."\n" .'
'."\n" .'[Purchase only a data disk] Query the inventory of the cloud_efficiency data disk type in Zone B of the China (Hangzhou) region.'."\n" ."\n" .'```'."\n" .'"RegionId": "cn-hangzhou",'."\n" .'"ZoneId": "cn-hangzhou-b",'."\n" .'"ResourceType": "disk",'."\n" .'"DestinationResource": "DataDisk"'."\n" .'```'."\n" .'
'."\n" ."\n" .'
'."\n" .'[Purchase an ECS instance and a system disk] Query the inventory of the ecs.g7.large instance type with the cloud_essd system disk type in Zone B of the China (Hangzhou) region.'."\n" ."\n" .'```'."\n" .'"RegionId": "cn-hangzhou",'."\n" .'"ZoneId": "cn-hangzhou-b",'."\n" .'"ResourceType": "instance",'."\n" .'"InstanceType": "ecs.g7.large",'."\n" .'"DestinationResource": "SystemDisk",'."\n" .'"SystemDiskCategory": "cloud_essd"'."\n" .'```'."\n" .'
', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-24T08:40:56.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-27T08:46:41.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-03-25T08:49:40.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeAvailableResource'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], ], 'DescribeBandwidthLimitation' => [ 'summary' => 'Calls DescribeBandwidthLimitation to query the maximum public bandwidth that can be purchased, upgraded, or downgraded for different instance types.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28904', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the target region. You can call [DescribeRegions](~~25609~~) to query the most recent region list. ', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instance. For more information, see [Billing overview](~~25398~~). Valid values:'."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .'Default value: PostPaid.', 'type' => 'string', 'required' => false, 'example' => 'PostPaid', 'title' => ''], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => ['description' => 'The bidding strategy for pay-as-you-go instances. Valid values:'."\n" ."\n" .'- NoSpot: a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: a preemptible instance with a user-defined maximum hourly price.'."\n" .'- SpotAsPriceGo: a preemptible instance priced at the market price at the time of purchase.'."\n" ."\n" .'Default value: NoSpot.'."\n" ."\n" .'> The SpotStrategy parameter takes effect only when the InstanceChargeType parameter is set to PostPaid.', 'type' => 'string', 'required' => false, 'example' => 'NoSpot', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type. For more information, see [Instance families](~~25378~~).', 'type' => 'string', 'required' => true, 'example' => 'ecs.g5.large', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The resource ID.'."\n" ."\n" .'> When you set the OperationType parameter to Upgrade or Downgrade, the ResourceId parameter is required.', 'type' => 'string', 'required' => false, 'example' => 'i-bp67acfmxazb4ph***', 'title' => ''], ], [ 'name' => 'OperationType', 'in' => 'query', 'schema' => ['description' => 'The operation type for querying public bandwidth limits. Valid values:'."\n" ."\n" .'- Upgrade: upgrades the public bandwidth.'."\n" .'- Downgrade: downgrades the public bandwidth.'."\n" .'- Create: creates an ECS instance.'."\n" ."\n" .'Default value: Create.', 'type' => 'string', 'required' => false, 'example' => 'Upgrade', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'Bandwidths' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Bandwidth' => [ 'description' => 'The collection of maximum public bandwidth information.', 'type' => 'array', 'items' => [ 'description' => 'The collection of maximum public bandwidth information.', 'type' => 'object', 'properties' => [ 'InternetChargeType' => ['description' => 'The billing method for network usage. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.', 'type' => 'string', 'example' => 'PayByTraffic', 'title' => ''], 'Max' => ['description' => 'The maximum public bandwidth.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'Min' => ['description' => 'The minimum public bandwidth.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'Unit' => ['description' => 'The unit of public bandwidth.', 'type' => 'string', 'example' => 'Mbps', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The specified InstanceChargeType is not valid.', 'description' => 'The specified InstanceChargeType parameter is invalid.'], ['errorCode' => 'InvalidParam', 'errorMessage' => 'The input parameter DestinationResource that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType beyond the permitted range.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified ecs instance not found.', 'description' => ''], ], 404 => [ ['errorCode' => 'Invalid.ResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => ''], ['errorCode' => 'Invalid.NetworkCategory', 'errorMessage' => 'The specified NetworkCategory is not valid.', 'description' => 'The specified NetworkCategory parameter is invalid.'], ['errorCode' => 'Invalid.SpotStrategy', 'errorMessage' => 'The specified SpotStrategy is not valid.', 'description' => 'The specified SpotStrategy parameter is invalid.'], ['errorCode' => 'Invalid.IoOptimized', 'errorMessage' => 'The specified IoOptimized is not valid.', 'description' => 'The specified IoOptimized parameter is invalid.'], ['errorCode' => 'Invalid.ResourceId', 'errorMessage' => 'The specified ResourceId is not valid.', 'description' => 'The specified ResourceId parameter is invalid.'], ['errorCode' => 'Invalid.InstancePayType', 'errorMessage' => 'The specified InstancePayType is not valid.', 'description' => 'The specified InstanceChargeType parameter is invalid.'], ['errorCode' => 'Invalid.OperationType', 'errorMessage' => 'The specified OperationType is not valid.', 'description' => 'The specified parameter OperationType is invalid.'], ], ], 'title' => 'Query the maximum public bandwidth for different instance types', 'changeSet' => [ ['createdAt' => '2023-03-07T06:06:07.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBandwidthLimitation'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeBandwidthLimitation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Bandwidths\\": {\\n \\"Bandwidth\\": [\\n {\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"Max\\": 100,\\n \\"Min\\": 0,\\n \\"Unit\\": \\"Mbps\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeBandwidthPackages' => [ 'summary' => 'DescribeBandwidthPackages', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the bandwidth package is located.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'BandwidthPackageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the bandwidth package.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'NatGatewayId', 'in' => 'query', 'schema' => ['description' => 'The ID of the nat gateway. If specified, the operation returns only bandwidth packages associated with the specified nat gateway.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Starting value: 1. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page. Valid values: 1 to 100. Default value: 20.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of matching entries.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'BandwidthPackages' => [ 'itemNode' => true, 'description' => 'Details of the queried bandwidth packages.', 'type' => 'object', 'properties' => [ 'BandwidthPackage' => [ 'description' => 'An array of bandwidth packages.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the bandwidth package. Valid values: `Available`, `Pending`, `Modifying`, `Deleting`, and `Deleted`.', 'type' => 'string', 'title' => '', 'example' => ''], 'CreationTime' => ['description' => 'The time when the bandwidth package was created. The time is in UTC and is formatted as `YYYY-MM-DDThh:mm:ssZ`.', 'type' => 'string', 'title' => '', 'example' => ''], 'IpCount' => ['description' => 'The number of public IP addresses in the bandwidth package.', 'type' => 'string', 'title' => '', 'example' => ''], 'RegionId' => ['description' => 'The ID of the region to which the bandwidth package belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'InstanceChargeType' => ['description' => 'The billing method for the bandwidth package. Valid values: `PostPaid` and `PrePaid`.', 'type' => 'string', 'title' => '', 'example' => ''], 'BandwidthPackageId' => ['description' => 'The ID of the bandwidth package.', 'type' => 'string', 'title' => '', 'example' => ''], 'Description' => ['description' => 'The description of the bandwidth package.', 'type' => 'string', 'title' => '', 'example' => ''], 'Bandwidth' => ['description' => 'The bandwidth of the bandwidth package, in Mbit/s.', 'type' => 'string', 'title' => '', 'example' => ''], 'NatGatewayId' => ['description' => 'The ID of the NAT Gateway that uses the bandwidth package.', 'type' => 'string', 'title' => '', 'example' => ''], 'ZoneId' => ['description' => 'The ID of the zone to which the bandwidth package belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'InternetChargeType' => ['description' => 'The billing method for network usage. Valid values: `PayByTraffic` and `PayByBandwidth`.', 'type' => 'string', 'title' => '', 'example' => ''], 'BusinessStatus' => ['description' => 'The service status of the bandwidth package. Valid values: `Normal` and `FinancialLocked`.', 'type' => 'string', 'title' => '', 'example' => ''], 'Name' => ['description' => 'The name of the bandwidth package.', 'type' => 'string', 'title' => '', 'example' => ''], 'ISP' => ['description' => 'The line type. Valid values: `BGP` and `BGP_PRO`.', 'type' => 'string', 'title' => '', 'example' => ''], 'PublicIpAddresses' => [ 'itemNode' => true, 'description' => 'The public IP addresses in the bandwidth package.', 'type' => 'object', 'properties' => [ 'PublicIpAddresse' => [ 'description' => 'An array of public IP addresses.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'IpAddress' => ['description' => 'The public IP address.', 'type' => 'string', 'title' => '', 'example' => ''], 'AllocationId' => ['description' => 'The ID of the EIP associated with the public IP address.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAliuid', 'errorMessage' => 'User Id is not valid.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeBandwidthPackages'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeBandwidthPackages', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"BandwidthPackages\\": {\\n \\"BandwidthPackage\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"CreationTime\\": \\"\\",\\n \\"IpCount\\": \\"\\",\\n \\"RegionId\\": \\"\\",\\n \\"InstanceChargeType\\": \\"\\",\\n \\"BandwidthPackageId\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"Bandwidth\\": \\"\\",\\n \\"NatGatewayId\\": \\"\\",\\n \\"ZoneId\\": \\"\\",\\n \\"InternetChargeType\\": \\"\\",\\n \\"BusinessStatus\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"ISP\\": \\"\\",\\n \\"PublicIpAddresses\\": {\\n \\"PublicIpAddresse\\": [\\n {\\n \\"IpAddress\\": \\"\\",\\n \\"AllocationId\\": \\"\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeBandwidthPackages', ], 'DescribeCapacityReservationInstances' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28906', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the capacity reservation. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'- Valid values: 1 to 100.'."\n" ."\n" .'- Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', '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. You must specify the token that is obtained from the previous query as the value of the NextToken parameter.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the capacity reservation.', 'type' => 'string', 'required' => true, 'example' => 'crp-bp67acfmxazb4****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'MaxResults' => ['description' => 'The maximum number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'CapacityReservationItem' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceIdSet' => [ 'description' => 'Details about the instances that match the capacity reservation.', 'type' => 'array', 'items' => [ 'description' => 'The instance that matches the capacity reservation.', 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The ID of the instance.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id is invalid.', 'description' => ''], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The InstanceType does not match the PrivatePool.', 'description' => 'The instance type and the private pool do not match.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The ZoneId does not match the PrivatePool.', 'description' => 'The zone and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool has been used up.', 'description' => 'The resource is exhausted.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'MissingParameter.PackageType', 'errorMessage' => 'The specified parameter "PackageType" can not be empty.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" can not be empty.', 'description' => 'Specifies that the parameter "PrivatePoolOptions.ids" cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" can not be empty.', 'description' => 'The specified parameter \'InstanceCpuCocount\' cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceAmount', 'errorMessage' => 'The specified parameter "InstanceAmount" can not be empty.', 'description' => 'The specified parameter InstanceAmount cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time.', 'description' => 'The specified parameter InstanceCpuCoreCount and InstanceAmount cannot be both empty.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyZoneIds', 'errorMessage' => 'Too many ZoneIds in the request.', 'description' => 'The number of specified zone IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyInstanceTypes', 'errorMessage' => 'Too many InstanceTypes in the request.', 'description' => 'The number of specified instance types exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyUnpaidPrivatePool', 'errorMessage' => 'Too many PrivatePools create but still unpaid.', 'description' => 'Multiple private pools are created but not paid.'], ['errorCode' => 'Invalid.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'Both InstanceCpuCoreCount and InstanceAmount are provided.', 'description' => 'The InstanceCpuCoreCount and InstanceAmount parameters cannot be both specified.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id.', 'description' => 'The specified private pool ID does not exist.'], ['errorCode' => 'Invalid.PackageType', 'errorMessage' => 'The specified parameter "PackageType" is invalid.', 'description' => 'The specified parameter PackageType is invalid.'], ['errorCode' => 'Invalid.PrivatePool.Purchase', 'errorMessage' => 'The PrivatePool has already paid.', 'description' => 'The private pool is already paid.'], ['errorCode' => 'Invalid.AssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'RepeatStartPrivatePool', 'errorMessage' => 'PrivatePool has already been started.', 'description' => 'The private pool is already started.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'DescribeCapacityReservationInstances', 'summary' => 'Queries the Elastic Compute Service (ECS) instances that match a capacity reservation.', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeCapacityReservationInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeCapacityReservationInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'CapacityReservation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:capacityreservation/{#CapacityReservationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 10,\\n \\"MaxResults\\": 10,\\n \\"CapacityReservationItem\\": {\\n \\"InstanceIdSet\\": [\\n {\\n \\"InstanceId\\": \\"i-bp67acfmxazb4****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeCapacityReservations' => [ 'summary' => 'Returns details for one or more capacity reservation services, including their status, start and end times, private pool mode, and used instance count.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28907', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the capacity reservation. You can call the [DescribeRegions](~~25609~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. When you use this parameter to filter resources, the operation returns a maximum of 1,000 resources.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags attached to the capacity reservations.', 'type' => 'array', 'items' => [ 'description' => 'A tag.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the Nth tag. You can specify up to 20 tags.'."\n" ."\n" .'A maximum of 1,000 resources that match the specified tags can be returned. If you specify multiple tags, only resources that have all of these tags are returned. If the number of matching resources exceeds 1,000, call the [ListTagResources](~~110425~~) operation to query the resources.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of the Nth tag. You can specify up to 20 tags.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set the value to the `NextToken` value returned in the previous call to retrieve the next page of results.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Ids', 'in' => 'query', 'schema' => ['description' => 'The IDs of the capacity reservations. The value can be a JSON array that consists of up to 100 capacity reservation IDs.', 'type' => 'string', 'required' => false, 'example' => '["crp-bp1gubrkqutenqdd****", "crp-bp67acfmxazb5****"]', 'title' => ''], ], [ 'name' => 'Platform', 'in' => 'query', 'schema' => ['description' => 'The operating system of the instance. Valid values:'."\n" ."\n" .'- windows: Returns only capacity reservations for Windows.'."\n" ."\n" .'- linux: Returns only capacity reservations for Linux.'."\n" ."\n" .'- all: Returns all capacity reservations.'."\n" ."\n" .'Default value: all.', 'type' => 'string', 'required' => false, 'example' => 'linux', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type. You can use this parameter to query only active capacity reservations. To query released capacity reservations, you must specify `PrivatePoolOptions.Ids`.', 'type' => 'string', 'required' => false, 'example' => 'ecs.c6.large', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the capacity reservation.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-h', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instance. Valid values:'."\n" ."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .'- PrePaid: subscription.'."\n" ."\n" .'Default value: PostPaid.', 'type' => 'string', 'required' => false, 'example' => 'PostPaid', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the capacity reservation. Valid values:'."\n" ."\n" .'- All: all statuses.'."\n" ."\n" .'- Pending: The capacity reservation is initializing. This is the initial status of a scheduled capacity reservation.'."\n" ."\n" .'- Preparing: The system is preparing resources for the scheduled capacity reservation.'."\n" ."\n" .'- Prepared: The resources are prepared, and the scheduled capacity reservation is waiting to take effect.'."\n" ."\n" .'- Active: The capacity reservation is active.'."\n" ."\n" .'- Released: The capacity reservation is released, either manually or automatically upon expiration.'."\n" ."\n" .'If you do not specify this parameter, the operation returns capacity reservations in all states except `Pending` and `Released`.', 'type' => 'string', 'required' => false, 'example' => 'Active', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The token to retrieve the next page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'TotalCount' => ['description' => 'The total number of capacity reservations that match the query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaxResults' => ['description' => 'The maximum number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'CapacityReservationSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'CapacityReservationItem' => [ 'description' => 'Details about the capacity reservations.', 'type' => 'array', 'items' => [ 'description' => 'The details of a capacity reservation.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the capacity reservation. Valid values:'."\n" ."\n" .'- Pending: The capacity reservation is being initialized.'."\n" ."\n" .'- Preparing: The capacity reservation is being prepared.'."\n" ."\n" .'- Prepared: The capacity reservation is ready to take effect.'."\n" ."\n" .'- Active: The capacity reservation is effective.'."\n" ."\n" .'- Released: The capacity reservation has been released, either manually or automatically upon expiration.', 'type' => 'string', 'example' => 'Active', 'title' => ''], 'TimeSlot' => ['description' => '> This parameter is available by invitation only.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'PrivatePoolOptionsMatchCriteria' => ['description' => 'The matching mode of the private pool generated by the capacity reservation. Valid values:'."\n" ."\n" .'- Open: The system automatically matches new instances to an open private pool. If no matching private pool is available, instances are launched using public pool resources.'."\n" ."\n" .'- Target: Instances must be explicitly launched into a specific private pool. The launch fails if the specified private pool is unavailable.', 'type' => 'string', 'example' => 'Open', 'title' => ''], 'PrivatePoolOptionsId' => ['description' => 'The ID of the capacity reservation.', 'type' => 'string', 'example' => 'crp-bp1gubrkqutenqdd****', 'title' => ''], 'PrivatePoolOptionsName' => ['description' => 'The name of the capacity reservation.', 'type' => 'string', 'example' => 'crpTestName', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the capacity reservation.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'InstanceChargeType' => ['description' => 'The billing method for instances that use the capacity reservation. Valid values:'."\n" ."\n" .'- PostPaid: Pay-as-you-go'."\n" ."\n" .'- PrePaid: Subscription', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''], 'EndTime' => ['description' => 'The time when the capacity reservation expires. This parameter is valid only when EndTimeType is set to Limited.', 'type' => 'string', 'example' => '2021-02-19T03:02Z', 'title' => ''], 'StartTime' => ['description' => 'The time when the capacity reservation takes effect.', 'type' => 'string', 'example' => '2021-02-19T02:01Z', 'title' => ''], 'Description' => ['description' => 'The description of the capacity reservation.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'EndTimeType' => ['description' => 'The release mode of the capacity reservation. Valid values:'."\n" ."\n" .'- Limited: The capacity reservation is automatically released at a specified time.'."\n" ."\n" .'- Unlimited: The capacity reservation must be manually released. It does not have an expiration time.', 'type' => 'string', 'example' => 'Unlimited', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the capacity reservation belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'Platform' => ['description' => 'The operating system for instances that can use the capacity reservation. Valid values:'."\n" ."\n" .'- windows'."\n" ."\n" .'- linux', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'AllocatedResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AllocatedResource' => [ 'description' => 'Details about the allocated resources.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'UsedAmount' => ['description' => 'The number of reserved instances that are in use.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'TotalAmount' => ['description' => 'The total number of reserved instances of this instance type in this zone.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'AvailableAmount' => ['description' => 'The number of reserved instances that are still available.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'FailedAmount' => ['type' => 'integer', 'format' => 'int32', 'example' => '1', 'description' => '', 'title' => ''], 'LockedAmount' => ['type' => 'integer', 'format' => 'int32', 'example' => '1', 'description' => '', 'title' => ''], 'zoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-h', 'title' => ''], 'InstanceType' => ['description' => 'The instance type of the allocated resources.', 'type' => 'string', 'example' => 'ecs.c6.large', 'title' => ''], 'CapacityReservationUsages' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'CapacityReservationUsage' => [ 'description' => 'The usage details of the capacity reservation, broken down by Alibaba Cloud account or service.', 'type' => 'array', 'items' => [ 'description' => 'A usage summary.', 'type' => 'object', 'properties' => [ 'AccountId' => ['description' => 'The ID of the Alibaba Cloud account that used the capacity reservation.', 'type' => 'string', 'example' => '105909559088****', 'title' => ''], 'ServiceName' => ['description' => 'The name of the Alibaba Cloud service that used the capacity reservation.', 'type' => 'string', 'example' => 'maxcompute.aliyuncs.com', 'title' => ''], 'UsedAmount' => ['description' => 'The number of instances used by the Alibaba Cloud account or service.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => 'The details of a resource allocation.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the capacity reservation.', 'type' => 'array', 'items' => [ 'description' => 'A tag of the capacity reservation.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'StartTimeType' => ['description' => 'Indicates when the capacity reservation becomes effective. Valid values:'."\n" ."\n" .'- Now: The capacity reservation takes effect immediately after it is created.'."\n" ."\n" .'- Later: The capacity reservation takes effect at a specified time.', 'type' => 'string', 'example' => 'Now', 'title' => ''], 'SavingPlanId' => ['description' => 'The ID of the Savings Plan that is associated with the capacity reservation.', 'type' => 'string', 'example' => 'spn-c29b5e18pJMT****', 'title' => ''], 'ReservedInstanceId' => ['description' => 'The ID of the Reserved Instance that is associated with the capacity reservation.', 'type' => 'string', 'example' => 'ri-bpzhex2ulpzf53****', 'title' => ''], 'CapacityReservationOwnerId' => ['description' => 'The ID of the capacity reservation owner.', 'type' => 'string', 'example' => '100************7'."\n", 'title' => ''], 'DeliveryTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'UnlockedTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The specified PrivatePoolOptions.Name is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified PrivatePoolOptions.Ids is invalid.', 'description' => ''], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The InstanceType does not match the PrivatePool.', 'description' => 'The instance type and the private pool do not match.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The ZoneId does not match the PrivatePool.', 'description' => 'The zone and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool has been used up.', 'description' => 'The resource is exhausted.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'MissingParameter.PackageType', 'errorMessage' => 'The specified parameter "PackageType" can not be empty.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" can not be empty.', 'description' => 'Specifies that the parameter "PrivatePoolOptions.ids" cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" can not be empty.', 'description' => 'The specified parameter \'InstanceCpuCocount\' cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceAmount', 'errorMessage' => 'The specified parameter "InstanceAmount" can not be empty.', 'description' => 'The specified parameter InstanceAmount cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time.', 'description' => 'The specified parameter InstanceCpuCoreCount and InstanceAmount cannot be both empty.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyZoneIds', 'errorMessage' => 'Too many ZoneIds in the request.', 'description' => 'The number of specified zone IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyInstanceTypes', 'errorMessage' => 'Too many InstanceTypes in the request.', 'description' => 'The number of specified instance types exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyUnpaidPrivatePool', 'errorMessage' => 'Too many PrivatePools create but still unpaid.', 'description' => 'Multiple private pools are created but not paid.'], ['errorCode' => 'Invalid.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'Both InstanceCpuCoreCount and InstanceAmount are provided.', 'description' => 'The InstanceCpuCoreCount and InstanceAmount parameters cannot be both specified.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id.', 'description' => 'The specified private pool ID does not exist.'], ['errorCode' => 'Invalid.PackageType', 'errorMessage' => 'The specified parameter "PackageType" is invalid.', 'description' => 'The specified parameter PackageType is invalid.'], ['errorCode' => 'Invalid.PrivatePool.Purchase', 'errorMessage' => 'The PrivatePool has already paid.', 'description' => 'The private pool is already paid.'], ['errorCode' => 'Invalid.AssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'RepeatStartPrivatePool', 'errorMessage' => 'PrivatePool has already been started.', 'description' => 'The private pool is already started.'], ['errorCode' => 'InvalidParameter.RegionId', 'errorMessage' => 'The specified RegionId is not exist.', 'description' => ''], ['errorCode' => 'InvalidPermission.ResourceShareAssocoated', 'errorMessage' => 'The current resource is associated to a shared relationship and cannot be released.', 'description' => 'The current resource is bound to a sharing relationship and cannot be released.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'DescribeCapacityReservations', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-12-07T06:31:58.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-09-21T06:33:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-06-18T01:59:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-18T01:59:46.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeCapacityReservations'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeCapacityReservations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'CapacityReservation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:capacityreservation/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 10,\\n \\"CapacityReservationSet\\": {\\n \\"CapacityReservationItem\\": [\\n {\\n \\"Status\\": \\"Active\\",\\n \\"TimeSlot\\": \\"null\\",\\n \\"PrivatePoolOptionsMatchCriteria\\": \\"Open\\",\\n \\"PrivatePoolOptionsId\\": \\"crp-bp1gubrkqutenqdd****\\",\\n \\"PrivatePoolOptionsName\\": \\"crpTestName\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceChargeType\\": \\"PostPaid\\",\\n \\"EndTime\\": \\"2021-02-19T03:02Z\\",\\n \\"StartTime\\": \\"2021-02-19T02:01Z\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"EndTimeType\\": \\"Unlimited\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"Platform\\": \\"linux\\",\\n \\"AllocatedResources\\": {\\n \\"AllocatedResource\\": [\\n {\\n \\"UsedAmount\\": 2,\\n \\"TotalAmount\\": 2,\\n \\"AvailableAmount\\": 2,\\n \\"FailedAmount\\": 1,\\n \\"LockedAmount\\": 1,\\n \\"zoneId\\": \\"cn-hangzhou-h\\",\\n \\"InstanceType\\": \\"ecs.c6.large\\",\\n \\"CapacityReservationUsages\\": {\\n \\"CapacityReservationUsage\\": [\\n {\\n \\"AccountId\\": \\"105909559088****\\",\\n \\"ServiceName\\": \\"maxcompute.aliyuncs.com\\",\\n \\"UsedAmount\\": 20\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"StartTimeType\\": \\"Now\\",\\n \\"SavingPlanId\\": \\"spn-c29b5e18pJMT****\\",\\n \\"ReservedInstanceId\\": \\"ri-bpzhex2ulpzf53****\\",\\n \\"CapacityReservationOwnerId\\": \\"100************7\\\\n\\",\\n \\"DeliveryTime\\": \\"\\",\\n \\"UnlockedTime\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeClassicLinkInstances' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28908', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => '经典网络全面下线,不再接受创建请求', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instances. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The VPC ID. The ClassicLink feature must be enabled for the specified VPC. For more information, see [Establish a ClassicLink connection](~~65413~~).', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1vwnn14rqpyiczj****', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. You can specify a maximum of 100 instance IDs in a single request. Separate the instance IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 'i-bp1a5zr3u7nq9cxh****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'string', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'string', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of ClassicLink connections.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'Links' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Link' => [ 'description' => 'The details of the ClassicLink connections between the instances reside in the classic network and VPCs.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'VpcId' => ['description' => 'The VPC ID.', 'type' => 'string', 'example' => 'vpc-test', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-test', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidParameter.ToManyInstanceIds', 'errorMessage' => 'No more than 100 InstanceIds can be specified.', 'description' => 'Up to 100 instance IDs can be specified.'], ['errorCode' => 'InvalidParameter.InvalidInstanceIdAndVpcId', 'errorMessage' => 'The parameter InstanceId and VpcId are not allowed to be empty at the same time.', 'description' => 'At least one of the InstanceId and VpcId parameters must be specified.'], ['errorCode' => 'InvalidInstanceId.NotBelong', 'errorMessage' => 'The specified instance is not belong to you.', 'description' => ''], ['errorCode' => 'InvalidVpc.NotBelong', 'errorMessage' => 'The specified vpc is not belong to you.', 'description' => ''], ['errorCode' => 'InvalidParameter.PageNumber', 'errorMessage' => 'The parameter pageNumber is invalid.', 'description' => 'The specified PageNumber parameter is invalid.'], ['errorCode' => 'InvalidParameter.PageSize', 'errorMessage' => 'The parameter pageSize is invalid.', 'description' => 'The specified paging parameter PageSize is invalid.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified region does not exist.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeClassicLinkInstances', 'summary' => 'Queries instances located in the classic network that have established ClassicLink connections to virtual private clouds (VPCs).', 'description' => 'Take note of the following items:'."\n" ."\n" .'- This operation applies only to instances that reside in the classic network.'."\n" ."\n" .'- You can query a maximum of 100 instances that reside in the classic network at a time.'."\n" ."\n" .'- At least one of the `VpcId` and `InstanceId` parameters must be configured.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeClassicLinkInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeClassicLinkInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"Links\\": {\\n \\"Link\\": [\\n {\\n \\"VpcId\\": \\"vpc-test\\",\\n \\"InstanceId\\": \\"i-test\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeCloudAssistantSettings' => [ 'summary' => 'View the Cloud Assistant service configuration.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '213731', 'abilityTreeNodes' => ['FEATUREecsXZ3H4M'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'SettingType', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The service settings to query.', 'type' => 'array', 'items' => ['description' => 'The service setting to query. Valid values:'."\n" ."\n" .'- `SessionManagerDelivery`: Session Manager delivery settings.'."\n" ."\n" .'- `InvocationDelivery`: command execution delivery settings.'."\n" ."\n" .'- `AgentUpgradeConfig`: Cloud Assistant Agent upgrade settings.'."\n" ."\n" .'- `SessionManagerConfig`: Cloud Assistant Session Manager settings.', 'type' => 'string', 'required' => false, 'example' => 'SessionManagerDelivery', 'title' => ''], 'required' => true, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'OssDeliveryConfigs' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'OssDeliveryConfig' => [ 'description' => 'A list of OSS delivery configurations.', 'type' => 'array', 'items' => [ 'description' => 'The OSS delivery configuration.', 'type' => 'object', 'properties' => [ 'EncryptionType' => ['description' => 'The OSS encryption method. Valid values:'."\n" ."\n" .'- `Inherit`: Inherits the encryption settings from the bucket.'."\n" ."\n" .'- `OssManaged`: Data is encrypted using a key that is fully managed by OSS.'."\n" ."\n" .'- `KMS`: Data is encrypted using a KMS key.', 'type' => 'string', 'example' => 'Inherit', 'title' => ''], 'EncryptionAlgorithm' => ['description' => 'The OSS encryption algorithm. Valid values:'."\n" ."\n" .'- AES256'."\n" ."\n" .'- SM4', 'type' => 'string', 'example' => 'AES256', 'title' => ''], 'DeliveryType' => ['description' => 'The type of logs to deliver. Valid values:'."\n" ."\n" .'- `SessionManager`: Session Manager records.'."\n" ."\n" .'- `Invocation`: invocation records.', 'type' => 'string', 'example' => 'SessionManager', 'title' => ''], 'Enabled' => ['description' => 'Indicates whether delivery to OSS is enabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'BucketName' => ['description' => 'The name of the OSS bucket.', 'type' => 'string', 'example' => 'example-bucket', 'title' => ''], 'Prefix' => ['description' => 'The directory prefix in the OSS bucket.', 'type' => 'string', 'example' => 'sessionmanager/audit', 'title' => ''], 'EncryptionKeyId' => ['description' => 'The ID of the Customer Master Key (CMK) used when `EncryptionType` is set to `KMS`.', 'type' => 'string', 'example' => 'a807****7a70e', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SlsDeliveryConfigs' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SlsDeliveryConfig' => [ 'description' => 'A list of SLS delivery configurations.', 'type' => 'array', 'items' => [ 'description' => 'The SLS delivery configuration.', 'type' => 'object', 'properties' => [ 'DeliveryType' => ['description' => 'The type of logs to deliver. Valid values:'."\n" ."\n" .'- `SessionManager`: Session Manager records.'."\n" ."\n" .'- `Invocation`: invocation records.', 'type' => 'string', 'example' => 'SessionManager', 'title' => ''], 'LogstoreName' => ['description' => 'The name of the SLS Logstore.', 'type' => 'string', 'example' => 'example-logstore', 'title' => ''], 'Enabled' => ['description' => 'Indicates whether delivery to SLS is enabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ProjectName' => ['description' => 'The name of the SLS Project.', 'type' => 'string', 'example' => 'example-project', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AgentUpgradeConfig' => [ 'description' => 'The upgrade settings for the Cloud Assistant agent.', 'type' => 'object', 'properties' => [ 'Enabled' => ['description' => 'Indicates whether custom agent upgrade settings are enabled. If this parameter is not specified or is set to `false`, the system attempts to upgrade the agent every 30 minutes by default.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'AllowedUpgradeWindows' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AllowedUpgradeWindow' => [ 'description' => 'The list of allowed upgrade windows.', 'type' => 'array', 'items' => ['description' => 'An allowed upgrade window.', 'type' => 'string', 'example' => '['."\n" .'"02:00-03:00",'."\n" .'"05:00-06:00"'."\n" .']', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'TimeZone' => ['description' => 'The time zone of the allowed upgrade windows.', 'type' => 'string', 'example' => 'Asia/Shanghai', 'title' => ''], 'BootstrapUpgrade' => ['description' => 'Indicates whether the Cloud Assistant agent checks for and applies updates upon startup.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'DisableUpgrade' => ['description' => 'Indicates whether to prevent the Cloud Assistant agent from automatically updating.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ResourceUsageConfig' => [ 'type' => 'object', 'properties' => [ 'CpuLimit' => ['description' => 'The maximum CPU usage limit for the main process of the Cloud Assistant agent.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'MemoryLimit' => ['description' => 'The maximum memory usage limit for the main process of the Cloud Assistant agent.', 'type' => 'string', 'example' => '35MB', 'title' => ''], 'OverloadLimit' => ['description' => 'The number of consecutive times CPU or memory usage can exceed the configured limits before the Cloud Assistant agent process is terminated.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'LogFileCountLimit' => ['description' => 'The maximum number of Cloud Assistant log files to retain.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], 'LogSizeLimit' => ['description' => 'The maximum size for a single Cloud Assistant log file.', 'type' => 'string', 'example' => '100MB', 'title' => ''], 'KeepScriptFile' => ['description' => 'Indicates whether to retain the script file in the Cloud Assistant directory after a command invocation is complete.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'description' => 'The resource usage settings for the Cloud Assistant agent.', 'title' => '', 'example' => '', ], 'SessionManagerConfig' => [ 'description' => 'Configurations for the Session Manager feature.', 'type' => 'object', 'properties' => [ 'SessionManagerEnabled' => ['description' => 'Indicates whether the Session Manager feature is enabled. Valid values:'."\n" ."\n" .'- `true`: enabled'."\n" ."\n" .'- `false`: disabled'."\n" ."\n" .'**Note**:'."\n" ."\n" .'- This setting takes effect in all regions.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.SettingType', 'errorMessage' => 'The specified parameter SettingType is not valid.', 'description' => 'The specified parameter SettingType is illegal.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter RegionId does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while sending the request, please try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"OssDeliveryConfigs\\": {\\n \\"OssDeliveryConfig\\": [\\n {\\n \\"EncryptionType\\": \\"Inherit\\",\\n \\"EncryptionAlgorithm\\": \\"AES256\\",\\n \\"DeliveryType\\": \\"SessionManager\\",\\n \\"Enabled\\": false,\\n \\"BucketName\\": \\"example-bucket\\",\\n \\"Prefix\\": \\"sessionmanager/audit\\",\\n \\"EncryptionKeyId\\": \\"a807****7a70e\\"\\n }\\n ]\\n },\\n \\"SlsDeliveryConfigs\\": {\\n \\"SlsDeliveryConfig\\": [\\n {\\n \\"DeliveryType\\": \\"SessionManager\\",\\n \\"LogstoreName\\": \\"example-logstore\\",\\n \\"Enabled\\": false,\\n \\"ProjectName\\": \\"example-project\\"\\n }\\n ]\\n },\\n \\"AgentUpgradeConfig\\": {\\n \\"Enabled\\": true,\\n \\"AllowedUpgradeWindows\\": {\\n \\"AllowedUpgradeWindow\\": [\\n \\"[\\\\n\\\\\\"02:00-03:00\\\\\\",\\\\n\\\\\\"05:00-06:00\\\\\\"\\\\n]\\"\\n ]\\n },\\n \\"TimeZone\\": \\"Asia/Shanghai\\",\\n \\"BootstrapUpgrade\\": true,\\n \\"DisableUpgrade\\": true\\n },\\n \\"ResourceUsageConfig\\": {\\n \\"CpuLimit\\": 20,\\n \\"MemoryLimit\\": \\"35MB\\",\\n \\"OverloadLimit\\": 3,\\n \\"LogFileCountLimit\\": 30,\\n \\"LogSizeLimit\\": \\"100MB\\",\\n \\"KeepScriptFile\\": false\\n },\\n \\"SessionManagerConfig\\": {\\n \\"SessionManagerEnabled\\": true\\n }\\n}","type":"json"}]', 'title' => 'DescribeCloudAssistantSettings', 'changeSet' => [ ['createdAt' => '2025-07-18T07:24:15.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeCloudAssistantSettings'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeCloudAssistantSettings', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ServiceSettings', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:servicesettings/{#servicesettingId}'], ], ], ], ], ], 'DescribeCloudAssistantStatus' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29272', 'abilityTreeNodes' => ['FEATUREecsPW0L5N'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'OSType', 'in' => 'query', 'schema' => ['description' => 'The operating system type of the instance. Valid values:'."\n" ."\n" .'- Windows'."\n" ."\n" .'- Linux'."\n" ."\n" .'- FreeBSD', 'type' => 'string', 'required' => false, 'example' => 'Windows', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter will be removed in the future. We recommend that you use NextToken and MaxResults for a paged query.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter will be removed in the future. We recommend that you use NextToken and MaxResults for a paged query.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page. If you specify **InstanceId**, this parameter does not take effect.'."\n" ."\n" .'Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, '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. You must specify the token that is obtained from the previous query as the value of NextToken.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance ID.', 'type' => 'array', 'items' => ['description' => 'The ID of instance N. The instance can be an Elastic Compute Service (ECS) instance or a managed instance. You can specify up to 100 instance IDs in a single request.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1iudwa5b1tqa****', 'title' => ''], 'required' => false, 'example' => 'i-bp1iudwa5b1tqa****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'InstanceCloudAssistantStatusSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceCloudAssistantStatus' => [ 'description' => 'Details about the installation status of Cloud Assistant on the instances.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CloudAssistantStatus' => ['description' => 'Indicates whether Cloud Assistant is running on the instance. Valid values:'."\n" ."\n" .'- true: Heartbeats are detected in the last 2 minutes.'."\n" ."\n" .'- false: No heartbeats are detected in the last 2 minutes.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'LastInvokedTime' => ['description' => 'The time when commands were last run.', 'type' => 'string', 'example' => '2021-03-15T08:00:00Z', 'title' => ''], 'CloudAssistantVersion' => ['description' => 'The version number of Cloud Assistant Agent. This parameter is empty if Cloud Assistant Agent is not installed or is not running on the instance.', 'type' => 'string', 'example' => '2.2.0.106', 'title' => ''], 'ActiveTaskCount' => ['description' => 'The number of tasks that Cloud Assistant was running on the instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'InvocationCount' => ['description' => 'The number of tasks that Cloud Assistant completed on the instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the instance.', 'type' => 'string', 'example' => 'i-bp1iudwa5b1tqa****', 'title' => ''], 'LastHeartbeatTime' => ['description' => 'The last heartbeat time of Cloud Assistant. The value is updated every minute on average. The interval can be 55, 60, or 65 seconds.', 'type' => 'string', 'example' => '2021-03-15T09:00:00Z', 'title' => ''], 'OSType' => ['description' => 'The operating system type of the instance. Valid values:'."\n" ."\n" .'- Windows'."\n" ."\n" .'- Linux'."\n" ."\n" .'- FreeBSD', 'type' => 'string', 'example' => 'Linux', 'title' => ''], 'SupportSessionManager' => ['description' => 'Indicates whether Cloud Assistant supports Session Manager on the instance. If Session Manager is not supported, the version of Cloud Assistant Agent is outdated. Update Cloud Assistant Agent to the latest version.'."\n" ."\n" .'To support Session Manager, the version of Cloud Assistant Agent cannot be earlier than the following versions:'."\n" ."\n" .'- Linux: 2.2.3.189'."\n" ."\n" .'- Windows: 2.1.3.189', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'MissingParam.InstanceId', 'errorMessage' => 'The parameter instanceId is missing or empty.', 'description' => ''], ['errorCode' => 'InvalidParam.PageSize', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.PageNumber', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'InstanceIds.ExceedLimit', 'errorMessage' => 'The number of instance IDs exceeds the upper limit.', 'description' => 'The number of specified instance IDs exceeds the upper limit.'], ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => ''], ], ], 'title' => 'DescribeCloudAssistantStatus', 'summary' => 'Queries whether Cloud Assistant Agent is installed on instances. If Cloud Assistant Agent is installed, the system queries the total number of Cloud Assistant commands that have been run, the number of Cloud Assistant commands that are being run, and the time when Cloud Assistant commands were last run.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'- Before you run commands on or send files to instances, especially new instances, we recommend that you query the status of Cloud Assistant on the instances by calling this operation and checking the return value of CloudAssistantStatus. Run commands on or send files to the instances only when the return value is true.'."\n" ."\n" .'- During a paged query, when you call the DescribeCloudAssistantStatus operation to retrieve the first page of results, set `MaxResults` to specify the maximum number of entries to return in the call. The return value of `NextToken` is a pagination token that can be used in the next call to retrieve a new page of results. When you call the DescribeCloudAssistantStatus operation to retrieve a new page of results, set `NextToken` to the `NextToken` value returned in the previous call and set `MaxResults` to specify the maximum number of entries to return in this call.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-12-21T01:35:08.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-05-12T05:58:06.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2021-08-13T07:15:05.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-08-13T07:15:05.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeCloudAssistantStatus'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeCloudAssistantStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"InstanceCloudAssistantStatusSet\\": {\\n \\"InstanceCloudAssistantStatus\\": [\\n {\\n \\"CloudAssistantStatus\\": \\"true\\",\\n \\"LastInvokedTime\\": \\"2021-03-15T08:00:00Z\\",\\n \\"CloudAssistantVersion\\": \\"2.2.0.106\\",\\n \\"ActiveTaskCount\\": 0,\\n \\"InvocationCount\\": 2,\\n \\"InstanceId\\": \\"i-bp1iudwa5b1tqa****\\",\\n \\"LastHeartbeatTime\\": \\"2021-03-15T09:00:00Z\\",\\n \\"OSType\\": \\"Linux\\",\\n \\"SupportSessionManager\\": true\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribeClusters' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28910', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'Clusters' => [ 'itemNode' => true, 'description' => 'An object that contains the list of clusters.', 'type' => 'object', 'properties' => [ 'Cluster' => [ 'description' => 'The list of clusters.', 'type' => 'array', 'items' => [ 'description' => 'The details of a cluster.', 'type' => 'object', 'properties' => [ 'ClusterId' => ['description' => 'The cluster ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。'], 'title' => 'Obtain cluster information', 'summary' => 'Describes one or more clusters.', 'changeSet' => [ ['createdAt' => '2022-03-04T02:06:42.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeClusters'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"Clusters\\": {\\n \\"Cluster\\": [\\n {\\n \\"ClusterId\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeCommands' => [ 'summary' => 'You can view your custom Cloud Assistant commands or the public commands provided by Alibaba Cloud.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29273', 'abilityTreeNodes' => ['FEATUREecsXZ3H4M'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. To view the latest list of regions, call the [DescribeRegions](~~25609~~) operation.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Provider', 'in' => 'query', 'schema' => ['description' => 'The provider of the public command.'."\n" ."\n" .'- If you omit this parameter, the operation queries your private commands by default.'."\n" ."\n" .'- Set this parameter to `AlibabaCloud` to query all public commands from Alibaba Cloud.'."\n" ."\n" .'- If you set the value to a specific provider, the public commands from that provider are queried. For example:'."\n" ."\n" .' - If you set `Provider` to `AlibabaCloud.ECS.GuestOS`, the public commands provided by AlibabaCloud.ECS.GuestOS are queried.'."\n" ."\n" .' - If you set `Provider` to `AlibabaCloud.ECS.GuestOSDiagnose`, the public commands provided by AlibabaCloud.ECS.GuestOSDiagnose are queried.', 'type' => 'string', 'required' => false, 'example' => 'AlibabaCloud', 'title' => ''], ], [ 'name' => 'CommandId', 'in' => 'query', 'schema' => ['description' => 'The ID of the command.', 'type' => 'string', 'required' => false, 'example' => 'c-hz01272yr52****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the command.'."\n" ."\n" .'- If you specify the `Provider` parameter to query public commands, fuzzy search is supported by default.'."\n" ."\n" .'- If you do not specify the `Provider` parameter to query private commands, fuzzy search is supported. You can use an asterisk (\\*) as a wildcard. For example, `command*` returns all commands whose names start with `command`, `*command` returns all commands whose names end with `command`, and `*command*` returns all commands whose names contain `command`.', 'type' => 'string', 'required' => false, 'example' => 'testName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the command.'."\n" ."\n" .'- If you specify the `Provider` parameter to query public commands, fuzzy search is supported by default.'."\n" ."\n" .'- If you do not specify the `Provider` parameter to query private commands, fuzzy search is supported. You can use an asterisk (\\*) as a wildcard. For example, `test*` returns all commands whose descriptions start with `test`, `*test` returns all commands whose descriptions end with `test`, and `*test*` returns all commands whose descriptions contain `test`.', 'type' => 'string', 'required' => false, 'example' => 'testDescription', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The type of the command. Valid values:'."\n" ."\n" .'- RunBatScript: A Bat script for Windows instances.'."\n" ."\n" .'- RunPowerShellScript: A PowerShell script for Windows instances.'."\n" ."\n" .'- RunShellScript: A Shell script for Linux instances.', 'type' => 'string', 'required' => false, 'example' => 'RunShellScript', 'title' => ''], ], [ 'name' => 'ContentEncoding', 'in' => 'query', 'schema' => ['description' => 'The encoding format for the `CommandContent` and `Output` values in the response. Valid values:'."\n" ."\n" .'- PlainText: returns the raw script content and output.'."\n" ."\n" .'- Base64: returns the Base64-encoded script content and output.'."\n" ."\n" .'Default value: Base64.', 'type' => 'string', 'required' => false, 'example' => 'PlainText', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter is being deprecated. We recommend using NextToken and MaxResults for pagination instead.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter is being deprecated. We recommend using NextToken and MaxResults for pagination instead.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return per page.'."\n" ."\n" .'Maximum value: 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token for the next page of results. To retrieve the next page, set this parameter to the `NextToken` value from a previous call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2', 'title' => ''], ], [ 'name' => 'Latest', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return only the latest version of public commands. This parameter does not affect private commands.'."\n" ."\n" .'- true: returns only the latest version of public commands.'."\n" ."\n" .'- false: returns all versions of public commands.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the command belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-123******', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags used to filter commands.', 'type' => 'array', 'items' => [ 'description' => 'A tag object.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the tag. You can specify up to 20 tags. The tag value can be an empty string.'."\n" ."\n" .'The value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'Key' => ['description' => 'The key of the tag. You can specify up to 20 tags. The tag key cannot be an empty string.'."\n" ."\n" .'A query can return a maximum of 1,000 resources that match the specified tags. If more than 1,000 resources match, call the [ListTagResources](~~110425~~) operation to query all matching resources.'."\n" ."\n" .'The key can be up to 64 characters in length, cannot start with `aliyun` or `acs:`, and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of commands.', 'type' => 'integer', 'format' => 'int64', 'example' => '5', 'title' => ''], 'NextToken' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results. If this parameter is not returned, all results have been retrieved.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'Commands' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Command' => [ 'description' => 'The details of the commands.', 'type' => 'array', 'items' => [ 'description' => 'The details of a command.', 'type' => 'object', 'properties' => [ 'ParameterDefinitions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ParameterDefinition' => [ 'description' => 'The details of the custom parameters.', 'type' => 'array', 'items' => [ 'description' => 'The details of a custom parameter.', 'type' => 'object', 'properties' => [ 'DefaultValue' => ['description' => 'The default value of the custom parameter.', 'type' => 'string', 'example' => 'https://aliyun-client-assist.oss-accelerate.aliyuncs.com/linux/aliyun_assist_latest.rpm', 'title' => ''], 'Description' => ['description' => 'The description of the custom parameter.', 'type' => 'string', 'example' => '云助手Agent安装包路径', 'title' => ''], 'Required' => ['description' => 'Specifies whether the custom parameter is required.'."\n" ."\n" .'- true: The parameter is required.'."\n" ."\n" .'- false: The parameter is not required.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ParameterName' => ['description' => 'The name of the custom parameter.', 'type' => 'string', 'example' => 'DownloadUrl', 'title' => ''], 'PossibleValues' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PossibleValue' => [ 'description' => 'An array of valid values for the enumerated parameter.', 'type' => 'array', 'items' => ['description' => 'A valid value for an enumerated custom parameter.', 'type' => 'string', 'example' => '"Linux","Windows"', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'PatternRegex' => ['description' => 'The regular expression that is used to validate the custom parameter.', 'type' => 'string', 'example' => '^[a-zA-Z0-9_-]{4,32}$'."\0", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Description' => ['description' => 'The description of the command.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'Category' => ['description' => 'The category of the public command.', 'type' => 'string', 'example' => '“”', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the command belongs.', 'type' => 'string', 'example' => 'rg-123******', 'title' => ''], 'ParameterNames' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ParameterName' => [ 'description' => 'The names of the custom parameters that are parsed from the `CommandContent`. If the command does not use custom parameters, an empty array is returned.', 'type' => 'array', 'items' => ['description' => 'The name of a custom parameter.', 'type' => 'string', 'example' => '[\'parameter1\',\'parameter2\']', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Timeout' => ['description' => 'The timeout period for the command to run, in seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '3600', 'title' => ''], 'Provider' => ['description' => 'The provider of the public command.', 'type' => 'string', 'example' => 'AlibabaCloud.ECS.GuestOS', 'title' => ''], 'Name' => ['description' => 'The name of the command.', 'type' => 'string', 'example' => 'testName', 'title' => ''], 'WorkingDir' => ['description' => 'The working directory of the command.', 'type' => 'string', 'example' => '/home/', 'title' => ''], 'CommandContent' => ['description' => 'The content of the command. The content is Base64-encoded.'."\n" ."\n" .'- If `ContentEncoding` is set to `PlainText`, the original script content is returned.'."\n" ."\n" .'- If `ContentEncoding` is set to `Base64`, the Base64-encoded script content is returned.', 'type' => 'string', 'example' => 'Y2QgL3Jvb3Q=', 'title' => ''], 'Type' => ['description' => 'The type of the command.', 'type' => 'string', 'example' => 'RunShellScript', 'title' => ''], 'Version' => ['description' => 'The version of the public command. Public commands that have the same `Provider`, name, and category are considered different versions of the same command. This parameter is not returned for custom commands.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InvokeTimes' => ['description' => 'The number of times the command has been invoked.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'CreationTime' => ['description' => 'The time at which the command was created.', 'type' => 'string', 'example' => '2020-11-17T06:52Z', 'title' => ''], 'Launcher' => ['description' => 'The launcher of the script. The value cannot exceed 1 KB in size.', 'type' => 'string', 'example' => 'python3 -u {{ACS::ScriptFileName|Ext(".py")}}'."\n", 'title' => ''], 'Latest' => ['description' => 'Indicates whether the command is the latest version. Public commands that have the same `Provider`, name, and category are considered different versions of the same command. This parameter is not returned for custom commands.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'EnableParameter' => ['description' => 'Indicates whether custom parameters are enabled for the command.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'CommandId' => ['description' => 'The command ID.', 'type' => 'string', 'example' => 'c-hz01272yr52****', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags attached to the command.', 'type' => 'array', 'items' => [ 'description' => 'A tag that is attached to the command.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key of the command.', 'type' => 'string', 'example' => 'owner', 'title' => ''], 'TagValue' => ['description' => 'The tag value of the command.', 'type' => 'string', 'example' => 'zhangsan', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The Tags parameter number is exceed.', 'description' => 'The number of tags exceeds the maximum limit.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'MissingParameter.TagKey', 'errorMessage' => 'You must specify Tag.N.Key.', 'description' => 'The tag key is not specified.'], ['errorCode' => 'InvalidParam.PageNumber', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.PageSize', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ['errorCode' => 'InvalidName.LengthLimitExceeded', 'errorMessage' => 'The length of the parameter Name exceeds the upper limit.', 'description' => ''], ['errorCode' => 'InvalidDescription.LengthLimitExceeded', 'errorMessage' => 'The length of the parameter Description exceeds the upper limit.', 'description' => ''], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidCommandType.NotFound', 'errorMessage' => 'The specified parameter Type does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 5,\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"Commands\\": {\\n \\"Command\\": [\\n {\\n \\"ParameterDefinitions\\": {\\n \\"ParameterDefinition\\": [\\n {\\n \\"DefaultValue\\": \\"https://aliyun-client-assist.oss-accelerate.aliyuncs.com/linux/aliyun_assist_latest.rpm\\",\\n \\"Description\\": \\"云助手Agent安装包路径\\",\\n \\"Required\\": true,\\n \\"ParameterName\\": \\"DownloadUrl\\",\\n \\"PossibleValues\\": {\\n \\"PossibleValue\\": [\\n \\"\\\\\\"Linux\\\\\\",\\\\\\"Windows\\\\\\"\\"\\n ]\\n },\\n \\"PatternRegex\\": \\"^[a-zA-Z0-9_-]{4,32}$\\\\u0000\\"\\n }\\n ]\\n },\\n \\"Description\\": \\"testDescription\\",\\n \\"Category\\": \\"“”\\",\\n \\"ResourceGroupId\\": \\"rg-123******\\",\\n \\"ParameterNames\\": {\\n \\"ParameterName\\": [\\n \\"[\'parameter1\',\'parameter2\']\\"\\n ]\\n },\\n \\"Timeout\\": 3600,\\n \\"Provider\\": \\"AlibabaCloud.ECS.GuestOS\\",\\n \\"Name\\": \\"testName\\",\\n \\"WorkingDir\\": \\"/home/\\",\\n \\"CommandContent\\": \\"Y2QgL3Jvb3Q=\\",\\n \\"Type\\": \\"RunShellScript\\",\\n \\"Version\\": 1,\\n \\"InvokeTimes\\": 2,\\n \\"CreationTime\\": \\"2020-11-17T06:52Z\\",\\n \\"Launcher\\": \\"python3 -u {{ACS::ScriptFileName|Ext(\\\\\\".py\\\\\\")}}\\\\n\\",\\n \\"Latest\\": true,\\n \\"EnableParameter\\": true,\\n \\"CommandId\\": \\"c-hz01272yr52****\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagKey\\": \\"owner\\",\\n \\"TagValue\\": \\"zhangsan\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeCommands', 'description' => '## API'."\n" ."\n" .'- To list all your manually created commands (`CommandId`), provide only the `Action` and `RegionId` request parameters.'."\n" ."\n" .'- Use `MaxResults` to limit the number of items to return. If a response includes a `NextToken`, more results are available. To retrieve the next page, pass the value of this `NextToken` in your subsequent request.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-08-21T05:53:20.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-12T07:43:43.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-21T01:40:34.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-12-21T01:35:08.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-10-24T05:49:38.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2023-05-12T05:58:06.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-02-25T07:28:10.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeCommands'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeCommands', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Command', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:command/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Command', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:command/{#commandId}'], ], ], ], ], 'translator' => 'machine', ], 'DescribeDedicatedHostAutoRenew' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28913', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'DedicatedHostIds', 'in' => 'query', 'schema' => ['description' => 'The ID of the dedicated host. You can specify up to 100 subscription dedicated host IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => true, 'example' => 'dh-bp165p6xk2tlw61e****,dh-bp1f9vxmno****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the dedicated host resides.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', 'title' => ''], 'DedicatedHostRenewAttributes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHostRenewAttribute' => [ 'description' => 'The array that consists of dedicated host auto-renewal attributes.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PeriodUnit' => ['description' => 'The unit of the auto-renewal duration. Valid values:'."\n" ."\n" .'- Week'."\n" ."\n" .'- Month', 'type' => 'string', 'example' => 'Month', 'title' => ''], 'Duration' => ['description' => 'The auto-renewal period.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'DedicatedHostId' => ['description' => 'The ID of the dedicated host.', 'type' => 'string', 'example' => 'dh-bp165p6xk2tlw61e****', 'title' => ''], 'RenewalStatus' => ['description' => 'Indicates whether the subscription dedicated host is automatically renewed. Valid values:'."\n" ."\n" .'- AutoRenewal: The dedicated host is automatically renewed.'."\n" ."\n" .'- Normal: The dedicated host is not automatically renewed, but renewal notifications are sent.'."\n" ."\n" .'- NotRenewal: The dedicated host is not automatically renewed, and no expiration notification is sent. Alibaba Cloud sends only a non-renewal notice three days before the host expires. If the renewal status of a dedicated host is NotRenewal, you can change the value to Normal and then call [RenewDedicatedHosts](~~93287~~) to manually renew the dedicated host, or directly change the value to AutoRenewal.', 'type' => 'string', 'example' => 'Normal', 'title' => ''], 'AutoRenewEnabled' => ['description' => 'Indicates whether auto-renewal is enabled. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'AutoRenewWithEcs' => ['description' => 'Indicates whether the dedicated host is automatically renewed if a subscription ECS instance it hosts, after being automatically renewed, has a new expiration time that is later than that of the dedicated host. Valid values:'."\n" ."\n" .'- AutoRenewWithEcs: The dedicated host is automatically renewed along with the ECS instance.'."\n" ."\n" .'- StopRenewWithEcs: The dedicated host is not automatically renewed along with the ECS instance.', 'type' => 'string', 'example' => 'StopRenewWithEcs', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'ChargeTypeViolation', 'errorMessage' => 'Pay-As-You-Go dedicated host does not support this operation.', 'description' => ''], ['errorCode' => 'MissingParameter.DedicatedHostId', 'errorMessage' => 'DedicatedHostId should not be null.', 'description' => 'The DedicatedHostId parameter is required.'], ['errorCode' => 'InvalidParameter.ToManyDedicatedHostIds', 'errorMessage' => 'DedicatedHostId should be less than 100.', 'description' => 'More than 100 dedicated host IDs are specified in the DedicatedHostIds value.'], ['errorCode' => 'InvalidParameter.InvalidDedicatedHostId', 'errorMessage' => '%s', 'description' => 'The specified DedicatedHostId parameter is invalid.'], ['errorCode' => 'IncorrectDedicatedHostStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'MissingParamter.InstanceId', 'errorMessage' => 'InstanceId should not be null.', 'description' => 'The instance ID must be specified.'], ], ], 'title' => 'DescribeDedicatedHostAutoRenew', 'summary' => 'Queries the auto-renewal status of one or more subscription dedicated hosts.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-06-13T09:56:21.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDedicatedHostAutoRenew'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDedicatedHostAutoRenew', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'DedicatedHost', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddh/{#ddhId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"DedicatedHostRenewAttributes\\": {\\n \\"DedicatedHostRenewAttribute\\": [\\n {\\n \\"PeriodUnit\\": \\"Month\\",\\n \\"Duration\\": 0,\\n \\"DedicatedHostId\\": \\"dh-bp165p6xk2tlw61e****\\",\\n \\"RenewalStatus\\": \\"Normal\\",\\n \\"AutoRenewEnabled\\": false,\\n \\"AutoRenewWithEcs\\": \\"StopRenewWithEcs\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeDedicatedHostClusters' => [ 'summary' => 'Queries the details of one or more dedicated host groups.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28914', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => '> This parameter is unavailable for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'LockReason', 'in' => 'query', 'schema' => ['description' => '> This parameter is unavailable for use.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID of the host group. You can use a resource group ID to filter no more than 1,000 host groups.'."\n" ."\n" .'> A default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the host group.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the host group.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key. Valid values of N: 1 to 20. The tag key cannot be an empty string. It can be up to 64 characters in length, and can neither contain `http://` or `https://` nor `acs:` or `aliyun`.'."\n" ."\n" .'You can filter no more than 1,000 host groups, regardless of how many tags are used. To query more than 1,000 host groups, call the [ListTagResources](~~110425~~) API operation.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value. Valid values of N: 1 to 20. The tag value cannot be an empty string. It can be up to 64 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the host group. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the host group. You can call the [DescribeZones](~~25610~~) operation to query the most recent zone list.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-f', 'title' => ''], ], [ 'name' => 'DedicatedHostClusterIds', 'in' => 'query', 'schema' => ['description' => 'The list of host group IDs. The value can be a JSON array consisting of multiple IDs in the `["dc-xxxxxxxxx", "dc-yyyyyyyyy",..., "dc-zzzzzzzzz"]` format. Separate the IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["dc-bp12wlf6am0vz9v2****", "dc-bp12wlf6am0vz9v3****"]', 'title' => ''], ], [ 'name' => 'DedicatedHostClusterName', 'in' => 'query', 'schema' => ['description' => 'The name of the host group.', 'type' => 'string', 'required' => false, 'example' => 'myDDHCluster', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '5', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '214A2187-B06F-4E49-A081-4D053466A8C7', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of dedicated host clusters.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'DedicatedHostClusters' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHostCluster' => [ 'description' => 'An array consisting of host group information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description of the host group.', 'type' => 'string', 'example' => 'This-is-my-DDHCluster', 'title' => ''], 'DedicatedHostClusterId' => ['description' => 'The ID of the host group.', 'type' => 'string', 'example' => 'dc-bp12wlf6am0vz9v2****', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID of the host group.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the host group.', 'type' => 'string', 'example' => 'cn-hangzhou-f', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the host group.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'DedicatedHostClusterName' => ['description' => 'The name of the host group.', 'type' => 'string', 'example' => 'myDDHCluster', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the host group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'DedicatedHostIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHostId' => [ 'description' => 'The IDs of dedicated hosts in the host group.', 'type' => 'array', 'items' => ['description' => 'The ID of the dedicated host.', 'type' => 'string', 'example' => 'dh-bp181e5064b5sotr****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'DedicatedHostClusterCapacity' => [ 'description' => 'The capacity of the host group.', 'type' => 'object', 'properties' => [ 'AvailableVcpus' => ['description' => 'The number of available vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'AvailableMemory' => ['description' => 'The size of available memory. Unit: GiB', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'TotalMemory' => ['description' => 'The total memory size. Unit: GiB', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'TotalVcpus' => ['description' => 'The total number of vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'LocalStorageCapacities' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LocalStorageCapacity' => [ 'description' => 'The local storage capacity.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'DataDiskCategory' => ['description' => 'The category of data disks. Valid values:'."\n" ."\n" .'- cloud: basic disk'."\n" ."\n" .'- cloud\\_efficiency: ultra disk'."\n" ."\n" .'- cloud\\_ssd: standard SSD'."\n" ."\n" .'- ephemeral\\_ssd: local SSD'."\n" ."\n" .'- cloud\\_essd: Enterprise SSD (ESSD)', 'type' => 'string', 'example' => 'cloud', 'title' => ''], 'AvailableDisk' => ['description' => 'The available capacity of the local disk. Unit: GiB', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'TotalDisk' => ['description' => 'The total capacity of the local disk. Unit: GiB', 'type' => 'integer', 'format' => 'int32', 'example' => '40', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AvailableInstanceTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableInstanceType' => [ 'description' => 'The available capacity of ECS instances in the host group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InstanceType' => ['description' => 'The ECS instance type.', 'type' => 'string', 'example' => 'ecs.c6.26xlarge', 'title' => ''], 'AvailableInstanceCapacity' => ['description' => 'The available capacity of the ECS instance type.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParamter.RegionId', 'errorMessage' => 'The regionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.DedicatedHostClusterIds', 'errorMessage' => 'The specified parameter dedicatedHostClusterIds is not valid.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidZone.NotFound', 'errorMessage' => 'The specified parameter ZoneId is not valid.', 'description' => 'The specified ZoneId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidDedicatedHostIds.Malformed', 'errorMessage' => 'The amount of specified dedicatedHostClusterIds exceeds the limit.', 'description' => ''], ], ], 'title' => 'DescribeDedicatedHostClusters', 'description' => '## [](#)Usage notes'."\n" ."\n" .'You can specify multiple request parameters to filter query results. Specified request parameters have logical AND relations. Only the specified parameters are included in the filter conditions. However, if `DedicatedHostClusterIds` is set to an empty JSON array (`[]`), this parameter is regarded as a valid filter condition and an empty result is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDedicatedHostClusters'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDedicatedHostClusters', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'DedicatedHostCluster', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddhcluster/{#ddhclusterId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'DedicatedHostCluster', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddhcluster/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 5,\\n \\"RequestId\\": \\"214A2187-B06F-4E49-A081-4D053466A8C7\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"DedicatedHostClusters\\": {\\n \\"DedicatedHostCluster\\": [\\n {\\n \\"Description\\": \\"This-is-my-DDHCluster\\",\\n \\"DedicatedHostClusterId\\": \\"dc-bp12wlf6am0vz9v2****\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-f\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"DedicatedHostClusterName\\": \\"myDDHCluster\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"DedicatedHostIds\\": {\\n \\"DedicatedHostId\\": [\\n \\"dh-bp181e5064b5sotr****\\"\\n ]\\n },\\n \\"DedicatedHostClusterCapacity\\": {\\n \\"AvailableVcpus\\": 2,\\n \\"AvailableMemory\\": 4,\\n \\"TotalMemory\\": 8,\\n \\"TotalVcpus\\": 4,\\n \\"LocalStorageCapacities\\": {\\n \\"LocalStorageCapacity\\": [\\n {\\n \\"DataDiskCategory\\": \\"cloud\\",\\n \\"AvailableDisk\\": 20,\\n \\"TotalDisk\\": 40\\n }\\n ]\\n },\\n \\"AvailableInstanceTypes\\": {\\n \\"AvailableInstanceType\\": [\\n {\\n \\"InstanceType\\": \\"ecs.c6.26xlarge\\",\\n \\"AvailableInstanceCapacity\\": 0\\n }\\n ]\\n }\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeDedicatedHostTypes' => [ 'summary' => 'Queries the details of dedicated host types supported in a region, or the Elastic Compute Service (ECS) instance families supported by a specific dedicated host type.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28916', 'abilityTreeNodes' => ['FEATUREecs2UXJI2'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DedicatedHostType', 'in' => 'query', 'schema' => ['description' => 'The dedicated host type. For more information, see [Dedicated host types](~~68564~~).', 'type' => 'string', 'required' => false, 'example' => 'ddh.sn1ne', 'title' => ''], ], [ 'name' => 'SupportedInstanceTypeFamily', 'in' => 'query', 'schema' => ['description' => 'The ECS instance family supported by the dedicated host type.', 'type' => 'string', 'required' => false, 'example' => 'ecs.sn1ne', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '5FE5FF06-3A33-4658-8495-6445FC54E327', 'title' => ''], 'DedicatedHostTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHostType' => [ 'description' => 'Details about the dedicated host types.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Cores' => ['description' => 'The number of cores per physical CPU.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'LocalStorageCategory' => ['description' => 'The category of local disks.', 'type' => 'string', 'example' => 'local', 'title' => ''], 'GPUSpec' => ['description' => 'The GPU model.', 'type' => 'string', 'example' => 'NVIDIA P100', 'title' => ''], 'TotalVcpus' => ['description' => 'The total number of vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '56', 'title' => ''], 'CpuOverCommitRatioRange' => ['description' => 'The supported CPU overcommit ratio range.', 'type' => 'string', 'example' => '1-5', 'title' => ''], 'PhysicalGpus' => ['description' => 'The number of physical GPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'MemorySize' => ['description' => 'The memory size. Unit: GiB.', 'type' => 'number', 'format' => 'float', 'example' => '112.0', 'title' => ''], 'SupportCpuOverCommitRatio' => ['description' => 'Indicates whether the CPU overcommit ratio settings are supported.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'LocalStorageCapacity' => ['description' => 'The capacity of a local disk. Unit: GiB.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'DedicatedHostType' => ['description' => 'The dedicated host type.', 'type' => 'string', 'example' => 'ddh.sn1ne', 'title' => ''], 'LocalStorageAmount' => ['description' => 'The number of local disks on a dedicated host.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'TotalVgpus' => ['description' => 'The total number of vGPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'Sockets' => ['description' => 'The number of physical CPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'SupportedInstanceTypeFamilies' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedInstanceTypeFamily' => [ 'description' => 'The ECS instance families supported by the dedicated host type.', 'type' => 'array', 'items' => ['description' => 'The ECS instance family.', 'type' => 'string', 'example' => 'ecs.sn1ne', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SupportedInstanceTypesList' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedInstanceTypesList' => [ 'description' => 'The ECS instance types supported by the dedicated host type.', 'type' => 'array', 'items' => ['description' => 'The ECS instance type.', 'type' => 'string', 'example' => 'ecs.sn1ne.large', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DescribeDedicatedHostTypes', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-04-26T03:36:09.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDedicatedHostTypes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5FE5FF06-3A33-4658-8495-6445FC54E327\\",\\n \\"DedicatedHostTypes\\": {\\n \\"DedicatedHostType\\": [\\n {\\n \\"Cores\\": 2,\\n \\"LocalStorageCategory\\": \\"local\\",\\n \\"GPUSpec\\": \\"NVIDIA P100\\",\\n \\"TotalVcpus\\": 56,\\n \\"CpuOverCommitRatioRange\\": \\"1-5\\",\\n \\"PhysicalGpus\\": 2,\\n \\"MemorySize\\": 112,\\n \\"SupportCpuOverCommitRatio\\": true,\\n \\"LocalStorageCapacity\\": 0,\\n \\"DedicatedHostType\\": \\"ddh.sn1ne\\",\\n \\"LocalStorageAmount\\": 0,\\n \\"TotalVgpus\\": 10,\\n \\"Sockets\\": 2,\\n \\"SupportedInstanceTypeFamilies\\": {\\n \\"SupportedInstanceTypeFamily\\": [\\n \\"ecs.sn1ne\\"\\n ]\\n },\\n \\"SupportedInstanceTypesList\\": {\\n \\"SupportedInstanceTypesList\\": [\\n \\"ecs.sn1ne.large\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeDedicatedHosts' => [ 'summary' => 'Use this operation to query details for one or more dedicated hosts. It returns information such as physical performance metrics, machine code, status, and a list of ECS instances on the hosts. You can filter the results by parameters like dedicated host IDs, dedicated host cluster ID, host name, or status to find specific hosts. This feature helps you efficiently manage and optimize your cloud computing resources.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28915', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the dedicated host resides. Call the [`DescribeRegions`](~~25609~~) operation to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID. Call the [`DescribeZones`](~~25610~~) operation to get the latest list of Alibaba Cloud zones.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'DedicatedHostIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of dedicated hosts. You can specify up to 100 dedicated host IDs in a JSON array.', 'type' => 'string', 'required' => false, 'example' => '["dh-bp165p6xk2tlw61e****", "dh-bp1f9vxmno7emy96****"]', 'title' => ''], ], [ 'name' => 'DedicatedHostName', 'in' => 'query', 'schema' => ['description' => 'The name of the dedicated host.', 'type' => 'string', 'required' => false, 'example' => 'MyDDHTestName', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The state of the dedicated host. Valid values:'."\n" ."\n" .'- `Available`: The dedicated host is running as expected.'."\n" ."\n" .'- `UnderAssessment`: The dedicated host is being assessed for physical hardware risks. The host is available but may have hardware issues that could affect its ECS instances.'."\n" ."\n" .'- `PermanentFailure`: The dedicated host has a permanent failure and is unavailable.'."\n" ."\n" .'- `TempUnavailable`: The dedicated host is temporarily unavailable.'."\n" ."\n" .'- `Redeploying`: The dedicated host is being redeployed.'."\n" ."\n" .'The default value is `Available`.', 'type' => 'string', 'required' => false, 'example' => 'Available', 'title' => ''], ], [ 'name' => 'DedicatedHostType', 'in' => 'query', 'schema' => ['description' => 'The dedicated host type. Call the [`DescribeDedicatedHostTypes`](~~134240~~) operation to get the latest list of dedicated host types.', 'type' => 'string', 'required' => false, 'example' => 'ddh.g5', 'title' => ''], ], [ 'name' => 'LockReason', 'in' => 'query', 'schema' => ['description' => 'The reason that the dedicated host is locked. Valid values:'."\n" ."\n" .'- `financial`: The dedicated host is locked due to an overdue payment.'."\n" ."\n" .'- `security`: The dedicated host is locked for security reasons.', 'type' => 'string', 'required' => false, 'example' => 'financial', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated. Use `NextToken` and `MaxResults` for pagination.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated. Use `NextToken` and `MaxResults` for pagination.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the dedicated host belongs. When you use this parameter to filter resources, the number of resources cannot exceed 1,000.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek3b6jzp66****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags used to filter dedicated hosts. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key. The key can be up to 128 characters long. It cannot be an empty string, start with `aliyun` or `acs:`, or contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value. The value can be up to 128 characters long and cannot contain `http://` or `https://`. You can leave the value empty.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'DedicatedHostClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the dedicated host cluster.', 'type' => 'string', 'required' => false, 'example' => 'dc-bp12wlf6am0vz9v2****', 'title' => ''], ], [ 'name' => 'SocketDetails', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return socket-level capacity information. You can use the information to check the remaining vCPU and memory resources and determine whether an ECS instance of a specific instance type can be created on the dedicated host. Valid values:'."\n" ."\n" .'- `true`: returns the information. Only specific dedicated host types support this feature. For more information, see [View and export information about dedicated hosts](~~68989~~).'."\n" ."\n" .'- `false`: does not return the information.'."\n" ."\n" .'>'."\n" ."\n" .'A dedicated host typically has two CPUs, which correspond to Socket 0 and Socket 1. To maximize performance, an ECS instance created on a dedicated host is allocated to a single socket and does not span sockets.'."\n" ."\n" .'- If the remaining resources on a socket are sufficient for the specified ECS instance type, the instance can be created.'."\n" ."\n" .'- If the remaining resources on each socket are insufficient for the specified ECS instance type, the instance cannot be created, even if the total remaining resources on both sockets are sufficient.'."\n" ."\n" .'>', 'type' => 'string', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The token used to retrieve the next page of results. Do not set this parameter for the first request. For subsequent requests, set this parameter to the `NextToken` value returned from the previous response.', 'type' => 'string', 'required' => false, 'example' => 'e71d8a535bd9cc11', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of results to return per page.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'required' => false, 'title' => ''], ], [ 'name' => 'QueryInventory', 'in' => 'query', 'schema' => ['type' => 'boolean', 'default' => 'False', 'description' => '', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries returned on each page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '7654525A-9964-4ABB-8BCD-98F8835E809A', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'TotalCount' => ['description' => 'The total number of dedicated hosts.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'NextToken' => ['description' => 'The token used to retrieve the next page of results. An empty value indicates that no more results are available.', 'type' => 'string', 'example' => 'e71d8a535bd9cc11', 'title' => ''], 'DedicatedHosts' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHost' => [ 'description' => 'The details of the dedicated hosts.', 'type' => 'array', 'items' => [ 'description' => 'Details of a dedicated host.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the dedicated host was created. The time is in UTC and formatted as `yyyy-MM-ddTHH:mmZ` in compliance with the [ISO 8601](~~25696~~) standard.', 'type' => 'string', 'example' => '2018-01-01T12:00Z', 'title' => ''], 'SchedulerOptions.ManagedPrivateSpaceId' => ['description' => 'The ID of the managed private space to which the dedicated host belongs.', 'type' => 'string', 'example' => 'mps-iq81z6pkbqjx61php46e', 'title' => ''], 'Status' => ['description' => 'The state of the dedicated host. Valid values:'."\n" ."\n" .'- `Available`: The dedicated host is running as expected.'."\n" ."\n" .'- `UnderAssessment`: The dedicated host is under risk assessment. The underlying physical machine is available but has potential issues that could affect the ECS instances running on it.'."\n" ."\n" .'- `PermanentFailure`: The dedicated host has a permanent failure and is unavailable.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'Cores' => ['description' => 'The number of cores per physical CPU.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'AutoPlacement' => ['description' => 'Specifies whether the dedicated host is in the auto-placement resource pool. Valid values:'."\n" ."\n" .'- `on`: The dedicated host is added to the resource pool for auto-placement.'."\n" ."\n" .'- `off`: The dedicated host is not added to the resource pool for auto-placement.'."\n" ."\n" .'For more information about auto-placement, see [Auto-placement](~~118938~~).', 'type' => 'string', 'example' => 'on', 'title' => ''], 'GPUSpec' => ['description' => 'The GPU model.', 'type' => 'string', 'example' => 'gpu', 'title' => ''], 'AutoReleaseTime' => ['description' => 'The time when the dedicated host is automatically released. The time is in UTC and formatted as `yyyy-MM-ddTHH:mmZ` in compliance with the [ISO 8601](~~25696~~) standard.', 'type' => 'string', 'example' => '2017-01-01T12:00Z', 'title' => ''], 'ChargeType' => ['description' => 'The billing method of the dedicated host.', 'type' => 'string', 'example' => 'Prepaid', 'title' => ''], 'CpuOverCommitRatio' => ['description' => 'The CPU overcommitment ratio. Valid values: 1 to 5.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'ActionOnMaintenance' => ['description' => 'The policy for migrating instances on the dedicated host during a host failure. Valid values:'."\n" ."\n" .'- `Migrate`: Migrates the instances to another physical machine. Instances that were running before the failure are restarted.'."\n" ."\n" .'- `Stop`: Stops the instances on the failed dedicated host. After the host is confirmed to be irreparable, the instances are migrated to another physical machine and then restarted.'."\n" ."\n" .'The default value is `Migrate` if the dedicated host uses cloud disks, and `Stop` if it uses local disks.', 'type' => 'string', 'example' => 'Migrate', 'title' => ''], 'SaleCycle' => ['description' => 'The unit of the subscription billing cycle. Valid values:'."\n" ."\n" .'- Month'."\n" ."\n" .'- Year', 'type' => 'string', 'example' => 'Month', 'title' => ''], 'PhysicalGpus' => ['description' => 'The number of physical GPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RegionId' => ['description' => 'The ID of the region where the dedicated host resides.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'DedicatedHostName' => ['description' => 'The name of the dedicated host.', 'type' => 'string', 'example' => 'MyDDHTestName', 'title' => ''], 'Description' => ['description' => 'The description of the dedicated host.', 'type' => 'string', 'example' => 'this-is-my-DDH', 'title' => ''], 'DedicatedHostClusterId' => ['description' => 'The ID of the dedicated host cluster to which the dedicated host belongs.', 'type' => 'string', 'example' => 'dc-bp12wlf6am0vz9v2****', 'title' => ''], 'ExpiredTime' => ['description' => 'The expiration time of the dedicated host. The time is in UTC and formatted as `yyyy-MM-ddTHH:mmZ` in compliance with the [ISO 8601](~~25696~~) standard.', 'type' => 'string', 'example' => '2019-01-01T12:00Z', 'title' => ''], 'DedicatedHostType' => ['description' => 'The type of the dedicated host.', 'type' => 'string', 'example' => 'ddh.g5', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the dedicated host belongs.', 'type' => 'string', 'example' => 'rg-aek3b6jzp66****', 'title' => ''], 'ZoneId' => ['description' => 'The ID of the zone where the dedicated host is located.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'DedicatedHostId' => ['description' => 'The ID of the dedicated host.', 'type' => 'string', 'example' => 'dh-bp165p6xk2tlw61e****', 'title' => ''], 'Sockets' => ['description' => 'The number of physical CPUs (sockets).', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'MachineId' => ['description' => 'The machine code of the dedicated host.', 'type' => 'string', 'example' => '12aaa123456ff19dec12345d3026e****', 'title' => ''], 'Instances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Instance' => [ 'description' => 'A list of ECS instances on the dedicated host.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InstanceType' => ['description' => 'The instance type of the ECS instance.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the ECS instance.', 'type' => 'string', 'example' => 'i-bp14ot0ykf8w13a1****', 'title' => ''], 'SocketId' => ['description' => 'The index of the socket that hosts the instance.', 'type' => 'string', 'example' => '0,1', 'title' => ''], 'InstanceOwnerId' => ['description' => 'The user ID of the ECS instance owner.', 'type' => 'integer', 'format' => 'int64', 'example' => '128************0', 'title' => ''], ], 'description' => 'An ECS instance on the dedicated host.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'OperationLocks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'OperationLock' => [ 'description' => 'The reasons for the lock on the dedicated host.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LockReason' => ['description' => 'The reason for the lock. Valid values:'."\n" ."\n" .'- `financial`: The dedicated host was locked due to an overdue payment.'."\n" ."\n" .'- `security`: The dedicated host was locked for security reasons.', 'type' => 'string', 'example' => 'financial', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the dedicated host.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The value of the tag.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The key of the tag.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => 'A key-value pair that makes up a tag.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SupportedInstanceTypeFamilies' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedInstanceTypeFamily' => [ 'description' => 'The ECS instance type families supported by the dedicated host.', 'type' => 'array', 'items' => ['description' => 'The instance type family supported by the dedicated host.', 'type' => 'string', 'example' => 'ecs.g5', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SupportedCustomInstanceTypeFamilies' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedCustomInstanceTypeFamily' => [ 'description' => 'The custom instance type families supported by the dedicated host.', 'type' => 'array', 'items' => ['description' => 'The custom instance type family supported by the dedicated host.', 'type' => 'string', 'example' => 'ecs.ddh6s.custom', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SupportedInstanceTypesList' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedInstanceTypesList' => [ 'description' => 'The ECS instance types supported by the dedicated host.', 'type' => 'array', 'items' => ['description' => 'The instance type supported by the dedicated host.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Capacity' => [ 'description' => 'The resource capacity of the dedicated host.', 'type' => 'object', 'properties' => [ 'AvailableMemory' => ['description' => 'The available memory capacity. Unit: GiB.', 'type' => 'number', 'format' => 'float', 'example' => '25', 'title' => ''], 'LocalStorageCategory' => ['description' => 'The category of the local disk.', 'type' => 'string', 'example' => 'i2', 'title' => ''], 'TotalMemory' => ['description' => 'The total memory capacity. Unit: GiB.', 'type' => 'number', 'format' => 'float', 'example' => '1024', 'title' => ''], 'TotalLocalStorage' => ['description' => 'The total capacity of the local disks. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '512', 'title' => ''], 'TotalVcpus' => ['description' => 'The total number of vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '56', 'title' => ''], 'TotalVgpus' => ['description' => 'The total number of vGPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'AvailableLocalStorage' => ['description' => 'The available capacity of the local disks. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '65', 'title' => ''], 'AvailableVcpus' => ['description' => 'The number of available vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'AvailableVgpus' => ['description' => 'The number of available vGPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'SocketCapacities' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SocketCapacity' => [ 'description' => 'The capacity of each socket.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'SocketId' => ['description' => 'The index of the socket.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'AvailableMemory' => ['description' => 'The available memory capacity. Unit: GiB.', 'type' => 'number', 'format' => 'float', 'example' => '65', 'title' => ''], 'TotalMemory' => ['description' => 'The total memory capacity. Unit: GiB.', 'type' => 'number', 'format' => 'float', 'example' => '128', 'title' => ''], 'AvailableVcpu' => ['description' => 'The number of available vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '64', 'title' => ''], 'TotalVcpu' => ['description' => 'The total number of vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '128', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AvailableInstanceTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableInstanceType' => [ 'description' => 'The information about the available instance types.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InstanceType' => ['description' => 'The instance type. For more information, see [Instance type families](~~25378~~).'."\n" ."\n" .'>', 'type' => 'string', 'title' => '', 'example' => ''], 'AvailableInstanceCapacity' => ['description' => 'The number of available instances of the specified instance type.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], ], 'description' => 'The information about an available instance type.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'NetworkAttributes' => [ 'description' => 'The network attributes of the dedicated host.', 'type' => 'object', 'properties' => [ 'UdpTimeout' => ['description' => 'The timeout period of the UDP session. Unit: seconds. Only 60 is supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'SlbUdpTimeout' => ['description' => 'The timeout period of the SLB UDP session. Unit: seconds. Only 60 is supported.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], ], 'title' => '', 'example' => '', ], 'HostDetailInfo' => [ 'description' => 'This parameter is deprecated. We recommend that you use other parameters to ensure future compatibility.', 'type' => 'object', 'properties' => [ 'SerialNumber' => ['description' => 'This parameter is deprecated. We recommend that you use other parameters to ensure future compatibility.', 'type' => 'string', 'example' => 'null', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DedicatedHostOwnerId' => ['description' => 'The user ID of the dedicated host owner.', 'type' => 'integer', 'format' => 'int64', 'example' => '100************7', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidStatus.ValueNotSupported', 'errorMessage' => 'The pecified dedicated host status is not supported.', 'description' => 'The host is in a state that does not support the current operation.'], ['errorCode' => 'MissingParamter.RegionId', 'errorMessage' => 'The regionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.DedicatedHostIds', 'errorMessage' => 'The specified parameter dedicatedHostIds is not valid.', 'description' => 'The specified DedicatedHostIds parameter is invalid.'], ['errorCode' => 'InvalidRegion.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidZone.NotFound', 'errorMessage' => 'The specified parameter ZoneId is not valid.', 'description' => 'The specified ZoneId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidDedicatedHostIds.Malformed', 'errorMessage' => 'The amount of specified dedicatedHostIds exceeds the limit.', 'description' => 'More than 100 dedicated host IDs are specified in the DedicatedHostIds value.'], ], [ ['errorCode' => 'InvalidLockReason.NotFound', 'errorMessage' => 'The specified LockReason is not found.', 'description' => 'The specified lockout reason does not exist.'], ], ], 'title' => 'Query detailed information about Dedicated Hosts', 'description' => '## API'."\n" ."\n" .'You can query the details of one or more dedicated hosts in one of the following ways:'."\n" ."\n" .'- Specify `DedicatedHostIds` to query specific dedicated hosts.'."\n" ."\n" .'- Specify `DedicatedHostClusterId` to query all dedicated hosts in a dedicated host cluster.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-07-08T06:24:54.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-04-11T06:53:51.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2023-03-16T07:55:50.000Z', 'description' => 'Response parameters changed, Response parameters changed'], ['createdAt' => '2021-06-18T10:38:41.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-06-18T10:38:41.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDedicatedHosts'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDedicatedHosts', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'DedicatedHost', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddh/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'DedicatedHost', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddh/{#ddhId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 1,\\n \\"RequestId\\": \\"7654525A-9964-4ABB-8BCD-98F8835E809A\\",\\n \\"PageNumber\\": 5,\\n \\"TotalCount\\": 3,\\n \\"NextToken\\": \\"e71d8a535bd9cc11\\",\\n \\"DedicatedHosts\\": {\\n \\"DedicatedHost\\": [\\n {\\n \\"CreationTime\\": \\"2018-01-01T12:00Z\\",\\n \\"SchedulerOptions.ManagedPrivateSpaceId\\": \\"mps-iq81z6pkbqjx61php46e\\",\\n \\"Status\\": \\"Available\\",\\n \\"Cores\\": 3,\\n \\"AutoPlacement\\": \\"on\\",\\n \\"GPUSpec\\": \\"gpu\\",\\n \\"AutoReleaseTime\\": \\"2017-01-01T12:00Z\\",\\n \\"ChargeType\\": \\"Prepaid\\",\\n \\"CpuOverCommitRatio\\": 1,\\n \\"ActionOnMaintenance\\": \\"Migrate\\",\\n \\"SaleCycle\\": \\"Month\\",\\n \\"PhysicalGpus\\": 10,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"DedicatedHostName\\": \\"MyDDHTestName\\",\\n \\"Description\\": \\"this-is-my-DDH\\",\\n \\"DedicatedHostClusterId\\": \\"dc-bp12wlf6am0vz9v2****\\",\\n \\"ExpiredTime\\": \\"2019-01-01T12:00Z\\",\\n \\"DedicatedHostType\\": \\"ddh.g5\\",\\n \\"ResourceGroupId\\": \\"rg-aek3b6jzp66****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"DedicatedHostId\\": \\"dh-bp165p6xk2tlw61e****\\",\\n \\"Sockets\\": 5,\\n \\"MachineId\\": \\"12aaa123456ff19dec12345d3026e****\\",\\n \\"Instances\\": {\\n \\"Instance\\": [\\n {\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"InstanceId\\": \\"i-bp14ot0ykf8w13a1****\\",\\n \\"SocketId\\": \\"0,1\\",\\n \\"InstanceOwnerId\\": 0\\n }\\n ]\\n },\\n \\"OperationLocks\\": {\\n \\"OperationLock\\": [\\n {\\n \\"LockReason\\": \\"financial\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"SupportedInstanceTypeFamilies\\": {\\n \\"SupportedInstanceTypeFamily\\": [\\n \\"ecs.g5\\"\\n ]\\n },\\n \\"SupportedCustomInstanceTypeFamilies\\": {\\n \\"SupportedCustomInstanceTypeFamily\\": [\\n \\"ecs.ddh6s.custom\\"\\n ]\\n },\\n \\"SupportedInstanceTypesList\\": {\\n \\"SupportedInstanceTypesList\\": [\\n \\"ecs.g5.large\\"\\n ]\\n },\\n \\"Capacity\\": {\\n \\"AvailableMemory\\": 25,\\n \\"LocalStorageCategory\\": \\"i2\\",\\n \\"TotalMemory\\": 1024,\\n \\"TotalLocalStorage\\": 512,\\n \\"TotalVcpus\\": 56,\\n \\"TotalVgpus\\": 10,\\n \\"AvailableLocalStorage\\": 65,\\n \\"AvailableVcpus\\": 5,\\n \\"AvailableVgpus\\": 2,\\n \\"SocketCapacities\\": {\\n \\"SocketCapacity\\": [\\n {\\n \\"SocketId\\": 1,\\n \\"AvailableMemory\\": 65,\\n \\"TotalMemory\\": 128,\\n \\"AvailableVcpu\\": 64,\\n \\"TotalVcpu\\": 128\\n }\\n ]\\n },\\n \\"AvailableInstanceTypes\\": {\\n \\"AvailableInstanceType\\": [\\n {\\n \\"InstanceType\\": \\"\\",\\n \\"AvailableInstanceCapacity\\": 0\\n }\\n ]\\n }\\n },\\n \\"NetworkAttributes\\": {\\n \\"UdpTimeout\\": 60,\\n \\"SlbUdpTimeout\\": 60\\n },\\n \\"HostDetailInfo\\": {\\n \\"SerialNumber\\": \\"null\\"\\n },\\n \\"DedicatedHostOwnerId\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeDeploymentSetSupportedInstanceTypeFamily' => [ 'summary' => 'Queries the instance families that support different deployment strategies. When you call this operation, specify parameters, such as RegionId and Strategy, in the request.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28919', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Strategy', 'in' => 'query', 'schema' => ['description' => 'The deployment strategy. Valid values:'."\n" ."\n" .'- Availability: high availability strategy'."\n" ."\n" .'- AvailabilityGroup: high availability group strategy'."\n" ."\n" .'- LowLatency: low latency strategy'."\n" ."\n" .'Default value: Availability.', 'type' => 'string', 'required' => false, 'example' => 'Availability', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'InstanceTypeFamilies' => ['description' => 'The instance families that support the deployment strategy.', 'type' => 'string', 'example' => 'ecs.i2g,ecs.i1,ecs.i2ne,ecs.i2gne', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B7DB-A3DC7DE1****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'DescribeDeploymentSetSupportedInstanceTypeFamily', 'description' => '## [](#)Usage notes'."\n" ."\n" .'For information about instance families, see [Overview of instance families](~~25378~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-04-26T02:01:30.000Z', 'description' => 'Request parameters changed, Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDeploymentSetSupportedInstanceTypeFamily'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"InstanceTypeFamilies\\": \\"ecs.i2g,ecs.i1,ecs.i2ne,ecs.i2gne\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B7DB-A3DC7DE1****\\"\\n}","type":"json"}]', ], 'DescribeDeploymentSets' => [ 'summary' => 'Describes one or more deployment sets.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28918', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the deployment set is located. You can call [DescribeRegions](~~25609~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Starts at 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Maximum value: 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'DeploymentSetIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of the deployment sets. The value can be a JSON array that consists of up to 100 deployment set IDs. Sample format: `["ds-xxxxxxxxx", "ds-yyyyyyyyy", … "ds-zzzzzzzzz"]`.', 'type' => 'string', 'required' => false, 'example' => '["ds-bp67acfmxazb4ph****", "ds-bp67acfmxazb4pi****", … "ds-bp67acfmxazb4pj****"]', 'title' => ''], ], [ 'name' => 'NetworkType', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'Strategy', 'in' => 'query', 'schema' => ['description' => 'The deployment strategy. Valid values:'."\n" ."\n" .'- Availability: high availability strategy.'."\n" ."\n" .'- AvailabilityGroup: high availability group strategy.'."\n" ."\n" .'- LowLatency: low-latency strategy.', 'type' => 'string', 'required' => false, 'example' => 'Availability', 'title' => ''], ], [ 'name' => 'DeploymentSetName', 'in' => 'query', 'schema' => ['description' => 'The name of the deployment set. The name must be 2 to 128 characters in length and can contain letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testDeploymentSetName', 'title' => ''], ], [ 'name' => 'Granularity', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'Domain', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The deployment type. Valid values:'."\n" ."\n" .'- host: Ensures that the instances in the deployment set are deployed on different hosts.'."\n" ."\n" .'- sw: Ensures that the instances in the deployment set are deployed on different switches.'."\n" ."\n" .'- rack: Ensures that the instances in the deployment set are deployed on different racks.'."\n" ."\n" .'Default value: host.', 'type' => 'string', 'required' => false, 'example' => 'host', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the deployment set list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of deployment sets.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'RegionId' => ['description' => 'The ID of the region.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'DeploymentSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DeploymentSet' => [ 'description' => 'An array of deployment sets.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The creation time of the deployment set.', 'type' => 'string', 'example' => '2021-12-07T06:01:46Z', 'title' => ''], 'Strategy' => ['description' => 'The deployment strategy.', 'type' => 'string', 'example' => 'Availability', 'title' => ''], 'DeploymentSetId' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'example' => 'ds-bp67acfmxazb4ph****', 'title' => ''], 'AccountId' => ['description' => 'The ID of the Alibaba Cloud account.', 'type' => 'integer', 'format' => 'int64', 'example' => '1732*******734', 'title' => ''], 'DeploymentStrategy' => ['description' => 'The deployment strategy. This value matches the value of the request parameter `Strategy`.', 'type' => 'string', 'example' => 'Availability', 'title' => ''], 'DeploymentSetDescription' => ['description' => 'The description of the deployment set.', 'type' => 'string', 'example' => 'testDeploymentSetDescription', 'title' => ''], 'Domain' => ['description' => 'The deployment domain.', 'type' => 'string', 'example' => 'default', 'title' => ''], 'GroupCount' => ['description' => 'The number of groups in the deployment set.'."\n" ."\n" .'> This parameter is returned only when the deployment strategy is the Availability Group strategy (`AvailabilityGroup`).', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'Granularity' => ['description' => 'The deployment granularity.', 'type' => 'string', 'example' => 'host', 'title' => ''], 'DeploymentSetName' => ['description' => 'The name of the deployment set.', 'type' => 'string', 'example' => 'testDeploymentSetName', 'title' => ''], 'InstanceAmount' => ['description' => 'The number of instances in the deployment set.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'InstanceIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceId' => [ 'description' => 'A list of instance IDs in the deployment set.', 'type' => 'array', 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4ph****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => 'The IDs of the instances in the deployment set.', 'title' => '', 'example' => '', ], 'Capacities' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Capacity' => [ 'description' => 'The capacity information for each zone that contains instances of the deployment set. This parameter is returned only when the deployment set contains instances.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ZoneId' => ['description' => 'The ID of a zone that contains instances from the deployment set.', 'type' => 'string', 'example' => 'cn-hangzhou-i', 'title' => ''], 'UsedAmount' => ['description' => 'The number of instances from the deployment set in this zone.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'AvailableAmount' => ['description' => 'The number of instances that can be added to the deployment set in the zone.', 'type' => 'integer', 'format' => 'int32', 'example' => '18', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The zone-specific capacities of the deployment set.', 'title' => '', 'example' => '', ], 'Type' => ['description' => 'The deployment granularity.', 'type' => 'string', 'example' => 'host', 'title' => ''], 'Affinity' => ['description' => 'The affinity level of the deployment set.', 'type' => 'integer', 'format' => 'int64', 'example' => '3', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'Details of deployment sets.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidDeploymentSetIds.TooManyInput', 'errorMessage' => 'The parameter DeploymentSets size should less than 100.', 'description' => 'The number of specified deployment sets exceeds 100.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 1,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 5,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"DeploymentSets\\": {\\n \\"DeploymentSet\\": [\\n {\\n \\"CreationTime\\": \\"2021-12-07T06:01:46Z\\",\\n \\"Strategy\\": \\"Availability\\",\\n \\"DeploymentSetId\\": \\"ds-bp67acfmxazb4ph****\\",\\n \\"AccountId\\": 0,\\n \\"DeploymentStrategy\\": \\"Availability\\",\\n \\"DeploymentSetDescription\\": \\"testDeploymentSetDescription\\",\\n \\"Domain\\": \\"default\\",\\n \\"GroupCount\\": 3,\\n \\"Granularity\\": \\"host\\",\\n \\"DeploymentSetName\\": \\"testDeploymentSetName\\",\\n \\"InstanceAmount\\": 3,\\n \\"InstanceIds\\": {\\n \\"InstanceId\\": [\\n \\"i-bp67acfmxazb4ph****\\"\\n ]\\n },\\n \\"Capacities\\": {\\n \\"Capacity\\": [\\n {\\n \\"ZoneId\\": \\"cn-hangzhou-i\\",\\n \\"UsedAmount\\": 2,\\n \\"AvailableAmount\\": 18\\n }\\n ]\\n },\\n \\"Type\\": \\"host\\",\\n \\"Affinity\\": 3\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeDeploymentSets', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-07-24T06:02:53.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-01-17T10:00:55.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDeploymentSets'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDeploymentSets', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'DeploymentSet', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:deploymentset/*'], ], ], ], ], ], 'DescribeDiagnosticMetricSets' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '142762', 'abilityTreeNodes' => ['FEATUREecsE0CAY4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the diagnostic metric set. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'MetricSetIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of diagnostic metric sets.', 'type' => 'array', 'items' => ['description' => 'The ID of diagnostic metric set N.', 'type' => 'string', 'required' => false, 'example' => 'dms-uf6i0tv2refv8wz*****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'description' => 'The type of the diagnostic metric set. Valid values:'."\n" ."\n" .'- User: custom diagnostic metric set'."\n" ."\n" .'- Common: public diagnostic metric set'."\n" ."\n" .'Default value: User.', 'type' => 'string', 'enum' => ['User', 'Common'], 'required' => false, 'example' => 'User', 'title' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => [ 'description' => 'The resource type supported by the diagnostic metric set.', 'type' => 'string', 'enum' => ['instance'], 'required' => false, 'example' => 'instance', 'title' => '', ], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of `NextToken`.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If this parameter is left empty, the default value is 10.'."\n" ."\n" .'- If you set this parameter to a value that is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****'], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'MetricSets' => [ 'description' => 'The diagnostic metric sets.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'MetricSetId' => ['description' => 'The ID of the diagnostic metric set.', 'type' => 'string', 'example' => 'dms-bp17p0qwtr72zmu*****', 'title' => ''], 'MetricSetName' => ['description' => 'The name of the diagnostic metric set.', 'type' => 'string', 'example' => '远程连接问题诊断', 'title' => ''], 'Description' => ['description' => 'The description of the diagnostic metric set.', 'type' => 'string', 'example' => '远程连接问题诊断', 'title' => ''], 'Type' => ['description' => 'The type of the diagnostic metric set. Valid values:'."\n" ."\n" .'- User: user-defined diagnostic metric set'."\n" ."\n" .'- Common: common diagnostic metric set', 'type' => 'string', 'example' => 'User', 'title' => ''], 'ResourceType' => ['description' => 'The resource type supported by the diagnostic metric set.', 'type' => 'string', 'example' => 'instance', 'title' => ''], 'MetricIds' => [ 'description' => 'The IDs of the diagnostic metrics.', 'type' => 'array', 'items' => ['description' => 'The ID of the diagnostic metric.', 'type' => 'string', 'example' => 'Instance.DiskLoadFailure', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidMetricSetId.NotExist', 'errorMessage' => 'The specified MetricSetId does not exist.', 'description' => 'The specified MetricSetId does not exist.'], ], ], 'title' => 'DescribeDiagnosticMetricSets', 'summary' => 'Queries diagnostic metric sets.', 'changeSet' => [ ['createdAt' => '2025-06-12T07:19:39.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-07-21T10:53:56.000Z', 'description' => 'OpenAPI offline'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDiagnosticMetricSets'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDiagnosticMetricSets', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"MetricSets\\": [\\n {\\n \\"MetricSetId\\": \\"dms-bp17p0qwtr72zmu*****\\",\\n \\"MetricSetName\\": \\"远程连接问题诊断\\",\\n \\"Description\\": \\"远程连接问题诊断\\",\\n \\"Type\\": \\"User\\",\\n \\"ResourceType\\": \\"instance\\",\\n \\"MetricIds\\": [\\n \\"Instance.DiskLoadFailure\\"\\n ]\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeDiagnosticMetrics' => [ 'summary' => 'Queries diagnostic metrics.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '142763', 'abilityTreeNodes' => ['FEATUREecsE0CAY4'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID pf the diagnostic metric. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'MetricIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of diagnostic metrics.', 'type' => 'array', 'items' => ['description' => 'The ID of diagnostic metric N.', 'type' => 'string', 'required' => false, 'example' => 'Instance.DiskLoadFailure', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => [ 'description' => 'The resource type supported by the diagnostic metric.', 'type' => 'string', 'enum' => ['instance'], 'required' => false, 'example' => 'instance', 'title' => '', ], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of `NextToken`.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If this parameter is left empty, the default value is 10.'."\n" ."\n" .'- If you set this parameter to a value that is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****'], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'Metrics' => [ 'description' => 'The diagnostic metrics.', 'type' => 'array', 'items' => [ 'description' => 'The diagnostic metric.', 'type' => 'object', 'properties' => [ 'MetricId' => ['description' => 'The ID of the diagnostic metric.', 'type' => 'string', 'example' => 'GuestOS.WinFirewall', 'title' => ''], 'MetricName' => ['description' => 'The name of the diagnostic metric.', 'type' => 'string', 'example' => 'CPU诊断', 'title' => ''], 'MetricCategory' => ['description' => 'The category of the diagnostic metric.', 'type' => 'string', 'example' => 'CPU', 'title' => ''], 'Description' => ['description' => 'The description of the diagnostic metric.', 'type' => 'string', 'example' => 'CPU诊断', 'title' => ''], 'ResourceType' => ['description' => 'The resource type supported by the diagnostic metric.', 'type' => 'string', 'example' => 'instance', 'title' => ''], 'GuestMetric' => ['description' => 'Indicates whether the diagnostic metric needs to be assessed by running a Cloud Assistant command in a guest operating system.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SupportedOperatingSystem' => ['description' => 'The operating system type supported by the diagnostic metric. Valid values:'."\n" ."\n" .'- Windows'."\n" ."\n" .'- Linux'."\n" ."\n" .'- All: Windows and Linux', 'type' => 'string', 'example' => 'ALL', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'title' => 'DescribeDiagnosticMetrics', 'changeSet' => [ ['createdAt' => '2022-07-21T10:53:56.000Z', 'description' => 'OpenAPI offline'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDiagnosticMetrics'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDiagnosticMetrics', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"Metrics\\": [\\n {\\n \\"MetricId\\": \\"GuestOS.WinFirewall\\",\\n \\"MetricName\\": \\"CPU诊断\\",\\n \\"MetricCategory\\": \\"CPU\\",\\n \\"Description\\": \\"CPU诊断\\",\\n \\"ResourceType\\": \\"instance\\",\\n \\"GuestMetric\\": true,\\n \\"SupportedOperatingSystem\\": \\"ALL\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeDiagnosticReportAttributes' => [ 'summary' => 'Call `DescribeDiagnosticReportAttributes` to get the details of a resource diagnosis.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '144108', 'abilityTreeNodes' => ['FEATUREecsE0CAY4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. Call [DescribeRegions](~~25609~~) to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ReportId', 'in' => 'query', 'schema' => ['description' => 'The ID of the diagnostic report.', 'type' => 'string', 'required' => true, 'example' => 'dr-i-uf6i0tv2refv8wz*****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'i-uf6i0tv2refv8wz*****', 'title' => ''], 'ResourceType' => ['description' => 'The resource type. Only `instance` is supported.', 'type' => 'string', 'example' => 'instance', 'title' => ''], 'ReportId' => ['description' => 'The unique ID of the diagnostic report.', 'type' => 'string', 'example' => 'dr-uf6i0tv2refv8wz*****', 'title' => ''], 'Status' => ['description' => 'The status of the diagnostic report. Possible values:'."\n" ."\n" .'- InProgress: The diagnosis is in progress.'."\n" ."\n" .'- Finished: The diagnosis is complete.'."\n" ."\n" .'- Failed: The diagnosis failed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'CreationTime' => ['description' => 'The time when the diagnostic report was created.', 'type' => 'string', 'example' => '2022-07-11T12:00:00Z', 'title' => ''], 'FinishedTime' => ['description' => 'The time when the diagnosis was complete.', 'type' => 'string', 'example' => '2022-07-11T14:00:00Z', 'title' => ''], 'StartTime' => ['description' => 'The start of the diagnostic time range. This value corresponds to the `StartTime` parameter you provided when calling the [CreateDiagnosticReport](~~442490~~) operation.', 'type' => 'string', 'example' => '2022-07-11T12:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end of the diagnostic time range. This value corresponds to the `EndTime` parameter you provided when calling the [CreateDiagnosticReport](~~442490~~) operation.', 'type' => 'string', 'example' => '2022-07-11T14:00:00Z', 'title' => ''], 'Severity' => ['description' => 'The overall severity level of the diagnostic report. This is the highest severity level among all metrics in the report. Valid values are listed below, from lowest to highest severity:'."\n" ."\n" .'- Unknown: The initial state. The diagnosis has not started or exited unexpectedly, so the result is inconclusive.'."\n" ."\n" .'- Normal: The resource is healthy, and no issues were found.'."\n" ."\n" .'- Info: Informational messages were found that may be relevant to an issue.'."\n" ."\n" .'- Warn: Warnings were found that may lead to an issue.'."\n" ."\n" .'- Critical: Critical issues were found.', 'type' => 'string', 'example' => 'Normal', 'title' => ''], 'MetricSetId' => ['description' => 'The metric set ID.', 'type' => 'string', 'example' => 'dms-bp17p0qwtr72zmu*****', 'title' => ''], 'MetricResults' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'MetricResult' => [ 'description' => 'A list of the diagnostic results for all metrics in the metric set.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'MetricId' => ['description' => 'The metric ID.', 'type' => 'string', 'example' => 'GuestOS.WinFirewall', 'title' => ''], 'MetricCategory' => ['description' => 'The metric category.', 'type' => 'string', 'example' => 'CPU', 'title' => ''], 'Severity' => ['description' => 'The severity level of the metric. The valid values are:'."\n" ."\n" .'- Unknown: The initial state. The diagnosis has not started or exited unexpectedly, so the result is inconclusive.'."\n" ."\n" .'- Normal: The metric is normal, and no issues were found.'."\n" ."\n" .'- Info: Informational messages were found that may be relevant to an issue.'."\n" ."\n" .'- NotSupport: The guest OS version does not support this diagnostic metric.'."\n" ."\n" .'- Warn: Warnings were found that may lead to an issue.'."\n" ."\n" .'- Critical: Critical issues were found.', 'type' => 'string', 'example' => 'Normal', 'title' => ''], 'Status' => ['description' => 'The diagnostic status of the metric. The valid values are:'."\n" ."\n" .'- InProgress: The diagnosis is in progress.'."\n" ."\n" .'- Finished: The diagnosis is complete.'."\n" ."\n" .'- Failed: The diagnosis failed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'Issues' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Issue' => [ 'description' => 'The list of issues.', 'type' => 'array', 'items' => [ 'description' => 'A diagnosed issue.', 'type' => 'object', 'properties' => [ 'IssueId' => ['description' => 'The unique ID of the issue.', 'type' => 'string', 'example' => 'GuestOS.CPU.HighUtiliz*****', 'title' => ''], 'Severity' => ['description' => 'The severity level of the issue. The following values are listed in ascending order of severity:'."\n" ."\n" .'- Info: Informational messages were found that may be relevant to an issue.'."\n" ."\n" .'- Warn: Warnings were found that may lead to an issue.'."\n" ."\n" .'- Critical: Critical issues were found.', 'type' => 'string', 'example' => 'Info', 'title' => ''], 'Additional' => ['description' => 'Additional information about the issue. The value is a JSON-formatted string.', 'type' => 'string', 'example' => '{'."\n" .' "TotalPercent": 95,'."\n" .' "TopUtilizationProcesses": ['."\n" .' {'."\n" .' "Pid": "1223",'."\n" .' "CommandName": "/usr/bin/mem.py",'."\n" .' "PhysicalMemoryPercent": 50'."\n" .' }'."\n" .' ]'."\n" .'}', 'title' => ''], 'OccurrenceTime' => ['description' => 'The time when the issue occurred.', 'type' => 'string', 'example' => '2022-07-11T14:00:00Z', 'title' => ''], 'RepairStatus' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Repairable' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The issues identified for the metric.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The diagnostic results for the metrics.', 'title' => '', 'example' => '', ], 'Attributes' => ['description' => 'The extended attributes of the diagnostic report.', 'type' => 'string', 'example' => '{"OfflineDiagReportStatus":"CONFIRMED"}', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter.ReportNotExist', 'errorMessage' => 'The specified report does not exist.', 'description' => ''], ], ], 'title' => 'DescribeDiagnosticReportAttributes', 'changeSet' => [ ['createdAt' => '2022-12-27T02:30:45.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDiagnosticReportAttributes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDiagnosticReportAttributes', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ResourceId\\": \\"i-uf6i0tv2refv8wz*****\\",\\n \\"ResourceType\\": \\"instance\\",\\n \\"ReportId\\": \\"dr-uf6i0tv2refv8wz*****\\",\\n \\"Status\\": \\"Finished\\",\\n \\"CreationTime\\": \\"2022-07-11T12:00:00Z\\",\\n \\"FinishedTime\\": \\"2022-07-11T14:00:00Z\\",\\n \\"StartTime\\": \\"2022-07-11T12:00:00Z\\",\\n \\"EndTime\\": \\"2022-07-11T14:00:00Z\\",\\n \\"Severity\\": \\"Normal\\",\\n \\"MetricSetId\\": \\"dms-bp17p0qwtr72zmu*****\\",\\n \\"MetricResults\\": {\\n \\"MetricResult\\": [\\n {\\n \\"MetricId\\": \\"GuestOS.WinFirewall\\",\\n \\"MetricCategory\\": \\"CPU\\",\\n \\"Severity\\": \\"Normal\\",\\n \\"Status\\": \\"Finished\\",\\n \\"Issues\\": {\\n \\"Issue\\": [\\n {\\n \\"IssueId\\": \\"GuestOS.CPU.HighUtiliz*****\\",\\n \\"Severity\\": \\"Info\\",\\n \\"Additional\\": \\"{\\\\n \\\\\\"TotalPercent\\\\\\": 95,\\\\n \\\\\\"TopUtilizationProcesses\\\\\\": [\\\\n {\\\\n \\\\\\"Pid\\\\\\": \\\\\\"1223\\\\\\",\\\\n \\\\\\"CommandName\\\\\\": \\\\\\"/usr/bin/mem.py\\\\\\",\\\\n \\\\\\"PhysicalMemoryPercent\\\\\\": 50\\\\n }\\\\n ]\\\\n}\\",\\n \\"OccurrenceTime\\": \\"2022-07-11T14:00:00Z\\",\\n \\"RepairStatus\\": \\"\\",\\n \\"Repairable\\": false\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"Attributes\\": \\"{\\\\\\"OfflineDiagReportStatus\\\\\\":\\\\\\"CONFIRMED\\\\\\"}\\"\\n}","type":"json"}]', ], 'DescribeDiagnosticReports' => [ 'summary' => 'Queries resource diagnostic reports.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '142820', 'abilityTreeNodes' => ['FEATUREecsE0CAY4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'cn-hangzhou'], ], [ 'name' => 'ReportIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of diagnostic reports.', 'type' => 'array', 'items' => ['description' => 'The ID of diagnostic report N. You can specify up to 100 diagnostic report IDs.', 'type' => 'string', 'required' => false, 'example' => 'dr-uf6i0tv2refv8wz*****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'minItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of resources. You can specify up to 100 resource IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of resource N.', 'type' => 'string', 'required' => false, 'example' => 'i-uf6i0tv2refv8wz*****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'minItems' => 1, 'title' => '', 'example' => '', ], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => [ 'description' => 'The status of the diagnostic report. Valid values:'."\n" ."\n" .'- InProgress'."\n" ."\n" .'- Failed'."\n" ."\n" .'- Finished', 'type' => 'string', 'enum' => ['InProgress', 'Finished', 'Failed', 'inprogress', 'finished', 'failed'], 'title' => '', 'required' => false, 'example' => 'Finished', ], ], [ 'name' => 'Severity', 'in' => 'query', 'schema' => [ 'description' => 'The severity level of the diagnostic report. Valid values:'."\n" ."\n" .'- Unknown: The diagnostic did not start, failed to run, or unexpectedly exited without a diagnosis.'."\n" ."\n" .'- Normal: No exceptions were detected.'."\n" ."\n" .'- Info: Diagnostic information was recorded and may be related to exceptions.'."\n" ."\n" .'- Warn: Diagnostic information was recorded and may indicate exceptions.'."\n" ."\n" .'- Critical: Critical exceptions were detected.', 'type' => 'string', 'enum' => ['normal', 'info', 'warn', 'critical', 'Normal', 'Info', 'Warn', 'Critical', 'unknown', 'Unknown'], 'title' => '', 'required' => false, 'example' => 'Normal', ], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of `NextToken`.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If this parameter is left empty, the default value is 10.'."\n" ."\n" .'- If you set this parameter to a value that is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****'], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'Reports' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Report' => [ 'description' => 'The diagnostic reports.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceId' => ['description' => 'The ID of the resource.', 'type' => 'string', 'example' => 'i-uf6i0tv2refv8wz*****', 'title' => ''], 'ResourceType' => ['description' => 'The type of the resource.', 'type' => 'string', 'example' => 'instance', 'title' => ''], 'MetricSetId' => ['description' => 'The ID of the diagnostic metric set.', 'type' => 'string', 'example' => 'dms-bp17p0qwtr72zmu*****', 'title' => ''], 'StartTime' => ['description' => 'The beginning of the time range during which data was queried. The value is the StartTime value that was passed in when you called the [CreateDiagnosticReport](~~442490~~) operation to create the diagnostic report.', 'type' => 'string', 'example' => '2022-07-11T12:00:00Z', 'title' => ''], 'EndTime' => ['description' => 'The end of the time range during which data was queried. The value is the EndTime value that was passed in when you called the [CreateDiagnosticReport](~~442490~~) operation to create the diagnostic report.', 'type' => 'string', 'example' => '2022-07-11T14:00:00Z', 'title' => ''], 'ReportId' => ['description' => 'The ID of the diagnostic report.', 'type' => 'string', 'example' => 'dr-uf6i0tv2refv8wz*****', 'title' => ''], 'Status' => ['description' => 'The status of the diagnostic report.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'CreationTime' => ['description' => 'The time when the diagnostic report was created.', 'type' => 'string', 'example' => '2022-07-11T12:00:00Z', 'title' => ''], 'FinishedTime' => ['description' => 'The time when the diagnostic was complete.', 'type' => 'string', 'example' => '2022-07-11T14:00:00Z', 'title' => ''], 'Severity' => ['description' => 'The severity level of the diagnostic report. Valid values:'."\n" ."\n" .'- Unknown: The diagnostic did not start, failed to run, or unexpectedly exited without a diagnosis.'."\n" ."\n" .'- Normal: No exceptions were detected.'."\n" ."\n" .'- Info: Diagnostic information was recorded and may be related to exceptions.'."\n" ."\n" .'- Warn: Diagnostic information was recorded and may indicate exceptions.'."\n" ."\n" .'- Critical: Critical exceptions were detected.', 'type' => 'string', 'example' => 'Normal', 'title' => ''], 'Issues' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Issue' => [ 'description' => 'The diagnosed issues.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'MetricId' => ['description' => 'The ID of the diagnostic metric.', 'type' => 'string', 'example' => 'GuestOS.WinFirewall', 'title' => ''], 'MetricCategory' => ['description' => 'The category of the diagnostic metric.', 'type' => 'string', 'example' => 'ECSService.GuestOS', 'title' => ''], 'IssueId' => ['description' => 'The ID of the diagnosed issue, which is the unique identifier of the issue.', 'type' => 'string', 'example' => 'GuestOS.CPU.HighUtiliz*****', 'title' => ''], 'Severity' => ['description' => 'The severity level of the diagnostic metric. Valid values:'."\n" ."\n" .'- Info: Diagnostic information was recorded and may be related to exceptions.'."\n" ."\n" .'- Warn: Diagnostic information was recorded and may indicate exceptions.'."\n" ."\n" .'- Critical: Critical exceptions were detected.', 'type' => 'string', 'example' => 'Info', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeDiagnosticReports', 'changeSet' => [ ['createdAt' => '2022-11-22T09:36:31.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-11-22T09:36:31.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-07-21T10:53:56.000Z', 'description' => 'OpenAPI offline'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDiagnosticReports'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDiagnosticReports', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"Reports\\": {\\n \\"Report\\": [\\n {\\n \\"ResourceId\\": \\"i-uf6i0tv2refv8wz*****\\",\\n \\"ResourceType\\": \\"instance\\",\\n \\"MetricSetId\\": \\"dms-bp17p0qwtr72zmu*****\\",\\n \\"StartTime\\": \\"2022-07-11T12:00:00Z\\",\\n \\"EndTime\\": \\"2022-07-11T14:00:00Z\\",\\n \\"ReportId\\": \\"dr-uf6i0tv2refv8wz*****\\",\\n \\"Status\\": \\"Finished\\",\\n \\"CreationTime\\": \\"2022-07-11T12:00:00Z\\",\\n \\"FinishedTime\\": \\"2022-07-11T14:00:00Z\\",\\n \\"Severity\\": \\"Normal\\",\\n \\"Issues\\": {\\n \\"Issue\\": [\\n {\\n \\"MetricId\\": \\"GuestOS.WinFirewall\\",\\n \\"MetricCategory\\": \\"ECSService.GuestOS\\",\\n \\"IssueId\\": \\"GuestOS.CPU.HighUtiliz*****\\",\\n \\"Severity\\": \\"Info\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeDiskDefaultKMSKeyId' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '201500', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call the DescribeRegions operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'KMSKeyId' => ['description' => 'The ID of the KMS key.', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter.RegionIdNotExists', 'errorMessage' => 'The specified region does not exists.', 'description' => 'The region does not exist.'], ], ], 'title' => 'DescribeDiskDefaultKMSKeyId', 'summary' => 'Queries the Key Management Service (KMS) key used by the Account-level Elastic Block Storage (EBS) Default Encryption feature in a region.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDiskDefaultKMSKeyId'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDiskDefaultKMSKeyId', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'DiskEncryptionDefaultConfig', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:diskencryptiondefaultconfig/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\"\\n}","type":"json"}]', ], 'DescribeDiskEncryptionByDefaultStatus' => [ 'summary' => 'Queries whether account-level default encryption of Elastic Block Storage (EBS) resources is enabled in a region.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '201499', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~2679950~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], 'Encrypted' => ['description' => 'Indicates whether account-level default encryption of EBS resources is enabled in the region. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter.RegionIdNotExists', 'errorMessage' => 'The specified region does not exists.', 'description' => 'The region does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeDiskEncryptionByDefaultStatus', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDiskEncryptionByDefaultStatus'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'ecs:DescribeDiskEncryptionByDefaultStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'DiskEncryptionDefaultConfig', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:diskencryptiondefaultconfig/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Encrypted\\": false\\n}","type":"json"}]', ], 'DescribeDiskMonitorData' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28921', 'abilityTreeNodes' => ['FEATUREecsTKAXF8', 'FEATUREecs70JNQP'], ], 'parameters' => [ [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the disk to query.', 'type' => 'string', 'required' => true, 'example' => 'd-bp1bq5g3dxxo1x4o****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time of the data. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (ss) is not 00, the start time is automatically set to the beginning of the next minute.'."\n" ."\n" .'> You can query the monitoring information of up to the last 30 days. The `StartTime` parameter cannot be more than 30 days earlier than the current time.', 'type' => 'string', 'required' => true, 'example' => '2014-07-23T12:07:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time of the data. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (ss) is not 00, the end time is automatically set to the beginning of the next minute.', 'type' => 'string', 'required' => true, 'example' => '2014-07-23T12:09:00Z', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => [ 'description' => 'The granularity of the data. Unit: seconds. Valid values:'."\n" ."\n" .'- 60.'."\n" .'- 600.'."\n" .'- 3600.'."\n" ."\n" .'Default value: 60.'."\n" ."\n" .'> The value of (EndTime – StartTime) / Period must be less than or equal to 400. A maximum of 400 data entries can be returned at a time.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '60', 'enum' => ['60', '600', '3600'], 'example' => '60', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The number of entries returned for disk usage information, which is the number of periods.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'MonitorData' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DiskMonitorData' => [ 'description' => 'The collection of disk monitoring data.', 'type' => 'array', 'items' => [ 'description' => 'The collection of disk monitoring data.', 'type' => 'object', 'properties' => [ 'BPSRead' => ['description' => 'The read bandwidth of the disk. Unit: byte/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'IOPSRead' => ['description' => 'The number of read I/O operations per second on the disk. Unit: operations/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'LatencyRead' => ['description' => 'The read latency of the disk. Unit: μs (microseconds).', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'BPSTotal' => ['description' => 'The total read and write bandwidth of the disk. Unit: byte/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '204', 'title' => ''], 'IOPSTotal' => ['description' => 'The total number of read and write I/O operations per second on the disk. Unit: operations/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'TimeStamp' => ['description' => 'The timestamp of the monitoring data. The time follows the [ISO 8601](~~25696~~) standard and is displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2014-07-23T12:07:00Z', 'title' => ''], 'LatencyWrite' => ['description' => 'The write latency of the disk. Unit: μs (microseconds).', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'IOPSWrite' => ['description' => 'The number of write I/O operations per second on the disk. Unit: operations/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'DiskId' => ['description' => 'The disk ID.', 'type' => 'string', 'example' => 'd-bp1bq5g3dxxo1x4o****', 'title' => ''], 'BPSWrite' => ['description' => 'The write bandwidth of the disk. Unit: byte/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '204', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidStartTime.Malformed', 'errorMessage' => 'The specified parameter "StartTime" is not valid.', 'description' => 'The specified StartTime parameter does not conform to the specification.'], ['errorCode' => 'InvalidEndTime.Malformed', 'errorMessage' => 'The specified parameter "EndTime" is not valid.', 'description' => 'The specified EndTime parameter is invalid.'], ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter "Period" is not valid.', 'description' => ''], ['errorCode' => 'InvalidStartTime.TooEarly', 'errorMessage' => 'The specified parameter "StartTime" is too early.', 'description' => ''], ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => ''], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NotSupportCredit', 'errorMessage' => 'The InstanceType of the specified instance does not support credit.', 'description' => 'The instance type does not support burstable instances.'], ['errorCode' => 'InvalidParameter.EndTime', 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', 'description' => 'The end time cannot be earlier than the start time.'], ], 404 => [ ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The DiskId provided does not exist in our records.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeDiskMonitorData', 'summary' => 'Queries the usage information of a disk within a specified period, such as read IOPS, write IOPS, read bandwidth (B/s), write bandwidth (B/s), read latency (μs), and write latency (μs).', 'description' => 'When you call this operation, take note of the following limits:'."\n" ."\n" .'- You can query only the usage information of disks that are in the In Use (`In_use`) state. For more information, see [Disk states](~~25689~~).'."\n" .' > If the returned information has missing content, the disk was not in the In Use (`In_use`) state during that period, and the usage information cannot be obtained.'."\n" ."\n" .'- A maximum of 400 data entries can be returned at a time. The value of `(EndTime – StartTime) / Period` must be less than or equal to 400. That is, the value of the `TotalCount` response parameter cannot exceed 400. Otherwise, the `InvalidParameter.TooManyDataQueried` error is returned.'."\n" ."\n" .'- You can query the monitoring information of up to the last 30 days. The specified `StartTime` parameter cannot be more than 30 days earlier than the current time.'."\n" ."\n\n" .'## Request example'."\n" ."\n" .'Assume that you want to query the usage information of a disk whose ID is `d-bp14emm68wx98vjk****` in the China (Hangzhou) region from `2025-02-17T00:00:00Z` to `2025-02-18T10:00:00Z` at intervals of 600 seconds. Configure the request parameters as follows:'."\n" .'```'."\n" .'RegionId:"cn-hangzhou", // Set the China (Hangzhou) region'."\n" .'DiskId:"d-bp14emm68wx98vjk****", // Set the disk ID'."\n" .'StartTime:"2025-02-15T00:00:00Z", // Set the query start time'."\n" .'EndTime:"2025-02-17T00:00:00Z", // Set the query end time'."\n" .'Period:"600", // Set the data granularity'."\n" .'```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-05-06T09:04:06.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDiskMonitorData'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeDiskMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 3,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"MonitorData\\": {\\n \\"DiskMonitorData\\": [\\n {\\n \\"BPSRead\\": 0,\\n \\"IOPSRead\\": 0,\\n \\"LatencyRead\\": 0,\\n \\"BPSTotal\\": 204,\\n \\"IOPSTotal\\": 0,\\n \\"TimeStamp\\": \\"2014-07-23T12:07:00Z\\",\\n \\"LatencyWrite\\": 0,\\n \\"IOPSWrite\\": 0,\\n \\"DiskId\\": \\"d-bp1bq5g3dxxo1x4o****\\",\\n \\"BPSWrite\\": 204\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeDisks' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28923', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the block storage device. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'DiskIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of cloud disks, local disks, or elastic ephemeral disks. The value is a JSON array that can contain up to 100 IDs. Separate the IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["d-bp67acfmxazb4p****", "d-bp67acfmxazb4g****", … "d-bp67acfmxazb4d****"]', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID of the instance to which the cloud disk, local disk, or elastic ephemeral disk is attached.', 'type' => 'string', 'required' => false, 'example' => 'i-bp67acfmxazb4q****', 'title' => ''], ], [ 'name' => 'DiskType', 'in' => 'query', 'schema' => ['description' => 'The type of the cloud disk, local disk, or elastic ephemeral disk to query. Valid values: '."\n" .' '."\n" .'- all: queries both system disks and data disks.'."\n" .'- system: queries only system disks.'."\n" .'- data: queries only data disks.'."\n" ."\n" .'Default value: all.'."\n" .'> Elastic ephemeral disks cannot be used as system disks.', 'type' => 'string', 'required' => false, 'example' => 'all', 'title' => ''], ], [ 'name' => 'Category', 'in' => 'query', 'schema' => [ 'description' => 'The category of the disk. Valid values: '."\n" .' '."\n" .'- all: all cloud disks, local disks, and elastic ephemeral disks.'."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_regional_disk_auto: regional ESSD.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .'- elastic_ephemeral_disk_standard: elastic ephemeral disk - standard.'."\n" .'- elastic_ephemeral_disk_premium: elastic ephemeral disk - premium.'."\n" .'- local_ssd_pro: I/O-intensive local disk.'."\n" .'- local_hdd_pro: throughput-intensive local disk.'."\n" .'- ephemeral: (retired) local disk.'."\n" .'- ephemeral_ssd: (retired) local SSD.'."\n" ."\n" .'Default value: all.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'example' => 'all', 'title' => '', ], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the disk. For more information, see [Disk status](~~25689~~). Valid values:'."\n" .'- In_use: in use.'."\n" .'- Available: to be attached.'."\n" .'- Attaching: being attached.'."\n" .'- Detaching: being detached.'."\n" .'- Creating: being created.'."\n" .'- ReIniting: being initialized.'."\n" .'- All: all statuses.'."\n" ."\n" .'Default value: All.', 'type' => 'string', 'required' => false, 'example' => 'All', 'title' => ''], ], [ 'name' => 'SnapshotId', 'in' => 'query', 'schema' => ['description' => 'The ID of the snapshot used to create the cloud disk.', 'type' => 'string', 'required' => false, 'example' => 's-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Portable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the disk is removable. Valid values:'."\n" ."\n" .'- true: The disk can exist independently and can be freely attached and detached within the zone.'."\n" ."\n" .'- false: The disk cannot exist independently and cannot be freely attached and detached within the zone.'."\n" ."\n" .'The Portable attribute of the following types of block storage devices is false, and their lifecycle is the same as that of the instance:'."\n" ."\n" .'- Local disks.'."\n" .'- Local SSDs.'."\n" .'- Subscription data disks.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DeleteWithInstance', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the disk is set to be released together with the instance. Valid values:'."\n" ."\n" .'- true: The disk is released together with the instance.'."\n" .'- false: The disk is retained as a pay-as-you-go data disk when the instance is released.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DeleteAutoSnapshot', 'in' => 'query', 'schema' => ['description' => 'Specifies whether automatic snapshots are released when the cloud disk is released.'."\n" ."\n" .'- true: Yes.'."\n" ."\n" .'- false: No.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging operations.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging operations.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.'."\n" ."\n" .'For information about how to view the returned data, see the operation description section above.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return. Valid values: 10 to 500.'."\n" ."\n" .'Default value:'."\n" .'- If this parameter is not specified or is set to a value less than 10, the default value is 10.'."\n" .'- If this parameter is set to a value greater than 500, the default value is 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '500', 'minimum' => '1', 'example' => '50', 'title' => ''], ], [ 'name' => 'DiskName', 'in' => 'query', 'schema' => ['description' => 'The name of the disk. The name must be 2 to 128 characters in length and can contain Unicode characters under the letter category (including letters, digits, and characters from other languages). The name can contain colons (:), underscores (_), periods (.), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testDiskName', 'title' => ''], ], [ 'name' => 'AutoSnapshotPolicyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the automatic snapshot policy used to query cloud disks.', 'type' => 'string', 'required' => false, 'example' => 'sp-m5e2w2jutw8bv31****', 'title' => ''], ], [ 'name' => 'EnableAutoSnapshot', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the automatic snapshot policy feature is enabled for the cloud disk.'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Not enabled.'."\n" ."\n" .'> This parameter is deprecated. After a cloud disk is created, the automatic snapshot policy feature is enabled by default. You only need to associate an automatic snapshot policy with the cloud disk.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'EnableAutomatedSnapshotPolicy', 'in' => 'query', 'schema' => ['description' => 'Specifies whether an automatic snapshot policy is applied to the cloud disk.'."\n" .'- true: Applied.'."\n" .'- false: Not applied.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DiskChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the disk. Valid values:'."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.', 'type' => 'string', 'required' => false, 'example' => 'PostPaid', 'title' => ''], ], [ 'name' => 'LockReason', 'in' => 'query', 'schema' => ['description' => 'The reason why the disk is locked. Valid values:'."\n" ."\n" .'- financial: locked due to overdue payment.'."\n" .'- security: locked for security reasons.', 'type' => 'string', 'required' => false, 'example' => 'security', 'title' => ''], ], [ 'name' => 'Filter.1.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `CreationStartTime`. You can specify both Filter.1.Key and Filter.1.Value to query resources created after the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'CreationStartTime', 'title' => ''], ], [ 'name' => 'Filter.2.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `CreationEndTime`. You can specify both Filter.2.Key and Filter.2.Value to query resources created before the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'CreationEndTime', 'title' => ''], ], [ 'name' => 'Filter.1.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify Filter.1.Key. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2017-12-05T22:40Z', 'title' => ''], ], [ 'name' => 'Filter.2.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify Filter.2.Key. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2017-12-06T22:40Z', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the disk belongs. When you use this parameter to filter resources, the resource count cannot exceed 1,000.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'EnableShared', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the disk is a Shared Block Storage device.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query only encrypted cloud disks.'."\n" ."\n" .'- true: Yes.'."\n" ."\n" .'- false: No.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run. Valid values:'."\n" ."\n" .'- true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized Resource Access Management (RAM) users, and missing parameter values. If the request fails the dry run, the corresponding error is returned. If the request passes the dry run, the DryRunOperation error code is returned.'."\n" .'- false: performs a dry run and sends the Normal request. If the request passes the dry run, a 2XX HTTP status code is returned and the authorization is verified.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'KMSKeyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Key Management Service (KMS) key used by the cloud disk.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], [ 'name' => 'MultiAttach', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the multi-attach feature is enabled. Valid values:'."\n" ."\n" .'- Disabled: not enabled.'."\n" .'- Enabled: enabled.'."\n" .'- LegacyShared: queries Shared Block Storage devices.', 'type' => 'string', 'required' => false, 'example' => 'Disabled', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags of the disk.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the disk.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the disk.'."\n" ."\n" .'> To improve code compatibility, use Tag.N.Key instead.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Key' => ['description' => 'The tag key of the disk. Valid values of N: 1 to 20.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the specified tag cannot exceed 1,000. If you use multiple tags to filter resources, the resource count of resources that are attached with all specified tags cannot exceed 1,000. If the resource count exceeds 1,000, call the [ListTagResources](~~110425~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the disk. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the disk.'."\n" ."\n" .'> To improve code compatibility, use Tag.N.Value instead.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'AdditionalAttributes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of additional attribute values. The only valid value is `Placement`, which queries the data storage location of the disk.'."\n" ."\n" .'> Only regional (cross-zone redundant) disks have a valid data storage location.', 'type' => 'array', 'items' => ['description' => 'The additional attribute value. The only valid value is Placement, which queries the data storage location of the disk.', 'type' => 'string', 'required' => false, 'example' => 'Placement', 'title' => ''], 'required' => false, 'example' => 'IOPS', 'maxItems' => 5, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'PageSize' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging operations.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging operations.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.'."\n" .'> When you use MaxResults and NextToken parameters for paging, the returned TotalCount parameter value is invalid.', 'type' => 'integer', 'format' => 'int32', 'example' => '15', 'title' => ''], 'Disks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Disk' => [ 'description' => 'The collection of disk information.', 'type' => 'array', 'items' => [ 'description' => 'The disk information.', 'type' => 'object', 'properties' => [ 'SerialNumber' => ['description' => 'The serial number of the disk.', 'type' => 'string', 'example' => 'bp18um4r4f2fve2****', 'title' => ''], 'CreationTime' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2021-06-07T06:08:54Z', 'title' => ''], 'Status' => ['description' => 'The status of the disk. Valid values:'."\n" ."\n" .'- In_use: in use.'."\n" .'- Available: to be attached.'."\n" .'- Attaching: being attached.'."\n" .'- Detaching: being detached.'."\n" .'- Creating: being created.'."\n" .'- ReIniting: being initialized.', 'type' => 'string', 'example' => 'In_use', 'title' => ''], 'Type' => ['description' => 'The type of the disk. Valid values:'."\n" ."\n" .'- system: system disk.'."\n" .'- data: data disk.', 'type' => 'string', 'example' => 'system', 'title' => ''], 'PerformanceLevel' => ['description' => 'The performance level (PL) of the enterprise SSD. Valid values:'."\n" ."\n" .'- PL0: a maximum of 10,000 random read/write IOPS per disk.'."\n" .'- PL1: a maximum of 50,000 random read/write IOPS per disk.'."\n" .'- PL2: a maximum of 100,000 random read/write IOPS per disk.'."\n" .'- PL3: a maximum of 1,000,000 random read/write IOPS per disk.'."\n" ."\n" .'> This parameter is valid only for enterprise SSDs. Standard SSDs do not support this parameter.', 'type' => 'string', 'example' => 'PL0', 'title' => ''], 'BdfId' => ['description' => 'This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'EnableAutoSnapshot' => ['description' => 'Indicates whether the automatic snapshot policy feature is enabled for the cloud disk.'."\n" ."\n\n" .'> This parameter is deprecated. After a cloud disk is created, the automatic snapshot policy feature is enabled by default. You only need to associate an automatic snapshot policy with the cloud disk.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'StorageSetId' => ['description' => 'The ID of the storage set.', 'type' => 'string', 'example' => 'ss-i-bp1j4i2jdf3owlhe****', 'title' => ''], 'StorageSetPartitionNumber' => ['description' => 'The maximum number of partitions in the storage set.', 'type' => 'integer', 'format' => 'int32', 'example' => '11', 'title' => ''], 'DiskId' => ['description' => 'The ID of the disk.', 'type' => 'string', 'example' => 'd-bp18um4r4f2fve24****', 'title' => ''], 'DeleteAutoSnapshot' => ['description' => 'Indicates whether automatic snapshots are deleted when the disk is released. Valid values:'."\n" ."\n" .'- true: Automatic snapshots are deleted when the disk is released.'."\n" .'- false: Automatic snapshots are retained when the disk is released.'."\n" ."\n" .'Snapshots created by calling [CreateSnapshot](~~25524~~) or by using the console are not affected by this parameter and are always retained.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'StorageClusterId' => ['description' => 'The ID of the dedicated block storage cluster to which the cloud disk belongs. If the cloud disk belongs to a public cloud block storage cluster, this value is empty.', 'type' => 'string', 'example' => 'dbsc-j5e1sf2vaf5he8m2****', 'title' => ''], 'Encrypted' => ['description' => 'Indicates whether the cloud disk is encrypted.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'IOPSRead' => ['description' => 'The maximum number of read operations per second. Unit: operations/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '2000', 'title' => ''], 'MountInstanceNum' => ['description' => 'The number of instances to which the Shared Block Storage device is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Description' => ['description' => 'The description of the disk.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'Device' => ['description' => 'The device name of the instance to which the disk is attached, such as /dev/xvdb. Note the following items:'."\n" ."\n" .'- This parameter has a value only when the Status parameter is In_use or Detaching. In other states, this value is empty.'."\n" ."\n" .'- For a cloud disk with the multi-attach feature enabled, this value is always empty. You can view all attachment information for the disk from the Attachment list in the response.'."\n" ."\n" .'> This parameter is about to be deprecated. To improve code compatibility, do not use this parameter.', 'type' => 'string', 'example' => '/dev/xvdb', 'title' => ''], 'DiskName' => ['description' => 'The name of the disk.', 'type' => 'string', 'example' => 'testDiskName', 'title' => ''], 'Portable' => ['description' => 'Indicates whether the disk is removable.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ImageId' => ['description' => 'The ID of the image used to create the ECS instance. This parameter has a value only for cloud disks created from an image. Otherwise, this value is empty. This value is also empty if the image used to create the disk has been deleted.', 'type' => 'string', 'example' => 'm-bp13aqm171qynt3u***', 'title' => ''], 'KMSKeyId' => ['description' => 'The ID of the Key Management Service (KMS) key used by the cloud disk.', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb408***', 'title' => ''], 'DeleteWithInstance' => ['description' => 'Indicates whether the disk is released together with the instance. Valid values:'."\n" ."\n" .'- true: The disk is released together with the instance.'."\n" .'- false: The disk is retained when the instance is released.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'DetachedTime' => ['description' => 'The time when the disk was last detached.', 'type' => 'string', 'example' => '2021-06-07T21:01:22Z', 'title' => ''], 'SourceSnapshotId' => ['description' => 'The ID of the snapshot used to create the cloud disk.'."\n" ."\n" .'This value is empty if no snapshot was specified when the cloud disk was created. This value is also empty if the snapshot used to create the cloud disk has been deleted.', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****', 'title' => ''], 'AutoSnapshotPolicyId' => ['description' => 'The ID of the automatic snapshot policy applied to the cloud disk.'."\n" .'> This parameter is about to be deprecated. If multiple automatic snapshot policies are applied to the cloud disk, only one is returned. Use DescribeAutoSnapshotPolicyAssociations to query all automatic snapshot policies applied to the cloud disk.', 'type' => 'string', 'example' => 'sp-bp67acfmxazb4p****', 'title' => ''], 'EnableAutomatedSnapshotPolicy' => ['description' => 'Indicates whether an automatic snapshot policy is applied to the cloud disk.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'IOPSWrite' => ['description' => 'The maximum number of write operations per second. Unit: operations/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '2000', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID of the instance to which the disk is attached. Note the following items:'."\n" ."\n" .'- This parameter has a value only when the Status parameter is In_use or Detaching. In other states, this value is empty.'."\n" ."\n" .'- For a cloud disk with the multi-attach attribute enabled, this value is always empty. You can view all attachment information for the disk from the Attachment list in the response.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4q****', 'title' => ''], 'IOPS' => ['description' => 'The maximum number of read/write (I/O) operations per second. Unit: operations/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '4000', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the disk.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'ExpiredTime' => ['description' => 'The expiration time of the subscription disk.', 'type' => 'string', 'example' => '2021-07-07T16:00Z', 'title' => ''], 'Size' => ['description' => 'The size of the disk. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the disk belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'DiskChargeType' => ['description' => 'The billing method of the disk. Valid values:'."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the disk.', 'type' => 'string', 'example' => 'cn-hangzhou-i', 'title' => ''], 'AttachedTime' => ['description' => 'The time when the disk was last attached. The time follows the ISO 8601 standard in the yyyy-MM-ddThh:mmZ format in UTC+0.', 'type' => 'string', 'example' => '2021-06-07T06:08:56Z', 'title' => ''], 'Category' => ['description' => 'The category of the disk. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk. '."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- local_ssd_pro: I/O-intensive local disk. '."\n" .'- local_hdd_pro: throughput-intensive local disk.'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .'- elastic_ephemeral_disk_standard: elastic ephemeral disk - standard.'."\n" .'- elastic_ephemeral_disk_premium: elastic ephemeral disk - Premium Edition.'."\n" .'- ephemeral: (retired) local disk.'."\n" .'- ephemeral_ssd: (retired) local SSD.', 'type' => 'string', 'example' => 'cloud_ssd', 'title' => ''], 'ProductCode' => ['description' => 'The product code of the Alibaba Cloud Marketplace image.', 'type' => 'string', 'example' => 'jxsc000204', 'title' => ''], 'MultiAttach' => ['description' => 'Indicates whether the multi-attach feature is enabled for the cloud disk.', 'type' => 'string', 'example' => 'Disabled', 'title' => ''], 'OperationLocks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'OperationLock' => [ 'description' => 'The list of reasons why the disk is locked.', 'type' => 'array', 'items' => [ 'description' => 'The reason why the disk is locked.', 'type' => 'object', 'properties' => [ 'LockReason' => ['description' => 'The reason why the disk is locked for security purposes.', 'type' => 'string', 'example' => 'security', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'MountInstances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'MountInstance' => [ 'description' => 'The collection of information about instances to which the Shared Block Storage device is attached.', 'type' => 'array', 'items' => [ 'description' => 'The information about the instance to which the Shared Block Storage device is attached.', 'type' => 'object', 'properties' => [ 'AttachedTime' => ['description' => 'The time when the disk was attached. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format in UTC+0.', 'type' => 'string', 'example' => '2017-12-05T2340:00Z', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID of the instance to which the disk is attached.', 'type' => 'string', 'example' => 'i-bp1j4i2jdf3owlhe****', 'title' => ''], 'Device' => ['description' => 'The mount point of the disk.', 'type' => 'string', 'example' => '/dev/xvda', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The collection of tags of the disk.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the disk.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Attachments' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Attachment' => [ 'description' => 'The list of attachment information for the disk, consisting of Attachment objects. This list is not returned when you query Shared Block Storage devices.', 'type' => 'array', 'items' => [ 'description' => 'The attachment information for the disk.', 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The instance ID of the instance to which the disk is attached.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4q****', 'title' => ''], 'Device' => ['description' => 'The device name.', 'type' => 'string', 'example' => '/dev/xvda', 'title' => ''], 'AttachedTime' => ['description' => 'The time when the disk was attached, in UTC+0.', 'type' => 'string', 'example' => '2021-06-07T06:08:56Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50000, 1000 × Capacity - Baseline performance}.'."\n" .'Baseline performance = min{1,800 + 50 × Capacity, 50,000}.'."\n" ."\n" .'This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'integer', 'format' => 'int64', 'example' => '40000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Indicates whether the performance burst feature is enabled. Valid values:'."\n" ."\n" .'- true: Yes.'."\n" .'- false: No.'."\n" ."\n" .'This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Throughput' => ['description' => 'The amount of data that can be transferred per unit of time. Unit: MB/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'ThroughputRead' => ['description' => 'The amount of data that the system can read per unit of time. Unit: MB/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'ThroughputWrite' => ['description' => 'The amount of data that the system can write per unit of time. Unit: MB/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'Placement' => [ 'description' => 'The collection of data storage locations.'."\n" ."\n" .'This field is returned only when AdditionalAttributes.N is set to Placement in the request.'."\n" ."\n" .'> Only regional (cross-zone redundant) disks (cloud_regional_disk_auto) have valid values.', 'type' => 'object', 'properties' => [ 'ZoneIds' => ['description' => 'The list of zones where data is actually stored.', 'type' => 'string', 'example' => '"["cn-hangzhou-b",'."\n" .'"cn-hangzhou-j"]"', 'title' => ''], ], 'title' => '', 'example' => '', ], 'SourceDiskId' => ['type' => 'string', 'example' => 'd-123*********', 'description' => '', 'title' => ''], 'DataSource' => [ 'type' => 'object', 'properties' => [ 'Id' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Type' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidDiskType.ValueNotSupported', 'errorMessage' => 'The specified disk type is not supported.', 'description' => 'The specified disk type is not supported.'], ['errorCode' => 'InvalidCategory.ValueNotSupported', 'errorMessage' => 'The specified disk category is not supported.', 'description' => 'The specified disk category is not supported.'], ['errorCode' => 'InvalidStatus.ValueNotSupported', 'errorMessage' => 'The specified disk status is not supported.', 'description' => 'The disk is in a state that does not support the current operation.'], ['errorCode' => 'InvalidTag.Mismatch', 'errorMessage' => 'The specified Tag.n.Key and Tag.n.Value are not match.', 'description' => 'The specified Tag.N.Key and Tag.N.Value parameters do not correspond to each other.'], ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ['errorCode' => 'InvalidRegion.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The zoneId provided does not exist in our records.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'MissingParamter.RegionId', 'errorMessage' => 'The regionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.DiskIds', 'errorMessage' => 'The specified parameter diskIds is not valid.', 'description' => 'The specified DiskIds parameter is invalid.'], ['errorCode' => 'IncompleteParamter', 'errorMessage' => 'Some fields can not be null in this request.', 'description' => 'Some required parameters are not specified.'], ['errorCode' => 'InvalidParamter', 'errorMessage' => 'Some parameters are invalid in this request.', 'description' => 'The request contains invalid parameters.'], ['errorCode' => 'InvalidSnapshot.NotFound', 'errorMessage' => 'The specified parameter SnapshotId is not valid.', 'description' => 'The specified SnapshotId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidDiskIds.Malformed', 'errorMessage' => 'The amount of specified disk Ids exceeds the limit.', 'description' => ''], ['errorCode' => 'InvalidCategory.ValueNotSupported', 'errorMessage' => 'The specified disk category is not supported.', 'description' => ''], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in volume white list.', 'description' => ''], ['errorCode' => 'InvalidParameter.MultiAttachAndEnableSharedNotMatch', 'errorMessage' => 'The parameter MultiAttach and EnableShared are not match.', 'description' => 'The specified MultiAttach and EnableShared parameters do not match.'], ['errorCode' => 'InvalidParameter.MultiAttach', 'errorMessage' => 'The specified param MultiAttach is not valid.', 'description' => 'The specified MultiAttach parameter is invalid.'], ], [ ['errorCode' => 'InvalidFilterKey.NotFound', 'errorMessage' => 'The filter key is not found.', 'description' => ''], ['errorCode' => 'InvalidFilterValue', 'errorMessage' => 'The filter value is not valid.', 'description' => ''], ['errorCode' => 'InvalidDiskIds.ValueNotSupported', 'errorMessage' => 'The specified parameter "DiskIds" is not supported.', 'description' => ''], ['errorCode' => 'InvalidDiskChargeType.NotFound', 'errorMessage' => 'The DiskChargeType does not exist in our records.', 'description' => 'The DiskChargeType does not exist in our records.'], ['errorCode' => 'InvalidLockReason.NotFound', 'errorMessage' => 'The specified LockReason is not found.', 'description' => 'The specified lockout reason does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query block storage', 'summary' => 'Queries information about one or more created block storage devices, including cloud disks, local disks, and elastic ephemeral disks.', 'description' => '- The request parameters RegionId, ZoneId, DiskIds, and InstanceId are filters. These parameters have a logical AND relationship.'."\n" .'- The DiskIds request parameter is a JSON format array. If this parameter is empty, the filter does not take effect. However, if DiskIds is an empty array, the filter is considered valid and an empty result is returned.'."\n" .'- Token-based paged query is supported. Set the NextToken parameter to specify the query token. Its value is the NextToken value returned in the previous call of DescribeDisks. Use MaxResults to settings the maximum number of entries per page.'."\n" ."\n" .'- A cloud disk with the multi-attach feature enabled can be attached to multiple instances. You can view all attachment information for the disk from the Attachment list in the response.'."\n" ."\n" .'When you invoke an API operation by using Cloud Assistant CLI, specify request parameters of different data types in the required formats. For more information, see [Parameter format overview](~~110340~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-05-08T01:30:52.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2023-11-24T01:41:12.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-01-21T09:39:22.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-01-21T09:39:22.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-06-03T10:27:28.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2021-05-18T02:15:23.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDisks'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeDisks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"PageSize\\": 1,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 15,\\n \\"Disks\\": {\\n \\"Disk\\": [\\n {\\n \\"SerialNumber\\": \\"bp18um4r4f2fve2****\\",\\n \\"CreationTime\\": \\"2021-06-07T06:08:54Z\\",\\n \\"Status\\": \\"In_use\\",\\n \\"Type\\": \\"system\\",\\n \\"PerformanceLevel\\": \\"PL0\\",\\n \\"BdfId\\": \\"null\\",\\n \\"EnableAutoSnapshot\\": false,\\n \\"StorageSetId\\": \\"ss-i-bp1j4i2jdf3owlhe****\\",\\n \\"StorageSetPartitionNumber\\": 11,\\n \\"DiskId\\": \\"d-bp18um4r4f2fve24****\\",\\n \\"DeleteAutoSnapshot\\": false,\\n \\"StorageClusterId\\": \\"dbsc-j5e1sf2vaf5he8m2****\\",\\n \\"Encrypted\\": false,\\n \\"IOPSRead\\": 2000,\\n \\"MountInstanceNum\\": 1,\\n \\"Description\\": \\"testDescription\\",\\n \\"Device\\": \\"/dev/xvdb\\",\\n \\"DiskName\\": \\"testDiskName\\",\\n \\"Portable\\": false,\\n \\"ImageId\\": \\"m-bp13aqm171qynt3u***\\",\\n \\"KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb408***\\",\\n \\"DeleteWithInstance\\": true,\\n \\"DetachedTime\\": \\"2021-06-07T21:01:22Z\\",\\n \\"SourceSnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"AutoSnapshotPolicyId\\": \\"sp-bp67acfmxazb4p****\\",\\n \\"EnableAutomatedSnapshotPolicy\\": false,\\n \\"IOPSWrite\\": 2000,\\n \\"InstanceId\\": \\"i-bp67acfmxazb4q****\\",\\n \\"IOPS\\": 4000,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ExpiredTime\\": \\"2021-07-07T16:00Z\\",\\n \\"Size\\": 60,\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"DiskChargeType\\": \\"PrePaid\\",\\n \\"ZoneId\\": \\"cn-hangzhou-i\\",\\n \\"AttachedTime\\": \\"2021-06-07T06:08:56Z\\",\\n \\"Category\\": \\"cloud_ssd\\",\\n \\"ProductCode\\": \\"jxsc000204\\",\\n \\"MultiAttach\\": \\"Disabled\\",\\n \\"OperationLocks\\": {\\n \\"OperationLock\\": [\\n {\\n \\"LockReason\\": \\"security\\"\\n }\\n ]\\n },\\n \\"MountInstances\\": {\\n \\"MountInstance\\": [\\n {\\n \\"AttachedTime\\": \\"2017-12-05T2340:00Z\\",\\n \\"InstanceId\\": \\"i-bp1j4i2jdf3owlhe****\\",\\n \\"Device\\": \\"/dev/xvda\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"Attachments\\": {\\n \\"Attachment\\": [\\n {\\n \\"InstanceId\\": \\"i-bp67acfmxazb4q****\\",\\n \\"Device\\": \\"/dev/xvda\\",\\n \\"AttachedTime\\": \\"2021-06-07T06:08:56Z\\"\\n }\\n ]\\n },\\n \\"ProvisionedIops\\": 40000,\\n \\"BurstingEnabled\\": false,\\n \\"Throughput\\": 100,\\n \\"ThroughputRead\\": 100,\\n \\"ThroughputWrite\\": 100,\\n \\"Placement\\": {\\n \\"ZoneIds\\": \\"\\\\\\"[\\\\\\"cn-hangzhou-b\\\\\\",\\\\n\\\\\\"cn-hangzhou-j\\\\\\"]\\\\\\"\\"\\n },\\n \\"SourceDiskId\\": \\"d-123*********\\",\\n \\"DataSource\\": {\\n \\"Id\\": \\"\\",\\n \\"Type\\": \\"\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribeDisksFullStatus' => [ 'summary' => 'Queries the full status information about one or more Elastic Block Storage (EBS) devices.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29275', 'abilityTreeNodes' => ['FEATUREecsTKAXF8', 'FEATUREecs70JNQP'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the EBS device. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the EBS device. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The lifecycle status of the EBS device. For more information, see [Disk status](~~25689~~). Valid values:'."\n" ."\n" .'- In\\_use: The EBS device is in use.'."\n" ."\n" .'- Available: The EBS device can be attached.'."\n" ."\n" .'- Attaching: The EBS device is being attached.'."\n" ."\n" .'- Detaching: The EBS device is being detached.'."\n" ."\n" .'- Creating: The EBS device is being created.'."\n" ."\n" .'- ReIniting: The EBS device is being initialized.', 'type' => 'string', 'required' => false, 'example' => 'Available', 'title' => ''], ], [ 'name' => 'HealthStatus', 'in' => 'query', 'schema' => ['description' => 'The health status of the EBS device. Valid values:'."\n" ."\n" .'- Impaired: The EBS device is damaged.'."\n" ."\n" .'- Warning: The performance of the EBS device is degraded.'."\n" ."\n" .'- Initializing: The EBS device is being initialized.'."\n" ."\n" .'- InsufficientData: The status cannot be determined due to insufficient data.'."\n" ."\n" .'- NotApplicable: The EBS device cannot be used.', 'type' => 'string', 'required' => false, 'example' => 'Warning', 'title' => ''], ], [ 'name' => 'EventType', 'in' => 'query', 'schema' => ['description' => 'The event type of the EBS device. Valid values:'."\n" ."\n" .'- Degraded: The performance of the EBS device is degraded.'."\n" ."\n" .'- SeverelyDegraded: The performance of the EBS device is severely degraded.'."\n" ."\n" .'- Stalled: The performance of the EBS device is severely affected.'."\n" ."\n" .'- ErrorDetected: The local disk is damaged.', 'type' => 'string', 'required' => false, 'example' => 'Stalled', 'title' => ''], ], [ 'name' => 'EventTime.Start', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query occurred events.'."\n" ."\n" .'Specify the time in the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2018-05-06T02:43:10Z', 'title' => ''], ], [ 'name' => 'EventTime.End', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query occurred events.'."\n" ."\n" .'Specify the time in the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2018-05-08T02:48:52Z', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Pages start from page 1. The value must be a positive integer.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'DiskId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of EBS device N. Valid values of N: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'The ID of EBS device N. Valid values of N: 1 to 100.', 'type' => 'string', 'required' => false, 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'd-bp67acfmxazb4p****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'EventId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of event N. Valid values of N: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'The ID of event N. Valid values of N: 1 to 100.', 'type' => 'string', 'required' => false, 'example' => 'e-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'e-bp67acfmxazb4p****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the EBS device belongs. If you configure this parameter to query resources, up to 1,000 resources that belong to the specified resource group can be displayed in the response.', 'type' => 'string', 'required' => false, 'example' => 'rg-aek2kkmhmhs****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the EBS device.', 'type' => 'array', 'items' => [ 'description' => 'The tags to add to the EBS device.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N to add to the EBS device. A key-value pair consists of a key specified by the Tag.N.Key parameter and a value specified by the `Tag.N.Value` parameter. The two parameters are associated with each other. Valid values of N: 1 to 20.'."\n" ."\n" .'Up to 1,000 resources with the specified tags can be returned in the response.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N to add to the EBS device. A key-value pair consists of a key specified by the `Tag.N.Key` parameter and a value specified by the Tag.N.Value parameter. The two parameters are associated with each other. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of EBS devices for which full status information is returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'DiskFullStatusSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DiskFullStatusType' => [ 'description' => 'The collection of full status information of the EBS devices.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'DiskId' => ['description' => 'The EBS device ID.', 'type' => 'string', 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'Device' => ['description' => 'The name of the EBS device that is attached to an instance. Example: /dev/xvdb.'."\n" ."\n" .'This parameter has a value only when the value of `Status` is `In_use`.'."\n" ."\n" .'> This parameter will be deprecated in the future. To ensure future compatibility, we recommend that you do not use this parameter.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'DiskEventSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DiskEventType' => [ 'description' => 'The events about the EBS device.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'EventId' => ['description' => 'The ID of the event.', 'type' => 'string', 'example' => 'e-bp67acfmxazb4p****', 'title' => ''], 'EventEndTime' => ['description' => 'The time when the event ended.', 'type' => 'string', 'example' => '2018-05-06T02:48:52Z', 'title' => ''], 'EventTime' => ['description' => 'The time when the event occurred.', 'type' => 'string', 'example' => '2018-05-08T02:43:10Z', 'title' => ''], 'ImpactLevel' => ['description' => 'The impact level of the event.', 'type' => 'string', 'example' => '100', 'title' => ''], 'EventType' => [ 'description' => 'The type of the event.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the event type. Valid values:'."\n" ."\n" .'- Degraded: The performance of the EBS device is degraded.'."\n" ."\n" .'- SeverelyDegraded: The performance of the EBS device is severely degraded.'."\n" ."\n" .'- Stalled: The performance of the EBS device is severely affected.'."\n" ."\n" .'- ErrorDetected: The local disk is damaged.', 'type' => 'string', 'example' => 'Stalled', 'title' => ''], 'Code' => ['description' => 'The code of the event type.', 'type' => 'integer', 'format' => 'int32', 'example' => '7', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Status' => [ 'description' => 'The lifecycle status of the EBS device.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the lifecycle status of the EBS device.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'Code' => ['description' => 'The code of the lifecycle status of the EBS device.', 'type' => 'integer', 'format' => 'int32', 'example' => '129', 'title' => ''], ], 'title' => '', 'example' => '', ], 'HealthStatus' => [ 'description' => 'The health status of the EBS device.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the health status of the EBS device.', 'type' => 'string', 'example' => 'Impaired', 'title' => ''], 'Code' => ['description' => 'The code of the health status of the EBS device.', 'type' => 'integer', 'format' => 'int32', 'example' => '128', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'DiskIdLimitExceeded', 'errorMessage' => '%s', 'description' => 'More than 100 disk IDs are specified.'], ['errorCode' => 'EventIdLimitExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.TimeEndBeforeStart', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Make sure that the end time is later than the start time.'], ['errorCode' => 'OperationDenied.NotInWhiteList', 'errorMessage' => '%s', 'description' => 'You are not authorized to perform this operation. Try again when you are authorized.'], ['errorCode' => 'TooManyDiskEvent.DiskIdRequired', 'errorMessage' => '%s', 'description' => 'The system cannot process this number of requests for the specified resource. Try again later.'], ], [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeDisksFullStatus', 'description' => '- The full status information about an EBS device includes the lifecycle status specified by the `Status` parameter, health status specified by the `HealthStatus` parameter, and event type specified by the `EventType` parameter of the EBS device. You can filter the results based on these parameters.'."\n" ."\n" .'- The release time, scheduled execution time, and actual execution time of each EBS device event are identical. If you specify a period of time by using the `EventTime.Start` and `EventTime.End` parameters, all events that occurred within this period are queried. You can query events that occurred within the last seven days.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2021-10-27T12:54:58.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeDisksFullStatus'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeDisksFullStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"DiskFullStatusSet\\": {\\n \\"DiskFullStatusType\\": [\\n {\\n \\"DiskId\\": \\"d-bp67acfmxazb4p****\\",\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"Device\\": \\"null\\",\\n \\"DiskEventSet\\": {\\n \\"DiskEventType\\": [\\n {\\n \\"EventId\\": \\"e-bp67acfmxazb4p****\\",\\n \\"EventEndTime\\": \\"2018-05-06T02:48:52Z\\",\\n \\"EventTime\\": \\"2018-05-08T02:43:10Z\\",\\n \\"ImpactLevel\\": \\"100\\",\\n \\"EventType\\": {\\n \\"Name\\": \\"Stalled\\",\\n \\"Code\\": 7\\n }\\n }\\n ]\\n },\\n \\"Status\\": {\\n \\"Name\\": \\"Available\\",\\n \\"Code\\": 129\\n },\\n \\"HealthStatus\\": {\\n \\"Name\\": \\"Impaired\\",\\n \\"Code\\": 128\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribeEipAddresses' => [ 'summary' => 'DescribeEipAddresses', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28925', 'abilityTreeNodes' => ['FEATUREecsYVS611'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'EipAddress', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AllocationId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ISP', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter.1.Key', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter.2.Key', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter.1.Value', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter.2.Value', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'LockReason', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AssociatedInstanceType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AssociatedInstanceId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'PageSize' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PageNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TotalCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'EipAddresses' => [ 'itemNode' => true, 'description' => '', 'type' => 'object', 'properties' => [ 'EipAddress' => [ 'description' => '', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'Status' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'AllocationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'ChargeType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'InstanceId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'InstanceType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RegionId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'IpAddress' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Bandwidth' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'ExpiredTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'AllocationId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'InternetChargeType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EipBandwidth' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'OperationLocks' => [ 'itemNode' => true, 'description' => '', 'type' => 'object', 'properties' => [ 'LockReason' => [ 'description' => '', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'LockReason' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidIAssociatedInstanceType.ValueNotSupported', 'errorMessage' => 'The specified value of AssociatedInstanceType is not supported.', 'description' => 'The specified AssociatedInstanceType parameter is invalid.'], ['errorCode' => 'InvalidChargeType.ValueNotSupported', 'errorMessage' => 'The specified ChargeType is not supported.', 'description' => 'The specified billing method is not supported. Specify a supported billing method.'], ['errorCode' => 'InvalidAliuid', 'errorMessage' => 'User Id is not valid.', 'description' => ''], ['errorCode' => 'ResourceQueryError', 'errorMessage' => 'The specified resource is queried error.', 'description' => ''], ['errorCode' => 'InstanceType.Invalid', 'errorMessage' => 'InstanceType is not null', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Parameter exceed max length', 'description' => ''], ['errorCode' => 'OperationUnsupported.ResourceGroupId', 'errorMessage' => 'ResourceGroup is not supported in this region.', 'description' => ''], ['errorCode' => 'IellgalParameter.OwnerAccount', 'errorMessage' => 'The specified parameter OwnerAccount is not valid.', 'description' => ''], ['errorCode' => 'InvalidResourceGroupId', 'errorMessage' => 'The specified ResourceGroupId does not exist.', 'description' => ''], ['errorCode' => 'OperationFailed.Endpoint', 'errorMessage' => 'Operation failed because the RegionId is unavailable in this endpoint.', 'description' => ''], ], 404 => [ ['errorCode' => 'Forbidden.RegionNotFound', 'errorMessage' => 'Specified region is not found during access authentication.', 'description' => ''], ['errorCode' => 'InvalidFilterKey.NotFound', 'errorMessage' => ' ', 'description' => ''], ['errorCode' => 'InvalidFilterValue', 'errorMessage' => ' ', 'description' => ''], ['errorCode' => 'InvalidLockReason.NotFound', 'errorMessage' => 'The specified LockReason is not found', 'description' => 'The specified LockReason parameter does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeEipAddresses'], ], 'changeSet' => [ ['createdAt' => '2022-01-24T08:55:45.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeEipAddresses'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeEipAddresses', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Address', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:eip/{#AllocationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"EipAddresses\\": {\\n \\"EipAddress\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"AllocationTime\\": \\"\\",\\n \\"ChargeType\\": \\"\\",\\n \\"InstanceId\\": \\"\\",\\n \\"InstanceType\\": \\"\\",\\n \\"RegionId\\": \\"\\",\\n \\"IpAddress\\": \\"\\",\\n \\"Bandwidth\\": \\"\\",\\n \\"ExpiredTime\\": \\"\\",\\n \\"AllocationId\\": \\"\\",\\n \\"InternetChargeType\\": \\"\\",\\n \\"EipBandwidth\\": \\"\\",\\n \\"OperationLocks\\": {\\n \\"LockReason\\": [\\n {\\n \\"LockReason\\": \\"\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => '', ], 'DescribeEipMonitorData' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AllocationId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '60', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EipMonitorDatas' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'EipMonitorData' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'EipTX' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'EipPackets' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'EipBandwidth' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TimeStamp' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EipFlow' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'EipRX' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.TooMany', 'errorMessage' => 'monitor parameter too many data required.', 'description' => ''], ['errorCode' => 'InvalidStartTime.Malformed', 'errorMessage' => 'The specified parameter "StartTime" is not valid.', 'description' => 'The specified StartTime parameter does not conform to the specification.'], ['errorCode' => 'InvalidEndTime.Malformed', 'errorMessage' => 'The specified parameter "EndTime" is not valid.', 'description' => 'The specified EndTime parameter is invalid.'], ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter "Period" is not valid.', 'description' => ''], ['errorCode' => 'InvalidStartTime.TooEarly', 'errorMessage' => 'The specified parameter "StartTime" is too early.', 'description' => ''], ['errorCode' => 'InvalidAllocationId.NotFound', 'errorMessage' => 'Specified allocation id is not found.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Specified value of "Period" is not valid', 'description' => ''], ['errorCode' => 'OperationDenied.TooManyDataQueried', 'errorMessage' => 'Specified operation is denied as too many data to return.', 'description' => 'The number of data entries queried exceeds the upper limit. Shorten the interval.'], ['errorCode' => 'InvalidRegionInstance', 'errorMessage' => 'The specified InstanceId does not exist in given region.', 'description' => 'The instance does not exist in the specified region.'], ], 404 => [ ['errorCode' => 'InvalidIpInstanceId.NotFound', 'errorMessage' => 'The specified Eip InstanceId does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'Forbidden.RegionNotFound', 'errorMessage' => 'Specified region is not found during access authentication.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeEipMonitorData'], ], 'changeSet' => [ ['createdAt' => '2022-08-02T11:37:30.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '60', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeEipMonitorData'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeEipMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Address', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:eip/{#AllocationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"EipMonitorDatas\\": {\\n \\"EipMonitorData\\": [\\n {\\n \\"EipTX\\": 0,\\n \\"EipPackets\\": 0,\\n \\"EipBandwidth\\": 0,\\n \\"TimeStamp\\": \\"\\",\\n \\"EipFlow\\": 0,\\n \\"EipRX\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeEipMonitorData', 'summary' => 'DescribeEipMonitorData', ], 'DescribeElasticityAssuranceAutoRenewAttribute' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '263139', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the elasticity assurance service. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Id', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '弹性保障服务ID列表。'."\n" ."\n\n" .'**限制**:单次查询的弹性保障服务数量最多不超过50个。', 'type' => 'array', 'items' => ['description' => '弹性保障服务ID列表。', 'type' => 'string', 'required' => false, 'example' => 'eap-bp67acfmxazb4****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The queried information about the elasticity assurance services.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'ElasticityAssuranceRenewAttributes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ElasticityAssuranceRenewAttribute' => [ 'description' => 'The auto-renewal attributes of the elasticity assurance services.', 'type' => 'array', 'items' => [ 'description' => 'The auto-renewal attributes of an elasticity assurance service.', 'type' => 'object', 'properties' => [ 'PeriodUnit' => ['description' => 'The unit of the auto-renewal period. Valid values:'."\n" ."\n" .'- Month (default)'."\n" .'- Year.', 'type' => 'string', 'example' => 'Month', 'title' => ''], 'Period' => ['description' => 'The auto-renewal period. Valid values: 1, 2, 3, 6, 12, 24, and 36.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PrivatePoolOptionsId' => ['description' => 'The ID of the elasticity assurance service.', 'type' => 'string', 'example' => 'eap-bp67acfmxazb4****'."\n", 'title' => ''], 'RenewalStatus' => ['description' => 'Indicates whether auto-renewal is enabled for the elasticity assurance service. Valid values:'."\n" ."\n" .'- AutoRenewal: Auto-renewal is enabled.'."\n" ."\n" .'- Normal: Auto-renewal is disabled.'."\n" ."\n" .'- NotRenewal: The service will not be renewed.', 'type' => 'string', 'example' => 'Normal', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Invalid.PrivatePoolOptionsId', 'errorMessage' => 'The specified PrivatePoolOptions.Id is invalid.', 'description' => 'The specified PrivatePoolOptions.Id parameter is invalid.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'MissingParameter.PrivatePoolOptionsId', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ], ], 'title' => 'Query auto-renewal attributes of elasticity assurance services', 'summary' => 'Queries the auto-renewal attributes of one or more elasticity assurance services.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeElasticityAssuranceAutoRenewAttribute'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeElasticityAssuranceAutoRenewAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ElasticityAssurance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:elasticityassurance/{#ElasticityAssuranceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"ElasticityAssuranceRenewAttributes\\": {\\n \\"ElasticityAssuranceRenewAttribute\\": [\\n {\\n \\"PeriodUnit\\": \\"Month\\",\\n \\"Period\\": 1,\\n \\"PrivatePoolOptionsId\\": \\"eap-bp67acfmxazb4****\\\\n\\",\\n \\"RenewalStatus\\": \\"Normal\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeElasticityAssuranceInstances' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28927', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the elasticity assurance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The token used to start the query. Set the value to the NextToken value obtained from the response to the preceding request.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Id', 'in' => 'query', 'schema' => ['description' => 'The ID of the elasticity assurance.', 'type' => 'string', 'required' => true, 'example' => 'eap-bp67acfmxazb4****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The token used to start the next query.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'MaxResults' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'ElasticityAssuranceItem' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceIdSet' => [ 'description' => 'Details about the instances that match and use the elasticity assurance.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The instance ID', 'type' => 'string', 'example' => 'i-bp67acfmxazb4****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id is invalid.', 'description' => ''], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The InstanceType does not match the PrivatePool.', 'description' => 'The instance type and the private pool do not match.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The ZoneId does not match the PrivatePool.', 'description' => 'The zone and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool has been used up.', 'description' => 'The resource is exhausted.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'MissingParameter.PackageType', 'errorMessage' => 'The specified parameter "PackageType" can not be empty.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" can not be empty.', 'description' => 'Specifies that the parameter "PrivatePoolOptions.ids" cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" can not be empty.', 'description' => 'The specified parameter \'InstanceCpuCocount\' cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceAmount', 'errorMessage' => 'The specified parameter "InstanceAmount" can not be empty.', 'description' => 'The specified parameter InstanceAmount cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time.', 'description' => 'The specified parameter InstanceCpuCoreCount and InstanceAmount cannot be both empty.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyZoneIds', 'errorMessage' => 'Too many ZoneIds in the request.', 'description' => 'The number of specified zone IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyInstanceTypes', 'errorMessage' => 'Too many InstanceTypes in the request.', 'description' => 'The number of specified instance types exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyUnpaidPrivatePool', 'errorMessage' => 'Too many PrivatePools create but still unpaid.', 'description' => 'Multiple private pools are created but not paid.'], ['errorCode' => 'Invalid.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'Both InstanceCpuCoreCount and InstanceAmount are provided.', 'description' => 'The InstanceCpuCoreCount and InstanceAmount parameters cannot be both specified.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id.', 'description' => 'The specified private pool ID does not exist.'], ['errorCode' => 'Invalid.PackageType', 'errorMessage' => 'The specified parameter "PackageType" is invalid.', 'description' => 'The specified parameter PackageType is invalid.'], ['errorCode' => 'Invalid.PrivatePool.Purchase', 'errorMessage' => 'The PrivatePool has already paid.', 'description' => 'The private pool is already paid.'], ['errorCode' => 'Invalid.AssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'RepeatStartPrivatePool', 'errorMessage' => 'PrivatePool has already been started.', 'description' => 'The private pool is already started.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'DescribeElasticityAssuranceInstances', 'summary' => 'Queries the running Elastic Compute Service (ECS) instances that use an elasticity assurance.', 'description' => 'When an elasticity assurance expires, data about the association between the instances and the private pool generated by the elasticity assurance becomes invalid. When you call this operation to query the expired elasticity assurance, no value is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeElasticityAssuranceInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeElasticityAssuranceInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 2,\\n \\"MaxResults\\": 10,\\n \\"ElasticityAssuranceItem\\": {\\n \\"InstanceIdSet\\": [\\n {\\n \\"InstanceId\\": \\"i-bp67acfmxazb4****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeElasticityAssurances' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28928', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the Elasticity Assurance is located. You can call the [DescribeRegions](~~25609~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. When you use this parameter to filter resources, the number of matching resources cannot exceed 1,000.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags used to filter Elasticity Assurances.', 'type' => 'array', 'items' => [ 'description' => 'A tag that consists of a key-value pair.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key. You can specify up to 20 tag keys to filter resources.'."\n" ."\n" .'The query returns a maximum of 1,000 resources that match the specified tags. If more than 1,000 resources match the tags, call the [ListTagResources](~~110425~~) operation to query all the resources.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value. You can specify up to 20 tag values.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return on each page.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', '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. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'PrivatePoolOptions.Ids', 'in' => 'query', 'schema' => ['description' => 'The IDs of the elasticity assurances. You can specify a JSON array of up to 100 elasticity assurance IDs.', 'type' => 'string', 'required' => false, 'example' => '["eap-bp67acfmxazb4****", "eap-bp67acfmxazb5****"]', 'title' => ''], ], [ 'name' => 'Platform', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type. You can use this parameter to query only active elasticity assurances. To query released elasticity assurances, you must use `PrivatePoolOptions.Ids`.', 'type' => 'string', 'required' => false, 'example' => 'ecs.c6.large', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the zone where the Elasticity Assurance is located.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-h', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instances. Only `PostPaid` (pay-as-you-go) is supported.'."\n" ."\n" .'Default value: `PostPaid`.', 'type' => 'string', 'required' => false, 'example' => 'PostPaid', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the Elasticity Assurance. Valid values:'."\n" ."\n" .'- `All`: all statuses.'."\n" ."\n" .'- `Deactivated`: The Elasticity Assurance is pending activation. This status is available only for invitational preview.'."\n" ."\n" .'- `Preparing`: The Elasticity Assurance is being prepared.'."\n" ."\n" .'- `Prepared`: The Elasticity Assurance is ready to take effect.'."\n" ."\n" .'- `Active`: The Elasticity Assurance is active.'."\n" ."\n" .'- `Released`: The Elasticity Assurance is released.'."\n" ."\n" .'If you do not specify this parameter, elasticity assurances in all states are returned, except for those in the `Pending` and `Released` states.', 'type' => 'string', 'required' => false, 'example' => 'Active', 'title' => ''], ], [ 'name' => 'PackageType', 'in' => 'query', 'schema' => ['description' => 'The type of the Elasticity Assurance. Valid values:'."\n" ."\n" .'- `ElasticityAssurance`: a standard elasticity assurance. This type of elasticity assurance is created when you do not specify `RecurrenceRules`.'."\n" ."\n" .'- `TimeDivisionElasticityAssurance`: a time-division elasticity assurance. This type of elasticity assurance is created when you specify `RecurrenceRules`.', 'type' => 'string', 'required' => false, 'default' => 'ElasticityAssurance', 'example' => 'ElasticityAssurance', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The token used to retrieve the next page of results.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of matching entries.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaxResults' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'ElasticityAssuranceSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ElasticityAssuranceItem' => [ 'description' => 'The details of the elasticity assurances.', 'type' => 'array', 'items' => [ 'description' => 'The details of an elasticity assurance.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the elasticity assurance. Valid values:'."\n" ."\n" .'- Preparing: The elasticity assurance is being prepared.'."\n" ."\n" .'- Prepared: The elasticity assurance is ready to take effect.'."\n" ."\n" .'- Active: The elasticity assurance is active.'."\n" ."\n" .'- Released: The elasticity assurance has been released.', 'type' => 'string', 'example' => 'Active', 'title' => ''], 'PrivatePoolOptionsMatchCriteria' => ['description' => 'The matching mode of the elasticity assurance. Valid values:'."\n" ."\n" .'- Open: The open mode. The elasticity assurance automatically matches instance launch requests. If no matching private pool is available, the system uses resources from the public pool.'."\n" ."\n" .'- Target: The targeted mode. The instance is launched by using the capacity of a specified private pool. If the private pool is unavailable, the instance fails to launch.', 'type' => 'string', 'example' => 'Target', 'title' => ''], 'PrivatePoolOptionsId' => ['description' => 'The ID of the elasticity assurance.', 'type' => 'string', 'example' => 'eap-bp1ir35kqtn8ywci****', 'title' => ''], 'UsedAssuranceTimes' => ['description' => '> This parameter is currently unused.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'LatestStartTime' => ['description' => '> This parameter is currently unused.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'PrivatePoolOptionsName' => ['description' => 'The name of the elasticity assurance.', 'type' => 'string', 'example' => 'eapTestName', 'title' => ''], 'RegionId' => ['description' => 'The ID of the region where the elasticity assurance is located.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'EndTime' => ['description' => 'The time when the elasticity assurance expires.', 'type' => 'string', 'example' => '2021-12-03T16:00Z', 'title' => ''], 'StartTime' => ['description' => 'The time when the elasticity assurance takes effect.', 'type' => 'string', 'example' => '2020-12-03T05:25Z', 'title' => ''], 'Description' => ['description' => 'The description of the elasticity assurance.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'TotalAssuranceTimes' => ['description' => 'The number of times the elasticity assurance can be used. This value is always `Unlimited`, which indicates an unlimited number of uses within the effective period.', 'type' => 'string', 'example' => 'Unlimited', 'title' => ''], 'AllocatedResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AllocatedResource' => [ 'description' => 'The details of the allocated resources.', 'type' => 'array', 'items' => [ 'description' => 'The details of an allocated resource.', 'type' => 'object', 'properties' => [ 'UsedAmount' => ['description' => 'The number of in-use instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'TotalAmount' => ['description' => 'The total number of reserved instances for the instance type.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'AvailableAmount' => ['description' => '> This parameter is currently unused.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'FailedAmount' => ['type' => 'integer', 'format' => 'int32', 'example' => '1', 'description' => '', 'title' => ''], 'LockedAmount' => ['type' => 'integer', 'format' => 'int32', 'example' => '1', 'description' => '', 'title' => ''], 'zoneId' => ['description' => 'The ID of the zone where the elasticity assurance is located.', 'type' => 'string', 'example' => 'cn-hangzhou-h', 'title' => ''], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.c6.large', 'title' => ''], 'ElasticityAssuranceUsages' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ElasticityAssuranceUsage' => [ 'description' => '> This parameter is currently unused.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is currently unused.', 'type' => 'object', 'properties' => [ 'AccountId' => ['description' => '> This parameter is currently unused.', 'type' => 'string', 'example' => '1144775968548340', 'title' => ''], 'ServiceName' => ['description' => '> This parameter is currently unused.', 'type' => 'string', 'example' => 'name', 'title' => ''], 'UsedAmount' => ['description' => '> This parameter is currently unused.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags attached to the elasticity assurance.', 'type' => 'array', 'items' => [ 'description' => 'Details of a tag attached to the elasticity assurance.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceChargeType' => ['description' => 'The billing method of the instance. Only pay-as-you-go is supported.'."\n" ."\n" .'The value is always `PostPaid`.', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''], 'StartTimeType' => ['description' => 'When the elasticity assurance takes effect. Valid values:'."\n" ."\n" .'- `Now`: The elasticity assurance takes effect immediately upon creation.'."\n" ."\n" .'- `Later`: The elasticity assurance takes effect at the time specified by `StartTime`.', 'type' => 'string', 'example' => 'Now', 'title' => ''], 'ElasticityAssuranceOwnerId' => ['description' => '> This parameter is currently unused.', 'type' => 'string', 'example' => 'e114477596854834', 'title' => ''], 'RecurrenceRules' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RecurrenceRule' => [ 'description' => 'The recurrence rules for the time-division elasticity assurance.', 'type' => 'array', 'items' => [ 'description' => 'The recurrence rule for the time-division elasticity assurance.', 'type' => 'object', 'properties' => [ 'RecurrenceType' => ['description' => 'The recurrence type. Valid values:'."\n" ."\n" .'- `Daily`: Repeats daily.'."\n" ."\n" .'- `Weekly`: Repeats weekly.'."\n" ."\n" .'- `Monthly`: Repeats monthly.', 'type' => 'string', 'example' => 'Daily', 'title' => ''], 'RecurrenceValue' => ['description' => 'The value of the recurrence rule. The valid values of this parameter depend on the value of the `RecurrenceType` parameter.'."\n" ."\n" .'- If `RecurrenceType` is `Daily`, this parameter accepts a single value from 1 to 31, which represents the recurrence interval in days.'."\n" ."\n" .'- If `RecurrenceType` is `Weekly`, this parameter accepts multiple comma-separated values from 0 to 6, corresponding to Sunday to Saturday. For example, `1,2` indicates that the rule applies on Mondays and Tuesdays.'."\n" ."\n" .'- If `RecurrenceType` is `Monthly`, this parameter accepts a range in `A-B` format. The values for A and B must be from 1 to 31, and B must be greater than or equal to A. For example, `1-5` indicates that the rule applies from the first to the fifth day of each month.', 'type' => 'string', 'example' => '1', 'title' => ''], 'StartHour' => ['description' => 'The start hour of the active period for the time-division elasticity assurance.', 'type' => 'integer', 'format' => 'int32', 'exclusiveMaximum' => true, 'example' => '4', 'title' => ''], 'EndHour' => ['description' => 'The end hour of the active period for the time-division elasticity assurance.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'PackageType' => ['description' => 'The type of the elasticity assurance. Valid values:'."\n" ."\n" .'- `ElasticityAssurance`: A standard elasticity assurance.'."\n" ."\n" .'- `TimeDivisionElasticityAssurance`: A time-division elasticity assurance.', 'type' => 'string', 'example' => 'ElasticityAssurance', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The specified PrivatePoolOptions.Name is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified PrivatePoolOptions.Ids is invalid.', 'description' => ''], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The InstanceType does not match the PrivatePool.', 'description' => 'The instance type and the private pool do not match.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The ZoneId does not match the PrivatePool.', 'description' => 'The zone and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool has been used up.', 'description' => 'The resource is exhausted.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'MissingParameter.PackageType', 'errorMessage' => 'The specified parameter "PackageType" can not be empty.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" can not be empty.', 'description' => 'Specifies that the parameter "PrivatePoolOptions.ids" cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" can not be empty.', 'description' => 'The specified parameter \'InstanceCpuCocount\' cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceAmount', 'errorMessage' => 'The specified parameter "InstanceAmount" can not be empty.', 'description' => 'The specified parameter InstanceAmount cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time.', 'description' => 'The specified parameter InstanceCpuCoreCount and InstanceAmount cannot be both empty.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyZoneIds', 'errorMessage' => 'Too many ZoneIds in the request.', 'description' => 'The number of specified zone IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyInstanceTypes', 'errorMessage' => 'Too many InstanceTypes in the request.', 'description' => 'The number of specified instance types exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyUnpaidPrivatePool', 'errorMessage' => 'Too many PrivatePools create but still unpaid.', 'description' => 'Multiple private pools are created but not paid.'], ['errorCode' => 'Invalid.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'Both InstanceCpuCoreCount and InstanceAmount are provided.', 'description' => 'The InstanceCpuCoreCount and InstanceAmount parameters cannot be both specified.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id.', 'description' => 'The specified private pool ID does not exist.'], ['errorCode' => 'Invalid.PackageType', 'errorMessage' => 'The specified parameter "PackageType" is invalid.', 'description' => 'The specified parameter PackageType is invalid.'], ['errorCode' => 'Invalid.PrivatePool.Purchase', 'errorMessage' => 'The PrivatePool has already paid.', 'description' => 'The private pool is already paid.'], ['errorCode' => 'Invalid.AssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'RepeatStartPrivatePool', 'errorMessage' => 'PrivatePool has already been started.', 'description' => 'The private pool is already started.'], ], 404 => [ ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The specified resource group is not found.', 'description' => 'Cannot find the corresponding resource group'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'DescribeElasticityAssurances', 'summary' => 'Retrieves the details of an Elasticity Assurance, including its status, matching mode, effective method, expiry time, and the number of used instances.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-24T08:40:56.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-19T07:59:29.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-10-30T01:41:07.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-10-27T14:56:04.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeElasticityAssurances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeElasticityAssurances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ElasticityAssurance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:elasticityassurance/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 10,\\n \\"ElasticityAssuranceSet\\": {\\n \\"ElasticityAssuranceItem\\": [\\n {\\n \\"Status\\": \\"Active\\",\\n \\"PrivatePoolOptionsMatchCriteria\\": \\"Target\\",\\n \\"PrivatePoolOptionsId\\": \\"eap-bp1ir35kqtn8ywci****\\",\\n \\"UsedAssuranceTimes\\": 0,\\n \\"LatestStartTime\\": \\"null\\",\\n \\"PrivatePoolOptionsName\\": \\"eapTestName\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"EndTime\\": \\"2021-12-03T16:00Z\\",\\n \\"StartTime\\": \\"2020-12-03T05:25Z\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"TotalAssuranceTimes\\": \\"Unlimited\\",\\n \\"AllocatedResources\\": {\\n \\"AllocatedResource\\": [\\n {\\n \\"UsedAmount\\": 2,\\n \\"TotalAmount\\": 2,\\n \\"AvailableAmount\\": 5,\\n \\"FailedAmount\\": 1,\\n \\"LockedAmount\\": 1,\\n \\"zoneId\\": \\"cn-hangzhou-h\\",\\n \\"InstanceType\\": \\"ecs.c6.large\\",\\n \\"ElasticityAssuranceUsages\\": {\\n \\"ElasticityAssuranceUsage\\": [\\n {\\n \\"AccountId\\": \\"1144775968548340\\",\\n \\"ServiceName\\": \\"name\\",\\n \\"UsedAmount\\": 1\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"InstanceChargeType\\": \\"PostPaid\\",\\n \\"StartTimeType\\": \\"Now\\",\\n \\"ElasticityAssuranceOwnerId\\": \\"e114477596854834\\",\\n \\"RecurrenceRules\\": {\\n \\"RecurrenceRule\\": [\\n {\\n \\"RecurrenceType\\": \\"Daily\\",\\n \\"RecurrenceValue\\": \\"1\\",\\n \\"StartHour\\": 4,\\n \\"EndHour\\": 10\\n }\\n ]\\n },\\n \\"PackageType\\": \\"ElasticityAssurance\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeEniMonitorData' => [ 'summary' => 'Queries the monitoring data of a secondary elastic network interface (ENI) over a specific period of time.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28929', 'abilityTreeNodes' => ['FEATUREecsTML5VX'], ], 'parameters' => [ [ 'name' => 'EniId', 'in' => 'query', 'schema' => ['description' => 'The secondary ENI ID. By default, all secondary ENIs that are bound to the specified instance are queried.', 'type' => 'string', 'required' => false, 'example' => 'eni-bp19da36d6xdwey****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance to which the secondary ENI is bound.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1a5zr3u7nq9cx****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (ss) is not 00, the time is rounded up to the next minute.', 'type' => 'string', 'required' => true, 'example' => '2018-05-21T12:19:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (ss) is not 00, the time is rounded up to the next minute.', 'type' => 'string', 'required' => true, 'example' => '2018-05-21T12:22:00Z', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => [ 'description' => 'The interval at which to retrieve the monitoring data. Unit: seconds. Default value: Month. Valid values:'."\n" ."\n" .'- 60'."\n" ."\n" .'- 600'."\n" ."\n" .'- 3600'."\n" ."\n" .'Default: 60.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '60', 'enum' => ['60', '600', '3600'], 'example' => '60', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'MonitorData' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'EniMonitorData' => [ 'description' => 'The monitoring data of the secondary ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PacketRx' => ['description' => 'The number of packets received by the secondary ENI over the internal network.', 'type' => 'string', 'example' => '0', 'title' => ''], 'TimeStamp' => ['description' => 'The timestamp of the monitoring data. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2018-05-21T03:22:00Z', 'title' => ''], 'DropPacketRx' => ['description' => 'The number of received packets that were dropped by the secondary ENI over the internal network.', 'type' => 'string', 'example' => '0', 'title' => ''], 'EniId' => ['description' => 'The ID of the secondary ENI.', 'type' => 'string', 'example' => 'eni-bp19da36d6xdwey****', 'title' => ''], 'DropPacketTx' => ['description' => 'The number of sent packets that were dropped by the secondary ENI over the internal network.', 'type' => 'string', 'example' => '0', 'title' => ''], 'PacketTx' => ['description' => 'The number of packets sent by the secondary ENI over the internal network.', 'type' => 'string', 'example' => '0', 'title' => ''], 'IntranetTx' => ['description' => 'The average rate at which the secondary ENI sent data over the internal network. Unit: Kbit/s.', 'type' => 'string', 'example' => '0', 'title' => ''], 'IntranetRx' => ['description' => 'The average rate at which the secondary ENI received data over the internal network. Unit: Kbit/s.', 'type' => 'string', 'example' => '0', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => 'The specified ENI ID does not exist.', 'description' => 'The specified ENI ID does not exist.'], ], 403 => [ ['errorCode' => 'InvalidStartTime.Malformed', 'errorMessage' => 'The specified parameter "StartTime" is not valid.', 'description' => ''], ['errorCode' => 'InvalidEndTime.Malformed', 'errorMessage' => 'The specified parameter "EndTime" is not valid.', 'description' => ''], ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter "Period" is not valid.', 'description' => ''], ['errorCode' => 'InvalidStartTime.TooEarly', 'errorMessage' => 'The specified parameter "StartTime" is too early.', 'description' => ''], ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => ''], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NotSupportCredit', 'errorMessage' => 'The InstanceType of the specified instance does not support credit.', 'description' => ''], ['errorCode' => 'InvalidParameter.EndTime', 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', 'description' => ''], ], [ ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The DiskId provided does not exist in our records.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ['errorCode' => 'InvalidEcsId.NotFound', 'errorMessage' => 'The specified instance ID is invalid.', 'description' => 'The specified instance ID is invalid.'], ], 4003 => [ ['errorCode' => 'InvalidParam.Malformed', 'errorMessage' => 'The specified parameter "EniId" and "InstanceId" are not valid', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeEniMonitorData', 'description' => '## [](#)Usage notes'."\n" ."\n" .'The monitoring data of a secondary ENI includes the amount of traffic sent and received over the internal network, the number of packets sent and received by the secondary ENI, and the number of sent and received packets that are dropped by the secondary ENI. Specific information may be missing from the returned monitoring data. This may be because the system cannot obtain the relevant information. For example, if the instance to which the secondary ENI is attached is in the Stopped state or if the secondary ENI is not attached to an instance and is in the Available state, the monitoring data of the secondary ENI cannot be obtained. Take note of the following items:'."\n" ."\n" .'- Up to 400 monitoring data entries can be returned at a time. Make sure that the `TotalCount` value does not exceed 400. The value is calculated by using the following formula: `TotalCount = (EndTime - StartTime)/Period`. If the TotalCount value is greater than 400, the `InvalidParameter.TooManyDataQueried` error is returned.'."\n" ."\n" .'- You can query the monitoring data in the last 30 days. If the value of `StartTime` is more than 30 days earlier than the current time, an error is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-27T01:38:59.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeEniMonitorData'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeEniMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 4,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"MonitorData\\": {\\n \\"EniMonitorData\\": [\\n {\\n \\"PacketRx\\": \\"0\\",\\n \\"TimeStamp\\": \\"2018-05-21T03:22:00Z\\",\\n \\"DropPacketRx\\": \\"0\\",\\n \\"EniId\\": \\"eni-bp19da36d6xdwey****\\",\\n \\"DropPacketTx\\": \\"0\\",\\n \\"PacketTx\\": \\"0\\",\\n \\"IntranetTx\\": \\"0\\",\\n \\"IntranetRx\\": \\"0\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeForwardTableEntries' => [ 'summary' => 'DescribeForwardTableEntries', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region that contains the DNAT table. Call the DescribeRegions operation to get the latest list of regions.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ForwardTableId', 'in' => 'query', 'schema' => ['description' => 'The ID of the DNAT table.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'ForwardEntryId', 'in' => 'query', 'schema' => ['description' => 'The ID of the DNAT entry.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'ForwardTableEntries' => [ 'itemNode' => true, 'description' => 'The collection of DNAT entries.', 'type' => 'object', 'properties' => [ 'ForwardTableEntry' => [ 'description' => 'The list of DNAT entries.', 'type' => 'array', 'items' => [ 'description' => 'The details of the DNAT entry.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the DNAT entry. Valid values: `Pending`, `Available`, and `Deleting`.', 'type' => 'string', 'title' => '', 'example' => ''], 'ForwardEntryId' => ['description' => 'The ID of the DNAT entry.', 'type' => 'string', 'title' => '', 'example' => ''], 'InternalIp' => ['description' => 'The private IP address of the ECS instance that uses the DNAT entry.', 'type' => 'string', 'title' => '', 'example' => ''], 'InternalPort' => ['description' => 'The private port of the ECS instance that is used for communication.', 'type' => 'string', 'title' => '', 'example' => ''], 'ForwardTableId' => ['description' => 'The ID of the DNAT table.', 'type' => 'string', 'title' => '', 'example' => ''], 'ExternalPort' => ['description' => 'The public port that is used for communication.', 'type' => 'string', 'title' => '', 'example' => ''], 'IpProtocol' => ['description' => 'The protocol. Valid values: `TCP`, `UDP`, and `Any`.', 'type' => 'string', 'title' => '', 'example' => ''], 'ExternalIp' => ['description' => 'The public IP address that is used for communication.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IncorretForwardEntryStatus', 'errorMessage' => 'Some Forward entry status blocked this operation..', 'description' => 'The DNAT entry is in a state that does not support the current operation.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ['errorCode' => 'InvalidForwardTableId.NotFound', 'errorMessage' => 'Specified forwardTableId does not exist', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeForwardTableEntries'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeForwardTableEntries'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeForwardTableEntries', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ForwardTable', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:forwardtable/{#ForwardTableId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"ForwardTableEntries\\": {\\n \\"ForwardTableEntry\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"ForwardEntryId\\": \\"\\",\\n \\"InternalIp\\": \\"\\",\\n \\"InternalPort\\": \\"\\",\\n \\"ForwardTableId\\": \\"\\",\\n \\"ExternalPort\\": \\"\\",\\n \\"IpProtocol\\": \\"\\",\\n \\"ExternalIp\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeForwardTableEntries', ], 'DescribeHaVips' => [ 'summary' => 'DescribeHaVips', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Maximum value: 50. Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'maxItems' => 6, 'description' => 'The query filters. You can specify 1 to 20 filters.', 'type' => 'array', 'items' => [ 'description' => 'A filter consisting of a key and one or more values.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The filter key. Valid values:'."\n" ."\n" .'`HaVipId`: The ID of the high-availability virtual IP (HAVIP).'."\n" ."\n" .'`HaVipName`: The name of the HAVIP.'."\n" ."\n" .'`VpcId`: The ID of the VPC to which the HAVIP belongs.'."\n" ."\n" .'`VSwitchId`: The ID of the vSwitch to which the HAVIP belongs.'."\n" ."\n" .'`IpAddress`: The IP address of the HAVIP.'."\n" ."\n" .'`AssociatedInstanceType`: The type of instance associated with the HAVIP. The value must be `EcsInstance`.'."\n" ."\n" .'`AssociatedInstanceId`: The ID of the instance associated with the HAVIP.', 'type' => 'string', 'title' => '', 'example' => ''], 'Value' => [ 'maxItems' => 10, 'description' => 'A list of 1 to 20 values.', 'type' => 'array', 'items' => ['description' => 'A filter value.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'required' => true, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'headers' => [], 'schema' => [ 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'HaVips' => [ 'itemNode' => true, 'description' => 'Details of the HaVips.', 'type' => 'object', 'properties' => [ 'HaVip' => [ 'description' => 'The array of HaVip objects.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the HaVip. Valid values: `Creating`, `Available`, `Associating`, `Unassociating`, `Deleting`, and `Deleted`.', 'type' => 'string', 'title' => '', 'example' => ''], 'VpcId' => ['description' => 'The ID of the VPC to which the HaVip belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'VSwitchId' => ['description' => 'The ID of the VSwitch to which the HaVip belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'IpAddress' => ['description' => 'The private IP address of the HaVip.', 'type' => 'string', 'title' => '', 'example' => ''], 'Description' => ['description' => 'The description of the HaVip.', 'type' => 'string', 'title' => '', 'example' => ''], 'HaVipId' => ['description' => 'The ID of the HaVip.', 'type' => 'string', 'title' => '', 'example' => ''], 'CreateTime' => ['description' => 'The time when the HaVip was created. The time is in UTC and is formatted as `YYYY-MM-DDThh:mm:ssZ`.', 'type' => 'string', 'title' => '', 'example' => ''], 'MasterInstanceId' => ['description' => 'The ID of the master ECS instance associated with the HaVip.', 'type' => 'string', 'title' => '', 'example' => ''], 'RegionId' => ['description' => 'The ID of the region to which the HaVip belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'AssociatedEipAddresses' => [ 'itemNode' => true, 'description' => 'The EIPs associated with the HaVip.', 'type' => 'object', 'properties' => [ 'associatedEipAddresse' => [ 'description' => 'An array of associated EIPs.', 'type' => 'array', 'items' => ['description' => 'An associated EIP.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'AssociatedInstances' => [ 'itemNode' => true, 'description' => 'The ECS instances associated with the HaVip.', 'type' => 'object', 'properties' => [ 'associatedInstance' => [ 'description' => 'An array of associated ECS instance IDs.', 'type' => 'array', 'items' => ['description' => 'An associated ECS instance ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Forbidden.HaVip', 'errorMessage' => 'No permissions to perform operations on HAVIPs. Please apply for privilege--vpc_privilege_allow_buy_havip_instance.', 'description' => 'You do not have the permissions to manage the HAVIP. Go to the Quota Center to apply for the permissions.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidFilterKey.ValueNotSupported', 'errorMessage' => 'Specified filter key is not supported: Filter.X.key', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeHaVips'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHaVips'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeHaVips', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"HaVips\\": {\\n \\"HaVip\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"VSwitchId\\": \\"\\",\\n \\"IpAddress\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"HaVipId\\": \\"\\",\\n \\"CreateTime\\": \\"\\",\\n \\"MasterInstanceId\\": \\"\\",\\n \\"RegionId\\": \\"\\",\\n \\"AssociatedEipAddresses\\": {\\n \\"associatedEipAddresse\\": [\\n \\"\\"\\n ]\\n },\\n \\"AssociatedInstances\\": {\\n \\"associatedInstance\\": [\\n \\"\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeHaVips', ], 'DescribeHpcClusters' => [ 'summary' => 'Queries available High Performance Computing (HPC) clusters. Request parameters serve as filters. Filters are evaluated by using a logical AND. The parameters are independent of each other.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29276', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'HpcClusterIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of HPC clusters. The value can be a JSON array that consists of up to 100 HPC cluster IDs. Separate the IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["hpc-xxxxxxxxx", "hpc-yyyyyyyyy", … "hpc-zzzzzzzzz"]', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the HPC cluster list.'."\n" ."\n" .'Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for a paged query.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the HPC cluster list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of HPC clusters.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'HpcClusters' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'HpcCluster' => [ 'description' => 'An array of HpcCluster objects that contains information about the HPC clusters.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'HpcClusterId' => ['description' => 'The ID of the HPC cluster.', 'type' => 'string', 'example' => 'hpc-bp1a5zr3u7nq9cx****', 'title' => ''], 'Name' => ['description' => 'The name of the HPC cluster.', 'type' => 'string', 'example' => 'testName', 'title' => ''], 'Description' => ['description' => 'The description of the HPC cluster.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter "RegionId" is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter.HpcClusterId', 'errorMessage' => 'The input parameter HpcClusterId that is mandatory for processing this request is not supplied.', 'description' => 'The HpcClusterId parameter is required.'], ['errorCode' => 'InvalidHpcClusterIds.ExceedLimit', 'errorMessage' => 'The amount of specified specified hpc cluster ids exceeds the limit.', 'description' => 'The number of HPC cluster IDs specified in the HpcClusterIds value is out of range.'], ['errorCode' => 'InvalidHpcClusterIds.Malformed', 'errorMessage' => 'The amount of specified specified hpc cluster ids is invalid.', 'description' => 'The number of HPC cluster IDs specified in the HpcClusterIds value is out of range.'], ['errorCode' => 'Invalid.Parameter', 'errorMessage' => 'Invalid parameters.', 'description' => 'Invalid parameters.'], ], ], 'title' => 'Query HPC clusters', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeHpcClusters'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeHpcClusters', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'HpcCluster', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:hpc/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"HpcClusters\\": {\\n \\"HpcCluster\\": [\\n {\\n \\"HpcClusterId\\": \\"hpc-bp1a5zr3u7nq9cx****\\",\\n \\"Name\\": \\"testName\\",\\n \\"Description\\": \\"testDescription\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribeImageComponents' => [ 'summary' => 'Queries the details of one or more image components.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29277', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. If you use this parameter to filter resources, the resource count cannot exceed 1,000.'."\n" ."\n" .'>Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The image component name. Only exact match is supported.', 'type' => 'string', 'required' => false, 'example' => 'testComponent', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the value of NextToken returned by the previous call. You do not need to set this parameter for the first request.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for paging. Valid values: 1 to 500.'."\n" ."\n" .'Default value: 50.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '500', 'minimum' => '1', 'default' => '50', 'example' => '50', 'title' => ''], ], [ 'name' => 'Owner', 'in' => 'query', 'schema' => ['description' => 'The image component type. Valid values:'."\n" ."\n" .'- SELF: custom image components that you created.'."\n" .'- ALIYUN: system components provided by Alibaba Cloud.', 'type' => 'string', 'required' => false, 'example' => 'SELF', 'title' => ''], ], [ 'name' => 'ImageComponentId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of the image component to query. Valid values of N: 1 to 20.', 'type' => 'array', 'items' => ['description' => 'The ID of the image component to query. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'ic-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'ic-bp67acfmxazb4p****', 'maxItems' => 21, 'title' => '', ], ], [ 'name' => 'ComponentType', 'in' => 'query', 'schema' => ['description' => 'The component type.'."\n" ."\n" .'Valid values:'."\n" .'- Build'."\n" .'- Test.', 'type' => 'string', 'required' => false, 'example' => 'Build', 'title' => ''], ], [ 'name' => 'SystemType', 'in' => 'query', 'schema' => ['description' => 'The operating system supported by the component.'."\n" ."\n" .'Valid values:'."\n" .'- Linux'."\n" .'- Windows.', 'type' => 'string', 'required' => false, 'example' => 'Linux', 'title' => ''], ], [ 'name' => 'ComponentVersion', 'in' => 'query', 'schema' => ['description' => 'The component version number in the major.minor.patch format. Each part must be a non-negative integer. You can also use the wildcard character (*) to replace one part for fuzzy matching.'."\n" .'>This parameter takes effect only when Name is specified.', 'type' => 'string', 'required' => false, 'example' => '1.0.*', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The pagination token returned in this call. For more information about how to use this token, refer to the operation description.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of image components returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaxResults' => ['description' => 'The maximum number of entries per page for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'ImageComponent' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ImageComponentSet' => [ 'description' => 'The list of image component details.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the component was created.', 'type' => 'string', 'example' => '2020-11-24T06:00:00Z', 'title' => ''], 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'SystemType' => ['description' => 'The operating system supported by the component.', 'type' => 'string', 'example' => 'Linux', 'title' => ''], 'ImageComponentId' => ['description' => 'The image component ID.', 'type' => 'string', 'example' => 'ic-bp67acfmxazb4p****', 'title' => ''], 'ComponentType' => ['description' => 'The component type.', 'type' => 'string', 'example' => 'Build', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'Name' => ['description' => 'The component name.', 'type' => 'string', 'example' => 'testComponent', 'title' => ''], 'Content' => ['description' => 'The component content.', 'type' => 'string', 'example' => 'Tasks:'."\n" .' - Name: HelloWorld'."\n" .' Action: RunShellCommand'."\n" .' Properties:'."\n" .' commandContent: echo hello world'."\n", 'title' => ''], 'Owner' => ['description' => 'The image component type. Valid values:'."\n" ."\n" .'- SELF: custom image components that you created.'."\n" .'- ALIYUN: system components provided by Alibaba Cloud.', 'type' => 'string', 'example' => 'SELF', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The list of tag key-value pairs.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'ComponentVersion' => ['description' => 'The component version number.', 'type' => 'string', 'example' => '1.0.0', 'title' => ''], 'Parameters' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Parameter' => [ 'description' => 'The list of parameters included in the image component.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The parameter name.', 'type' => 'string', 'example' => 'paramName', 'title' => ''], 'Type' => ['description' => 'The parameter type.'."\n" ."\n" .'Valid values:'."\n" .'- String'."\n" .'- Number'."\n" .'- Boolean.', 'type' => 'string', 'example' => 'String', 'title' => ''], 'DefaultValue' => ['description' => 'The default value of the parameter.', 'type' => 'string', 'example' => 'paramDefaultValue', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.Owner', 'errorMessage' => 'The specified parameter \\"Owner\\" is not valid.', 'description' => ''], ['errorCode' => 'InvalidImageComponentIdSize.ExceededMaxNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSystemType.NotSupportedValue', 'errorMessage' => '%s.', 'description' => 'The specified SystemType is invalid.'], ['errorCode' => 'InvalidComponentType.NotSupportedValue', 'errorMessage' => '%s.', 'description' => 'The specified ComponentType is invalid.'], ['errorCode' => 'InvalidParameter.ComponentVersion', 'errorMessage' => 'The specified ComponentVersion is invalid.', 'description' => 'The specified ComponentVersion is invalid.'], ], 403 => [ ['errorCode' => 'Invalid.NextToken', 'errorMessage' => 'The specified NextToken is not valid.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 50,\\n \\"ImageComponent\\": {\\n \\"ImageComponentSet\\": [\\n {\\n \\"CreationTime\\": \\"2020-11-24T06:00:00Z\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"SystemType\\": \\"Linux\\",\\n \\"ImageComponentId\\": \\"ic-bp67acfmxazb4p****\\",\\n \\"ComponentType\\": \\"Build\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"Name\\": \\"testComponent\\",\\n \\"Content\\": \\"Tasks:\\\\n - Name: HelloWorld\\\\n Action: RunShellCommand\\\\n Properties:\\\\n commandContent: echo hello world\\\\n\\",\\n \\"Owner\\": \\"SELF\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"ComponentVersion\\": \\"1.0.0\\",\\n \\"Parameters\\": {\\n \\"Parameter\\": [\\n {\\n \\"Name\\": \\"paramName\\",\\n \\"Type\\": \\"String\\",\\n \\"DefaultValue\\": \\"paramDefaultValue\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query image component details', 'description' => 'You can set NextToken to the value of NextToken returned by the previous call to DescribeImageComponents, and set MaxResults to specify the maximum number of entries per page.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-10-10T06:14:46.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeImageComponents'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeImageComponents', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImageComponent', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagecomponent/*'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImageComponent', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagecomponent/{#imagecomponentId}'], ], ], ], ], ], 'DescribeImageFromFamily' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28939', 'abilityTreeNodes' => ['FEATUREecs2Z790V'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region in which to create the custom image. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageFamily', 'in' => 'query', 'schema' => ['description' => 'The family name of the image that you want to use to create the instances.'."\n" ."\n" .'You can configure image families for custom images, public images, community images, and shared images. For more information, see [Overview of image families](~~174241~~).', 'type' => 'string', 'required' => true, 'example' => 'hangzhou-daily-update', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'Image' => [ 'description' => 'The image information.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the image was created.', 'type' => 'string', 'example' => '2018-01-10T01:01:10Z', 'title' => ''], 'Status' => ['description' => 'The state of the image. Valid values:'."\n" ."\n" .'- UnAvailable'."\n" ."\n" .'- Available'."\n" ."\n" .'- Creating'."\n" ."\n" .'- CreateFailed', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'ImageFamily' => ['description' => 'The name of the image family.', 'type' => 'string', 'example' => 'testImageFamily', 'title' => ''], 'Progress' => ['description' => 'The image creation progress in percentage.', 'type' => 'string', 'example' => '100', 'title' => ''], 'IsCopied' => ['description' => 'Indicates whether the image is a copy of another image.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'IsSupportIoOptimized' => ['description' => 'Indicates whether the image can be used on I/O optimized instances.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ImageOwnerAlias' => ['description' => 'The alias of the image owner. Valid values:'."\n" ."\n" .'- system: public images provided by Alibaba Cloud'."\n" ."\n" .'- self: your custom images'."\n" ."\n" .'- others: shared images from other Alibaba Cloud accounts'."\n" ."\n" .'- marketplace: Alibaba Cloud Marketplace images', 'type' => 'string', 'example' => 'self', 'title' => ''], 'IsSupportCloudinit' => ['description' => 'Indicates whether cloud-init is supported.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ImageVersion' => ['description' => 'The image version.', 'type' => 'string', 'example' => '2', 'title' => ''], 'Usage' => ['description' => 'Indicates whether the image has been used to create ECS instances. Valid values:'."\n" ."\n" .'- instance: The image was used to create one or more ECS instances.'."\n" ."\n" .'- none: The image was not used to create ECS instances.', 'type' => 'string', 'example' => 'none', 'title' => ''], 'IsSelfShared' => ['description' => 'Indicates whether the custom image was shared to other Alibaba Cloud accounts.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'Description' => ['description' => 'The description of the volume.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'Size' => ['description' => 'The size of the image. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '80', 'title' => ''], 'Platform' => ['description' => 'The operating system.', 'type' => 'string', 'example' => 'Aliyun', 'title' => ''], 'ImageName' => ['description' => 'The name of the image.', 'type' => 'string', 'example' => 'testImageName', 'title' => ''], 'OSName' => ['description' => 'The display name of the operating system in Chinese.', 'type' => 'string', 'example' => 'Alibaba Cloud Linux 2.1903', 'title' => ''], 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'example' => 'm-bp1g7004ksh0oeuc****', 'title' => ''], 'OSType' => ['description' => 'The type of the operating system. Valid values:'."\n" ."\n" .'- windows'."\n" ."\n" .'- linux', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'IsSubscribed' => ['description' => 'Indicates whether you have subscribed to the service terms of the image product corresponding to the image product code.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ProductCode' => ['description' => 'The product code of the Alibaba Cloud Marketplace image.', 'type' => 'string', 'example' => 'jxsc00****', 'title' => ''], 'Architecture' => ['description' => 'The architecture of the image. Valid values:'."\n" ."\n" .'- i386'."\n" ."\n" .'- x86\\_64', 'type' => 'string', 'example' => 'x86_64', 'title' => ''], 'DiskDeviceMappings' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DiskDeviceMapping' => [ 'description' => 'The mappings between the disk and the snapshot in the image.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The image type.', 'type' => 'string', 'example' => 'custom', 'title' => ''], 'ImportOSSBucket' => ['description' => 'The OSS bucket that contains the imported image file.', 'type' => 'string', 'example' => 'testEcsImport', 'title' => ''], 'SnapshotId' => ['description' => 'The snapshot ID.', 'type' => 'string', 'example' => 's-bp17ot2q7x72ggtw****', 'title' => ''], 'ImportOSSObject' => ['description' => 'The OSS object to which the imported image belongs.', 'type' => 'string', 'example' => 'imageImport', 'title' => ''], 'Size' => ['description' => 'The size of the disk. Unit: GiB.', 'type' => 'string', 'example' => '80', 'title' => ''], 'Device' => ['description' => 'The device name of the disk. Example: /dev/xvdb.'."\n" ."\n" .'> This parameter will be removed in the future. To ensure compatibility, we recommend that you use other parameters.', 'type' => 'string', 'example' => '/dev/xvdb', 'title' => ''], 'Format' => ['description' => 'The image format.', 'type' => 'string', 'example' => 'qcow2', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the image.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the custom image.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the custom image.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidUser.Unauthorized', 'errorMessage' => 'The user is not authorized.', 'description' => ''], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist.', 'description' => 'The specified region does not exist.'], ], ], 'title' => 'DescribeImageFromFamily', 'summary' => 'Queries available custom images that are most recently created in a specific image family.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'If no available image exists in a specific image family, the response is empty.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeImageFromFamily'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeImageFromFamily', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Image\\": {\\n \\"CreationTime\\": \\"2018-01-10T01:01:10Z\\",\\n \\"Status\\": \\"Available\\",\\n \\"ImageFamily\\": \\"testImageFamily\\",\\n \\"Progress\\": \\"100\\",\\n \\"IsCopied\\": false,\\n \\"IsSupportIoOptimized\\": true,\\n \\"ImageOwnerAlias\\": \\"self\\",\\n \\"IsSupportCloudinit\\": true,\\n \\"ImageVersion\\": \\"2\\",\\n \\"Usage\\": \\"none\\",\\n \\"IsSelfShared\\": \\"true\\",\\n \\"Description\\": \\"testDescription\\",\\n \\"Size\\": 80,\\n \\"Platform\\": \\"Aliyun\\",\\n \\"ImageName\\": \\"testImageName\\",\\n \\"OSName\\": \\"Alibaba Cloud Linux 2.1903\\",\\n \\"ImageId\\": \\"m-bp1g7004ksh0oeuc****\\",\\n \\"OSType\\": \\"linux\\",\\n \\"IsSubscribed\\": false,\\n \\"ProductCode\\": \\"jxsc00****\\",\\n \\"Architecture\\": \\"x86_64\\",\\n \\"DiskDeviceMappings\\": {\\n \\"DiskDeviceMapping\\": [\\n {\\n \\"Type\\": \\"custom\\",\\n \\"ImportOSSBucket\\": \\"testEcsImport\\",\\n \\"SnapshotId\\": \\"s-bp17ot2q7x72ggtw****\\",\\n \\"ImportOSSObject\\": \\"imageImport\\",\\n \\"Size\\": \\"80\\",\\n \\"Device\\": \\"/dev/xvdb\\",\\n \\"Format\\": \\"qcow2\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', ], 'DescribeImagePipelineExecutions' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29278', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'description' => 'A tag object.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N. The value of N can be from 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N. The value of N can be from 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImagePipelineId', 'in' => 'query', 'schema' => ['description' => 'The ID of the image template.', 'type' => 'string', 'required' => false, 'example' => 'ip-2ze5tsl5bp6nf2b3****', 'title' => ''], ], [ 'name' => 'ExecutionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the image building task.', 'type' => 'string', 'required' => false, 'example' => 'exec-5fb8facb8ed7427c****', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the image building task. You can specify multiple values, separated by commas. Example: `BUILDING,DISTRIBUTING`. Valid values:'."\n" ."\n" .'- PREPARING: The system is preparing resources, such as a temporary transit instance.'."\n" ."\n" .'- REPAIRING: The system is repairing the source image.'."\n" ."\n" .'- BUILDING: The system is building the image. This includes executing user-defined commands and creating the image.'."\n" ."\n" .'- TESTING: The system is testing the created image by running user-defined test commands.'."\n" ."\n" .'- DISTRIBUTING: The system is distributing the image. This includes copying and sharing the image.'."\n" ."\n" .'- RELEASING: The system is releasing temporary resources generated during the build process.'."\n" ."\n" .'- SUCCESS: The task completed successfully.'."\n" ."\n" .'- PARTITION\\_SUCCESS: The task is partially successful. The image was created, but an error may have occurred during distribution or resource cleanup.'."\n" ."\n" .'- FAILED: The image building task failed.'."\n" ."\n" .'- TEST\\_FAILED: The image was created successfully, but it failed the user-defined tests.'."\n" ."\n" .'- CANCELLING: The system is canceling the image building task.'."\n" ."\n" .'- CANCELLED: The image building task was canceled.'."\n" ."\n" .'> If you omit this parameter, the operation returns image building tasks of all statuses.', 'type' => 'string', 'required' => false, 'example' => 'BUILDING', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set the value to the `NextToken` value returned from a previous call to this operation. This parameter is not required for the first call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page. Valid values: 1 to 500.'."\n" ."\n" .'Default value: 50.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '500', 'minimum' => '1', 'default' => '50', 'example' => '50', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The token returned in this call. Use this token to retrieve the next page of results. For more information, see the operation description.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of image pipeline executions.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaxResults' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'ImagePipelineExecution' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ImagePipelineExecutionSet' => [ 'description' => 'The image pipeline executions.', 'type' => 'array', 'items' => [ 'description' => 'Details of an image pipeline execution.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the image pipeline execution was created.', 'type' => 'string', 'example' => '2020-11-24T06:00:00Z', 'title' => ''], 'ImagePipelineId' => ['description' => 'The ID of the image pipeline.', 'type' => 'string', 'example' => 'ip-2ze5tsl5bp6nf2b3****', 'title' => ''], 'Status' => ['description' => 'The status of the image pipeline execution. Valid values:'."\n" ."\n" .'- `PREPARING`: The system prepares for the execution, such as creating temporary resources like a transit instance.'."\n" ."\n" .'- `REPAIRING`: The system is repairing the source image.'."\n" ."\n" .'- `BUILDING`: The system is building the image. This process includes running custom commands and creating the image.'."\n" ."\n" .'- `TESTING`: The image is being tested by running custom test commands.'."\n" ."\n" .'- `DISTRIBUTING`: The system is distributing the image, which includes copying and sharing it.'."\n" ."\n" .'- `RELEASING`: Temporary resources for the execution are being released.'."\n" ."\n" .'- `SUCCESS`: The execution is successful.'."\n" ."\n" .'- `PARTITION_SUCCESS`: The execution is partially successful. The image was created, but errors may have occurred in subsequent steps, such as image distribution or resource cleanup.'."\n" ."\n" .'- `FAILED`: The execution failed.'."\n" ."\n" .'- `TEST_FAILED`: The image was created, but the tests failed.'."\n" ."\n" .'- `CANCELLING`: The execution is being canceled.'."\n" ."\n" .'- `CANCELLED`: The execution is canceled.', 'type' => 'string', 'example' => 'BUILDING', 'title' => ''], 'ModifiedTime' => ['description' => 'The time when the execution was last updated.', 'type' => 'string', 'example' => '2020-11-25T06:00:00Z', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'Message' => ['description' => 'The message associated with the execution.', 'type' => 'string', 'example' => 'Create transition vpc "vpc-2ze70rc7093j9idu6****" success!', 'title' => ''], 'ImageId' => ['description' => 'The ID of the destination image.', 'type' => 'string', 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], 'ExecutionId' => ['description' => 'The ID of the execution.', 'type' => 'string', 'example' => 'exec-5fb8facb8ed7427c****', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'A list of tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag object.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The tags.', 'title' => '', 'example' => '', ], 'ErrorCode' => ['description' => 'The error code for a failed execution.', 'type' => 'string', 'title' => '', 'example' => 'NO_AVAILABLE_INSTANCE_TYPE'], 'ErrorInfo' => ['description' => 'The error message for a failed execution.', 'type' => 'string', 'title' => '', 'example' => 'No available instance type to use.'], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The details of the image pipeline executions.', 'title' => '', 'example' => '', ], ], 'description' => 'The response parameters.', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.Status', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'MissingParameter.ImagePipelineId', 'errorMessage' => 'The specified parameter ImagePipelineId should not be empty.', 'description' => 'The specified parameter ImagePipelineId should not be empty.'], ['errorCode' => 'InvalidExecutionId.SizeExceeded', 'errorMessage' => 'ExecutionId list exceeds maximum size of %s. Current size is %s.', 'description' => 'The ExecutionId list size you set exceeds the maximum allowed.'], ], 403 => [ ['errorCode' => 'Invalid.NextToken', 'errorMessage' => 'The specified NextToken is not valid.', 'description' => ''], ], [ ['errorCode' => 'InvalidImagePipeline.NotFound', 'errorMessage' => '%s', 'description' => ''], ], ], 'title' => 'DescribeImagePipelineExecutions', 'summary' => 'Call `DescribeImagePipelineExecutions` to get details about an image build task.', 'description' => '## API'."\n" ."\n" .'- The `ImagePipelineId` cannot refer to a deleted image pipeline. Deleting an image pipeline also deletes its associated build tasks.'."\n" ."\n" .'- The `ImagePipelineId` and `ExecutionId` parameters cannot both be empty.'."\n" ."\n" .'- To paginate the results, set `NextToken` to the value returned by the previous call to `DescribeImagePipelineExecutions`. Use `MaxResults` to specify the maximum number of results per page.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-31T02:40:53.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-04-04T08:50:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeImagePipelineExecutions'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeImagePipelineExecutions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipelineExecution', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipelineexecution/*'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipelineExecution', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipelineexecution/{#ImagePipelineExecutionId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipeline', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipeline/*'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipeline', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipeline/{#ImagePipelineId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 50,\\n \\"ImagePipelineExecution\\": {\\n \\"ImagePipelineExecutionSet\\": [\\n {\\n \\"CreationTime\\": \\"2020-11-24T06:00:00Z\\",\\n \\"ImagePipelineId\\": \\"ip-2ze5tsl5bp6nf2b3****\\",\\n \\"Status\\": \\"BUILDING\\",\\n \\"ModifiedTime\\": \\"2020-11-25T06:00:00Z\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"Message\\": \\"Create transition vpc \\\\\\"vpc-2ze70rc7093j9idu6****\\\\\\" success!\\",\\n \\"ImageId\\": \\"m-bp67acfmxazb4p****\\",\\n \\"ExecutionId\\": \\"exec-5fb8facb8ed7427c****\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestKey\\",\\n \\"TagKey\\": \\"TestValue\\"\\n }\\n ]\\n },\\n \\"ErrorCode\\": \\"NO_AVAILABLE_INSTANCE_TYPE\\",\\n \\"ErrorInfo\\": \\"No available instance type to use.\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribeImagePipelines' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29279', 'abilityTreeNodes' => ['FEATUREecs4FTFEV'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call [DescribeRegions](~~25609~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. If you use this parameter for filtering, you can query a maximum of 1,000 resources.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'A list of tags.', 'type' => 'array', 'items' => [ 'description' => 'A list of tags.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of a tag. Up to 20 tags are supported.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of a tag. Up to 20 tags are supported.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call [DescribeRegions](~~25609~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID. If you use this parameter for filtering, you can query a maximum of 1,000 resources.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the image pipeline.', 'type' => 'string', 'required' => false, 'example' => 'testImagePipeline', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. To retrieve the next page of results, set this parameter to the `NextToken` value from the previous response. Omit this parameter on your first request.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return per page. Valid values: 1 to 500.'."\n" ."\n" .'Default value: 50.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '500', 'minimum' => '1', 'default' => '50', 'example' => '50', 'title' => ''], ], [ 'name' => 'ImagePipelineId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the image pipelines. You can specify up to 20 IDs.', 'type' => 'array', 'items' => ['description' => 'An image pipeline ID.', 'type' => 'string', 'required' => false, 'example' => 'ip-2ze5tsl5bp6nf2b3****', 'title' => ''], 'required' => false, 'example' => 'ip-2ze5tsl5bp6nf2b3****', 'maxItems' => 21, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The token used to retrieve the next page of results. This value is returned if the results are paginated.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of image pipelines that match the query criteria.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaxResults' => ['description' => 'The number of entries per page for a paginated query.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'ImagePipeline' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ImagePipelineSet' => [ 'description' => 'Details of the image pipelines.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The creation time of the image pipeline.', 'type' => 'string', 'example' => '2020-11-24T06:00:00Z', 'title' => ''], 'DeleteInstanceOnFailure' => ['description' => 'Specifies whether to release the transit instance when the image build fails.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.g6.large', 'title' => ''], 'InternetMaxBandwidthOut' => ['description' => 'The public bandwidth of the transit instance. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'ImagePipelineId' => ['description' => 'The ID of the image pipeline.', 'type' => 'string', 'example' => 'ip-2ze5tsl5bp6nf2b3****', 'title' => ''], 'VSwitchId' => ['description' => 'The ID of the VSwitch in the VPC.', 'type' => 'string', 'example' => 'vsw-bp67acfmxazb4p****', 'title' => ''], 'SystemDiskSize' => ['description' => 'The size of the system disk of the transit instance. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '40', 'title' => ''], 'Description' => ['description' => 'The description of the image pipeline.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'BaseImage' => ['description' => 'The source image.'."\n" ."\n" .'- If `BaseImageType` is set to `IMAGE`, the ID of a custom image.'."\n" ."\n" .'- If `BaseImageType` is set to `IMAGE_FAMILY`, the name of an image family.', 'type' => 'string', 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'ImageName' => ['description' => 'The prefix of the destination image name.'."\n" .'>This parameter is deprecated. Use ImageOptions.ImageName.>', 'type' => 'string', 'deprecated' => true, 'example' => 'testImageName', 'title' => ''], 'BaseImageType' => ['description' => 'The type of the source image. Valid values:'."\n" ."\n" .'- IMAGE: A custom image.'."\n" ."\n" .'- IMAGE\\_FAMILY: An image family.', 'type' => 'string', 'example' => 'IMAGE', 'title' => ''], 'Name' => ['description' => 'The name of the image pipeline.', 'type' => 'string', 'example' => 'testImagePipeline', 'title' => ''], 'BuildContent' => ['description' => 'The content of the image pipeline.', 'type' => 'string', 'example' => 'COMPONENT ic-bp12dvdzvr9k9*****'."\n" .'COMPONENT acs:ecs:cn-hangzhou:18689161186*****:imagecomponent/ComponentName/1.*.*', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'A list of tag key-value pairs.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'ToRegionIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ToRegionId' => [ 'description' => 'A list of regions to which to distribute the destination image.', 'type' => 'array', 'items' => ['description' => 'A region to which the destination image is distributed.', 'type' => 'string', 'example' => '["cn-hangzhou"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AddAccounts' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AddAccount' => [ 'description' => 'The IDs of the Alibaba Cloud accounts with which to share the destination image.', 'type' => 'array', 'items' => ['description' => 'The ID of an Alibaba Cloud account with which to share the destination image.', 'type' => 'string', 'example' => '["1234567890"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'RepairMode' => ['description' => 'The repair option in the image pipeline.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- Standard: standard mode.', 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'TestContent' => ['description' => 'The content of the image test template.', 'type' => 'string', 'example' => 'COMPONENT ic-bp12dvdzvr9k9*****'."\n" .'COMPONENT acs:ecs:cn-hangzhou:18689161186*****:imagecomponent/ComponentName/1.*.*', 'title' => ''], 'ImageFamily' => ['description' => 'The destination image family.'."\n" .'>This parameter is deprecated. Use ImageOptions.ImageFamily.>', 'type' => 'string', 'deprecated' => true, 'example' => 'family', 'title' => ''], 'NvmeSupport' => ['description' => 'Specifies whether the destination image supports NVMe.'."\n" .'>This parameter is deprecated. Use `ImageOptions.ImageFeatures.NvmeSupport`.>', 'type' => 'string', 'deprecated' => true, 'example' => 'auto', 'title' => ''], 'ImportImageOptions' => [ 'description' => 'The properties and settings for importing an image.', 'type' => 'object', 'properties' => [ 'Architecture' => ['description' => 'The system architecture. Valid values:'."\n" ."\n" .'- x86\\_64'."\n" ."\n" .'- arm64', 'type' => 'string', 'example' => 'x86_64', 'title' => ''], 'OSType' => ['description' => 'The operating system type. Valid values:'."\n" ."\n" .'- windows'."\n" ."\n" .'- linux', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'Platform' => ['description' => 'The operating system distribution. Valid values:'."\n" ."\n" .'- Aliyun'."\n" ."\n" .'- Anolis'."\n" ."\n" .'- CentOS'."\n" ."\n" .'- Ubuntu'."\n" ."\n" .'- CoreOS'."\n" ."\n" .'- SUSE'."\n" ."\n" .'- Debian'."\n" ."\n" .'- OpenSUSE'."\n" ."\n" .'- FreeBSD'."\n" ."\n" .'- RedHat'."\n" ."\n" .'- Kylin'."\n" ."\n" .'- UOS'."\n" ."\n" .'- Fedora'."\n" ."\n" .'- Fedora CoreOS'."\n" ."\n" .'- CentOS Stream'."\n" ."\n" .'- AlmaLinux'."\n" ."\n" .'- Rocky Linux'."\n" ."\n" .'- Gentoo'."\n" ."\n" .'- Customized Linux'."\n" ."\n" .'- Others Linux'."\n" ."\n" .'- Windows Server 2022'."\n" ."\n" .'- Windows Server 2019'."\n" ."\n" .'- Windows Server 2016'."\n" ."\n" .'- Windows Server 2012'."\n" ."\n" .'- Windows Server 2008'."\n" ."\n" .'- Windows Server 2003'."\n" ."\n" .'- Other Windows', 'type' => 'string', 'example' => 'Aliyun', 'title' => ''], 'BootMode' => ['description' => 'The boot mode of the imported image. Valid values:'."\n" ."\n" .'- BIOS: BIOS boot mode.'."\n" ."\n" .'- UEFI: UEFI boot mode.', 'type' => 'string', 'example' => 'BIOS', 'title' => ''], 'LicenseType' => ['description' => 'The license type used to activate the operating system after the image is imported. Valid values:'."\n" ."\n" .'- Auto: Alibaba Cloud automatically detects the operating system to assign a license. The system prioritizes using an official Alibaba Cloud license. If one is not available for the specified `Platform`, it falls back to Bring Your Own License (BYOL).'."\n" ."\n" .'- Aliyun: An official Alibaba Cloud license is used based on the operating system specified by `Platform`.'."\n" ."\n" .'- BYOL: The license that comes with the source operating system. If you use BYOL, you must ensure that your license key can be used on Alibaba Cloud.', 'type' => 'string', 'example' => 'Auto', 'title' => ''], 'DiskDeviceMappings' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DiskDeviceMapping' => [ 'description' => 'A list of disk mappings for the custom image to create.'."\n" ."\n" .'- When N=1, this parameter specifies the system disk.'."\n" ."\n" .'- When N is a value from 2 to 17, this parameter specifies a data disk.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'OSSBucket' => ['description' => 'The OSS bucket that contains the image file.', 'type' => 'string', 'example' => 'ecsimageos', 'title' => ''], 'OSSObject' => ['description' => 'The name (key) of the image file that is stored in the OSS bucket.', 'type' => 'string', 'example' => 'CentOS_5.4_32.raw', 'title' => ''], 'Format' => ['description' => 'The image format. Valid values:'."\n" ."\n" .'- RAW'."\n" ."\n" .'- VHD'."\n" ."\n" .'- QCOW2', 'type' => 'string', 'example' => 'RAW', 'title' => ''], 'DiskImageSize' => ['description' => 'The size of the disk. Unit: GiB.'."\n" ."\n" .'-'."\n" ."\n" .'-', 'type' => 'integer', 'format' => 'int32', 'example' => '40', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Features' => [ 'description' => 'The features of the image.', 'type' => 'object', 'properties' => [ 'NvmeSupport' => ['description' => 'Specifies whether the imported image supports NVMe. Valid values:'."\n" ."\n" .'- supported: The image supports NVMe. Instances created from this image support the NVMe protocol.'."\n" ."\n" .'- unsupported: The image does not support NVMe. Instances created from this image do not support the NVMe protocol.', 'type' => 'string', 'example' => 'supported', 'title' => ''], 'ImdsSupport' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'RetainImportedImage' => ['description' => '> This parameter is in invitational preview.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'RetentionStrategy' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'ImageName' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Description' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RoleName' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'ImportImageTags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ImportImageTag' => [ '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' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'AdvancedOptions' => [ 'description' => 'The advanced settings.', 'type' => 'object', 'properties' => [ 'RetainCloudAssistant' => ['description' => 'Specifies whether Cloud Assistant is retained in the destination image. During the image build, Cloud Assistant is installed on the transit instance to run commands. Valid values:'."\n" ."\n" .'- true: Retains Cloud Assistant.'."\n" ."\n" .'- false: Does not retain Cloud Assistant.'."\n" ."\n" .'> This setting does not affect the Cloud Assistant that is already in your image.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ImageNameSuffix' => ['description' => 'Specifies whether to disable the automatic addition of a suffix to destination image names. Valid values:'."\n" ."\n" .'- disable: Disables the feature.', 'type' => 'string', 'example' => 'disable', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ImageOptions' => [ 'description' => 'The properties of the destination image.', 'type' => 'object', 'properties' => [ 'ImageName' => ['description' => 'The prefix of the destination image name.', 'type' => 'string', 'example' => 'imageName', 'title' => ''], 'ImageFamily' => ['description' => 'The image family of the destination image.', 'type' => 'string', 'example' => 'family', 'title' => ''], 'Description' => ['description' => 'The description of the destination image.', 'type' => 'string', 'example' => 'description.', 'title' => ''], 'ImageFeatures' => [ 'description' => 'The features of the destination image.', 'type' => 'object', 'properties' => [ 'NvmeSupport' => ['description' => 'Specifies whether the destination image supports NVMe. Valid values:'."\n" ."\n" .'- supported: The image supports NVMe. Instances created from this image also support NVMe.'."\n" ."\n" .'- unsupported: The image does not support NVMe. Instances created from this image do not support NVMe.'."\n" ."\n" .'- auto: The system checks whether your image has an NVMe driver installed. This check is performed before the build phase. If you install or uninstall the NVMe driver during the build, the result may be inaccurate. We recommend that you explicitly set this parameter to `supported` or `unsupported` based on your build content.', 'type' => 'string', 'example' => 'auto', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ImageTags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ImageTag' => [ 'description' => 'A list of tags for the destination image.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'testKey', 'title' => ''], 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'testValue', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidImagePipelineIdSize.ExceededMaxNumber', 'errorMessage' => '%s', 'description' => 'The number of specified ImagePipelineId.N parameters exceeds the upper limit. Valid values of N: 1 to 20.'], ['errorCode' => 'InvalidName.Malformed', 'errorMessage' => '%s', 'description' => ''], ], 403 => [ ['errorCode' => 'Invalid.NextToken', 'errorMessage' => 'The specified NextToken is not valid.', 'description' => ''], ], ], 'title' => 'DescribeImagePipelines', 'summary' => 'Describes one or more image templates.', 'description' => 'To perform a paginated query, set the `NextToken` parameter to the `NextToken` value returned by the previous `DescribeImagePipelines` call, and use the `MaxResults` parameter to specify the maximum number of entries.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-17T03:33:15.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-28T06:39:43.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-01-13T02:00:32.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-10T06:14:46.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeImagePipelines'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeImagePipelines', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipeline', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipeline/*'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ImagePipeline', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:imagepipeline/{#imagepipelineId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"MaxResults\\": 50,\\n \\"ImagePipeline\\": {\\n \\"ImagePipelineSet\\": [\\n {\\n \\"CreationTime\\": \\"2020-11-24T06:00:00Z\\",\\n \\"DeleteInstanceOnFailure\\": true,\\n \\"InstanceType\\": \\"ecs.g6.large\\",\\n \\"InternetMaxBandwidthOut\\": 0,\\n \\"ImagePipelineId\\": \\"ip-2ze5tsl5bp6nf2b3****\\",\\n \\"VSwitchId\\": \\"vsw-bp67acfmxazb4p****\\",\\n \\"SystemDiskSize\\": 40,\\n \\"Description\\": \\"This is description.\\",\\n \\"BaseImage\\": \\"m-bp67acfmxazb4p****\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"ImageName\\": \\"testImageName\\",\\n \\"BaseImageType\\": \\"IMAGE\\",\\n \\"Name\\": \\"testImagePipeline\\",\\n \\"BuildContent\\": \\"COMPONENT ic-bp12dvdzvr9k9*****\\\\nCOMPONENT acs:ecs:cn-hangzhou:18689161186*****:imagecomponent/ComponentName/1.*.*\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"ToRegionIds\\": {\\n \\"ToRegionId\\": [\\n \\"[\\\\\\"cn-hangzhou\\\\\\"]\\"\\n ]\\n },\\n \\"AddAccounts\\": {\\n \\"AddAccount\\": [\\n \\"[\\\\\\"1234567890\\\\\\"]\\"\\n ]\\n },\\n \\"RepairMode\\": \\"Standard\\",\\n \\"TestContent\\": \\"COMPONENT ic-bp12dvdzvr9k9*****\\\\nCOMPONENT acs:ecs:cn-hangzhou:18689161186*****:imagecomponent/ComponentName/1.*.*\\",\\n \\"ImageFamily\\": \\"family\\",\\n \\"NvmeSupport\\": \\"auto\\",\\n \\"ImportImageOptions\\": {\\n \\"Architecture\\": \\"x86_64\\",\\n \\"OSType\\": \\"linux\\",\\n \\"Platform\\": \\"Aliyun\\",\\n \\"BootMode\\": \\"BIOS\\",\\n \\"LicenseType\\": \\"Auto\\",\\n \\"DiskDeviceMappings\\": {\\n \\"DiskDeviceMapping\\": [\\n {\\n \\"OSSBucket\\": \\"ecsimageos\\",\\n \\"OSSObject\\": \\"CentOS_5.4_32.raw\\",\\n \\"Format\\": \\"RAW\\",\\n \\"DiskImageSize\\": 40\\n }\\n ]\\n },\\n \\"Features\\": {\\n \\"NvmeSupport\\": \\"supported\\",\\n \\"ImdsSupport\\": \\"\\"\\n },\\n \\"RetainImportedImage\\": false,\\n \\"RetentionStrategy\\": \\"\\",\\n \\"ImageName\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"RoleName\\": \\"\\",\\n \\"ImportImageTags\\": {\\n \\"ImportImageTag\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Value\\": \\"\\"\\n }\\n ]\\n }\\n },\\n \\"AdvancedOptions\\": {\\n \\"RetainCloudAssistant\\": true,\\n \\"ImageNameSuffix\\": \\"disable\\"\\n },\\n \\"ImageOptions\\": {\\n \\"ImageName\\": \\"imageName\\",\\n \\"ImageFamily\\": \\"family\\",\\n \\"Description\\": \\"description.\\",\\n \\"ImageFeatures\\": {\\n \\"NvmeSupport\\": \\"auto\\"\\n },\\n \\"ImageTags\\": {\\n \\"ImageTag\\": [\\n {\\n \\"TagKey\\": \\"testKey\\",\\n \\"TagValue\\": \\"testValue\\"\\n }\\n ]\\n }\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribeImageSharePermission' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28943', 'abilityTreeNodes' => ['FEATUREecsKVA4YC'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the custom image. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the custom image.', 'type' => 'string', 'required' => true, 'example' => 'm-bp1caf3yicx5jlfl****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the returned results.'."\n" ."\n" .'Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in the returned results.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned results.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of records.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'ImageId' => ['description' => 'The ID of the custom image.', 'type' => 'string', 'example' => 'm-bp1caf3yicx5jlfl****', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the image.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'ShareGroups' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ShareGroup' => [ 'description' => 'The share groups.', 'type' => 'array', 'items' => [ 'description' => 'The share groups.', 'type' => 'object', 'properties' => [ 'Group' => ['description' => 'The share group.', 'type' => 'string', 'example' => 'all', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Accounts' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Account' => [ 'description' => 'The Alibaba Cloud registered users.', 'type' => 'array', 'items' => [ 'description' => 'The Alibaba Cloud registered users.', 'type' => 'object', 'properties' => [ 'AliyunId' => ['description' => 'The Alibaba Cloud account ID.', 'type' => 'string', 'example' => '123456****', 'title' => ''], 'SharedTime' => ['description' => 'The time when image sharing started. The time follows the [ISO 8601](~~25696~~) standard and is displayed in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2023-01-01T12:05:00Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter "RegionId "that is mandatory for processing this request is not supplied.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified image %s does not exist.', 'description' => 'The specified image does not exist under the current account. check whether the image id is correct.'], ], ], 'title' => 'Query all users with whom a custom image is shared', 'summary' => 'Queries all users with whom a custom image is shared. The returned results support pagination, with 10 entries per page by default.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-02-27T06:39:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-05-17T03:02:23.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeImageSharePermission'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeImageSharePermission', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/{#imageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"ImageId\\": \\"m-bp1caf3yicx5jlfl****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ShareGroups\\": {\\n \\"ShareGroup\\": [\\n {\\n \\"Group\\": \\"all\\"\\n }\\n ]\\n },\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"AliyunId\\": \\"123456****\\",\\n \\"SharedTime\\": \\"2023-01-01T12:05:00Z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeImageSupportInstanceTypes' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28944', 'abilityTreeNodes' => ['FEATUREecsJ8B02D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the image. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The image ID.', 'type' => 'string', 'required' => false, 'example' => 'm-o6w3gy99qf89rkga****', 'title' => ''], ], [ 'name' => 'ActionType', 'in' => 'query', 'schema' => ['description' => 'The scenario in which the image is used. Valid values:'."\n" ."\n" .'- CreateEcs (default): instance creation.'."\n" .'- ChangeOS: replacement of the system disk or operating system.', 'type' => 'string', 'required' => false, 'example' => 'CreateEcs', 'title' => ''], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of filter conditions for querying resources.', 'type' => 'array', 'items' => [ 'description' => 'The filter condition for querying resources.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The filter condition key. Currently, only filtering by image ID is supported. Valid values:'."\n" .'- imageId: filters by image ID.'."\n" .'- filter: filters by image ID.'."\n" ."\n" .'> This parameter is not effective and will be deprecated soon.', 'type' => 'string', 'required' => false, 'example' => 'imageId', 'title' => ''], 'Value' => ['description' => 'The filter condition value.'."\n" .'> This parameter is not effective and will be deprecated soon.', 'type' => 'string', 'required' => false, 'example' => 'm-o6w3gy99qf89rkga****', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => ' 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'ImageId' => ['description' => 'The ID of the queried image.', 'type' => 'string', 'example' => 'm-o6w3gy99qf89rkga****', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the image.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'InstanceTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceType' => [ 'description' => 'The collection of instance types.', 'type' => 'array', 'items' => [ 'description' => 'The instance type information.', 'type' => 'object', 'properties' => [ 'InstanceTypeId' => ['description' => 'The ID of the instance type supported by the image.', 'type' => 'string', 'example' => 'ecs.t1.xsmall', 'title' => ''], 'InstanceTypeFamily' => ['description' => 'The instance family.', 'type' => 'string', 'example' => 'ecs.t1', 'title' => ''], 'CpuCoreCount' => ['description' => 'The number of vCPU cores of the instance type.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MemorySize' => ['description' => 'The memory size of the instance type. Unit: GiB.', 'type' => 'number', 'format' => 'float', 'example' => '1024', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParamter', 'errorMessage' => 'Invalid Parameter.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => 'The specified instance type does not exist or you are not authorized to manage instances of this instance type.'], ], 404 => [ ['errorCode' => 'InvalidUsage', 'errorMessage' => 'The specifed Usage is not valid.', 'description' => 'The specified Usage parameter is invalid.'], ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified image %s does not exist.', 'description' => 'The specified image does not exist under the current account. check whether the image id is correct.'], ], ], 'title' => 'Query instance types supported by a specified image', 'summary' => 'Queries the instance types supported by a specified image.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-02-27T06:39:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-25T03:08:18.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-28T09:34:12.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-03-20T09:37:54.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeImageSupportInstanceTypes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeImageSupportInstanceTypes', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/{#imageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\" 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"ImageId\\": \\"m-o6w3gy99qf89rkga****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceTypes\\": {\\n \\"InstanceType\\": [\\n {\\n \\"InstanceTypeId\\": \\"ecs.t1.xsmall\\",\\n \\"InstanceTypeFamily\\": \\"ecs.t1\\",\\n \\"CpuCoreCount\\": 1,\\n \\"MemorySize\\": 1024\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeImages' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28942', 'abilityTreeNodes' => ['FEATUREecsJ8B02D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the image. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the image. If you do not specify this parameter, only images in the Available state are returned by default. Valid values:'."\n" ."\n" .'- Creating: The image is being created.'."\n" .'- Waiting: The image is waiting in a multi-task queue.'."\n" .'- Available (default): The image is available for use.'."\n" .'- UnAvailable: The image is unavailable.'."\n" .'- CreateFailed: The image failed to be created.'."\n" .'- Deprecated: The image is deprecated.'."\n" ."\n" .'Default value: Available. This parameter supports multiple values at the same time, separated by commas (,).', 'type' => 'string', 'required' => false, 'default' => 'Available', 'example' => 'Available', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The image ID.'."\n" ."\n" .'
'."\n" .'Naming conventions for image IDs'."\n" ."\n" .'- Public images: Named by operating system version, architecture, language, and release date. For example, the image ID for Windows Server 2008 R2 Enterprise Edition, 64-bit English system is win2008r2_64_ent_sp1_en-us_40G_alibase_20190318.vhd.'."\n" ."\n" .'- Custom images, shared images, Alibaba Cloud Marketplace images, and community images: Start with m.'."\n" ."\n" .'
', 'type' => 'string', 'required' => false, 'example' => 'm-bp1g7004ksh0oeuc****', 'title' => ''], ], [ 'name' => 'ShowExpired', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the subscription image has expired.', 'type' => 'boolean', 'required' => false, 'default' => 'false', 'example' => 'false', 'title' => ''], ], [ 'name' => 'SnapshotId', 'in' => 'query', 'schema' => ['description' => 'The ID of the snapshot used to create the custom image.', 'type' => 'string', 'required' => false, 'example' => 's-bp17ot2q7x72ggtw****', 'title' => ''], ], [ 'name' => 'ImageName', 'in' => 'query', 'schema' => ['description' => 'The image name. Fuzzy search is supported.', 'type' => 'string', 'required' => false, 'example' => 'testImageName', 'title' => ''], ], [ 'name' => 'ImageFamily', 'in' => 'query', 'schema' => ['description' => 'The name of the image family. You can set this parameter to filter images that belong to the specified image family.'."\n" ."\n" .'Default value: empty.'."\n" .'> For information about image families associated with Alibaba Cloud official images, see [Overview of public images](~~108393~~).', 'type' => 'string', 'required' => false, 'example' => 'hangzhou-daily-update', 'title' => ''], ], [ 'name' => 'ImageOwnerAlias', 'in' => 'query', 'schema' => ['description' => 'The source of the image. Valid values:'."\n" ."\n" .'- system: Public images provided by Alibaba Cloud that are not published through Alibaba Cloud Marketplace. This is different from the concept of "public images" in the console.'."\n" .'- self: Custom images that you created.'."\n" .'- others: Includes shared images (images directly shared by other Alibaba Cloud users) and community images (custom images that are fully shared by any Alibaba Cloud user). Note the following:'."\n" .' - To query community images, IsPublic must be set to true.'."\n" .' - To query shared images, IsPublic must be set to false or left empty.'."\n" .'- marketplace: Images published by Alibaba Cloud or third-party independent software vendors (ISVs) in Alibaba Cloud Marketplace. These images must be purchased together with ECS. Check the billing details of Alibaba Cloud Marketplace images.'."\n" ."\n" .'Default value: empty.'."\n" ."\n" .'> An empty value indicates that images with the system, self, and others values are returned.', 'type' => 'string', 'required' => false, 'example' => 'self', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type for which you want to query available images.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5.large', 'title' => ''], ], [ 'name' => 'IsSupportIoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the image can run on I/O optimized instances.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'IsSupportCloudinit', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the image supports cloud-init.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'OSType', 'in' => 'query', 'schema' => ['description' => 'The operating system type of the image. Valid values:'."\n" ."\n" .'- windows.'."\n" .'- linux.', 'type' => 'string', 'required' => false, 'example' => 'linux', 'title' => ''], ], [ 'name' => 'Architecture', 'in' => 'query', 'schema' => ['description' => 'The architecture of the image. Valid values:'."\n" ."\n" .'- i386.'."\n" .'- x86_64.'."\n" .'- arm64.', 'type' => 'string', 'required' => false, 'example' => 'i386', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the resources.'."\n" ."\n" .'Start value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for paging.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'Usage', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the image is running on ECS instances. Valid values:'."\n" ."\n" .'- instance: The image is in use. ECS instances are created from this image.'."\n" .'- none: The image is idle. No ECS instances are created from this image.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run.'."\n" .' '."\n" .'- true: Sends a dry run request without querying resource status. The system checks whether your AccessKey pair is valid, whether Resource Access Management (RAM) user authorization is granted, and whether the required parameters are specified. If the check fails, the corresponding error is returned. If the check succeeds, the DryRunOperation error code is returned. '."\n" .'- false: Sends a normal request. After the check succeeds, a 2XX HTTP status code is returned and the resource status is queried. '."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ActionType', 'in' => 'query', 'schema' => ['description' => 'The scenario in which the image is used. Valid values:'."\n" ."\n" .'- CreateEcs (default): instance creation.'."\n" .'- ChangeOS: replacement of the system disk or operating system.', 'type' => 'string', 'required' => false, 'example' => 'CreateEcs', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the custom image belongs. When you use this parameter to filter resources, the resource count cannot exceed 1,000.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag information.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the image.'."\n" ."\n" .'> This parameter will be deprecated. To improve compatibility, use Tag.N.Key instead.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'Key' => ['description' => 'The tag key of the image. Valid values of N: 1 to 20.'."\n" ."\n" .'When you use a single tag to filter resources, the resource count with this tag cannot exceed 1,000. When you use multiple tags to filter resources, the resource count of resources that are attached to all specified tags cannot exceed 1,000. If the resource count exceeds 1,000, call the [ListTagResources](~~110425~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the image. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the image.'."\n" ."\n" .'> This parameter will be deprecated. To improve compatibility, use Tag.N.Value instead.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of filter conditions for querying resources.', 'type' => 'array', 'items' => [ 'description' => 'The filter condition for querying resources.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The filter key for querying resources. Valid values:'."\n" ."\n" .'- When this parameter is set to `CreationStartTime`, you can query resources created after the specified time point (`Filter.N.Value`).'."\n" .'- When this parameter is set to `CreationEndTime`, you can query resources created before the specified time point (`Filter.N.Value`).'."\n" .'- When this parameter is set to `NetworkType`, you can query resources of the specified network type.'."\n" .'- When this parameter is set to any of `CpuOnlineUpgrade`, `CpuOnlineDowngrade`, `MemoryOnlineUpgrade`, or `MemoryOnlineDowngrade`, you can query the CPU or memory hot-plugging support of the specified image.'."\n" ."\n" .'Default value: null.', 'type' => 'string', 'required' => false, 'example' => 'CreationStartTime', 'title' => ''], 'Value' => ['description' => 'The filter value for querying resources.'."\n" .'- When `Filter.N.Key` is set to `CreationStartTime` or `CreationEndTime`, the format is `yyyy-MM-ddTHH:mmZ`, using the UTC+0 time zone.'."\n" .'- When `Filter.N.Key` is set to `NetworkType`, valid network type values include `vpc` and `classic`.'."\n" ."\n" .'- When `Filter.N.Key` is set to `CpuOnlineUpgrade`, `CpuOnlineDowngrade`, `MemoryOnlineUpgrade`, or `MemoryOnlineDowngrade`, the value can be `supported` or `unsupported`.'."\n" ."\n" .'Default value: null.', 'type' => 'string', 'required' => false, 'example' => '2017-12-05T22:40Z', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'IsPublic', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query published community images. Valid values:'."\n" ."\n" .'- true: Queries published community images. When you set this parameter to true, ImageOwnerAlias must be set to others.'."\n" .'- false: Queries image types other than community images. The specific types depend on the ImageOwnerAlias parameter value.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ImageOwnerId', 'in' => 'query', 'schema' => ['description' => 'The Alibaba Cloud account ID of the image owner. This parameter takes effect only when you query shared images or community images.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '20169351435666****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries on the current page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '66189103-EDB2-43E2-BB60-BFF2B62F4EB8', 'title' => ''], 'TotalCount' => ['description' => 'The total number of images.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the image.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Images' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Image' => [ 'description' => 'The collection of image information.', 'type' => 'array', 'items' => [ 'description' => 'The image information.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the image was created.', 'type' => 'string', 'example' => '2019-11-15T06:07:05Z', 'title' => ''], 'Status' => ['description' => 'The status of the image. Valid values:'."\n" ."\n" .'- UnAvailable: unavailable.'."\n" .'- Available: available.'."\n" .'- Creating: being created.'."\n" .'- CreateFailed: creation failed.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'ImageFamily' => ['description' => 'The name of the image family.', 'type' => 'string', 'example' => 'hangzhou-daily-update', 'title' => ''], 'Progress' => ['description' => 'The image creation progress, in percentage.', 'type' => 'string', 'example' => '100%', 'title' => ''], 'IsCopied' => ['description' => 'Indicates whether the image is a copy of another image.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'IsSupportIoOptimized' => ['description' => 'Indicates whether the image can run on I/O optimized instances.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ImageOwnerAlias' => ['description' => 'The source of the image. Valid values:'."\n" ."\n" .'- system: A public image provided by Alibaba Cloud.'."\n" .'- self: A custom image that you created.'."\n" .'- others: A shared image or community image provided by other Alibaba Cloud users.'."\n" .'- marketplace: An Alibaba Cloud Marketplace image.', 'type' => 'string', 'example' => 'self', 'title' => ''], 'IsSupportCloudinit' => ['description' => 'Indicates whether the image supports Cloud Init.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'ImageVersion' => ['description' => 'The image version.', 'type' => 'string', 'example' => '2', 'title' => ''], 'Usage' => ['description' => 'The type of resource that references the image. Valid values:'."\n" ."\n" .'- instance: One or more ECS instances have been created from this image.'."\n" .'- none: No ECS instances have been created from this image.', 'type' => 'string', 'example' => 'none', 'title' => ''], 'IsSelfShared' => ['description' => 'Indicates whether the custom image has been shared with other users.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'Description' => ['description' => 'The description of the image.', 'type' => 'string', 'example' => 'Archive log for Oracle', 'title' => ''], 'Size' => ['description' => 'The image size, in GiB.'."\n" .''."\n" .'If the image contains data disks, this parameter represents only the size of the system disk snapshot associated with the image.'."\n" .'', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the image belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'Platform' => ['description' => 'The operating system platform.', 'type' => 'string', 'example' => 'Windows Server 2016', 'title' => ''], 'OSNameEn' => ['description' => 'The English display name of the operating system.', 'type' => 'string', 'example' => 'Windows Server 2016 Data Center Edition 64bit Chinese Edition', 'title' => ''], 'ImageName' => ['description' => 'The name of the image.', 'type' => 'string', 'example' => 'testImageName', 'title' => ''], 'OSName' => ['description' => 'The Chinese display name of the operating system.', 'type' => 'string', 'example' => 'Windows Server 2016 数据中心版 64位中文版', 'title' => ''], 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'example' => 'm-bp1g7004ksh0oeuc****', 'title' => ''], 'OSType' => ['description' => 'The operating system type. Valid values:'."\n" ."\n" .'- windows.'."\n" .'- linux.', 'type' => 'string', 'example' => 'windows', 'title' => ''], 'IsSubscribed' => ['description' => 'Indicates whether you have subscribed to the terms of service for the image product corresponding to the product code.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ProductCode' => ['description' => 'The product code of the Alibaba Cloud Marketplace image.', 'type' => 'string', 'example' => 'test000****', 'title' => ''], 'Architecture' => ['description' => 'The system architecture type of the image. Valid values:'."\n" ."\n" .'- i386.'."\n" .'- x86_64.'."\n" .'- arm64.', 'type' => 'string', 'example' => 'x86_64', 'title' => ''], 'BootMode' => ['description' => 'The boot mode of the image. Valid values:'."\n" .'- BIOS: BIOS boot mode.'."\n" .'- UEFI: UEFI boot mode.'."\n" ."\n" .'- UEFI-Preferred: dual boot mode.'."\n" ."\n" .'For more information about image boot modes, see [Image boot modes](~~2244655#b9caa9b8bb1wf~~).', 'type' => 'string', 'example' => 'BIOS', 'title' => ''], 'DiskDeviceMappings' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DiskDeviceMapping' => [ 'description' => 'The collection of disk-to-snapshot mapping relationships in the image.', 'type' => 'array', 'items' => [ 'description' => 'The disk-to-snapshot mapping relationship in the image.', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The type of the image.', 'type' => 'string', 'example' => 'system', 'title' => ''], 'ImportOSSBucket' => ['description' => 'The OSS bucket to which the imported image belongs.', 'type' => 'string', 'example' => 'testEcsImport', 'title' => ''], 'Progress' => ['description' => 'The progress of the image copy task for an image that is being copied.', 'type' => 'string', 'example' => '32%', 'title' => ''], 'SnapshotId' => ['description' => 'The snapshot ID.', 'type' => 'string', 'example' => 's-bp17ot2q7x72ggtw****', 'title' => ''], 'ImportOSSObject' => ['description' => 'The OSS object to which the imported image belongs.', 'type' => 'string', 'example' => 'imageImport', 'title' => ''], 'Device' => ['description' => 'The device information of the disk, such as /dev/xvdb.', 'type' => 'string', 'example' => '/dev/xvda', 'title' => ''], 'Size' => ['description' => 'The size of the disk. Unit: GiB.', 'type' => 'string', 'example' => '60', 'title' => ''], 'RemainTime' => ['description' => 'The remaining time of the image copy task for an image that is being copied. Unit: seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '233', 'title' => ''], 'Format' => ['description' => 'The image format.', 'type' => 'string', 'example' => 'qcow2', 'title' => ''], 'Encrypted' => ['description' => '> This parameter is in invitational preview.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The list of tag key-value pairs of the image.', 'type' => 'array', 'items' => [ 'description' => 'The tag key-value pair of the image.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the image.', 'type' => 'string', 'example' => 'Oracle', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the image.', 'type' => 'string', 'example' => 'DTS', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'IsPublic' => ['description' => 'Indicates whether the image is a public image. Public images include public images provided by Alibaba Cloud and custom images that you have published as community images. Valid values:'."\n" ."\n" .'- true: The image is a public image.'."\n" .'- false: The image is not a public image.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ImageOwnerId' => ['description' => 'The Alibaba Cloud account ID of the image owner. This parameter takes effect only when you query shared images or community images.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890', 'title' => ''], 'LoginAsNonRootSupported' => ['description' => 'Indicates whether the image supports logon as a non-root user. Valid values:'."\n" ."\n" .'- true: Supported.'."\n" ."\n" .'- false: Not supported.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'SupplierName' => ['description' => 'The verified enterprise name of the community image provider.', 'type' => 'string', 'example' => 'TestName', 'title' => ''], 'DetectionOptions' => [ 'description' => 'The image detection results.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the image detection task. Valid values:'."\n" ."\n" .'- Processing: Detection is in progress.'."\n" ."\n" .'- Finished: Detection is complete.', 'type' => 'string', 'example' => 'Processing', 'title' => ''], 'Items' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Item' => [ 'description' => 'The list of image detection items.', 'type' => 'array', 'items' => [ 'description' => 'The image detection item.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the image detection item.', 'type' => 'string', 'example' => 'Nvme', 'title' => ''], 'Value' => ['description' => 'The result of the image detection item.', 'type' => 'string', 'example' => 'Supported', 'title' => ''], 'RiskLevel' => ['description' => 'The risk level of the imported custom image detection item. This field is returned only when a risk exists.'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- High: Critical. Affects whether the instance can start successfully. We strongly recommend that you fix this issue.'."\n" ."\n" .'- Medium: Important. Affects instance startup performance or instance configurations. We recommend that you optimize this.', 'type' => 'string', 'example' => 'High', 'title' => ''], 'RiskCode' => ['description' => 'The potential defect of the detection item.', 'type' => 'string', 'example' => 'NVMe.NotInstalled', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'Features' => [ 'description' => 'The feature-related attributes of the image.', 'type' => 'object', 'properties' => [ 'NvmeSupport' => ['description' => 'Indicates whether the image supports NVMe. Valid values:'."\n" ."\n" .'- supported: Supported. Instances created from this image support the NVMe protocol.'."\n" ."\n" .'- unsupported: Not supported. Instances created from this image do not support the NVMe protocol.', 'type' => 'string', 'example' => 'supported', 'title' => ''], 'ImdsSupport' => ['description' => 'The metadata access mode of the image. Valid values:'."\n" .'- v1: When you create an ECS instance from this image, you cannot set the metadata access mode to security hardened mode.'."\n" .'- v2: When you create an ECS instance from this image, you can set the metadata access mode to security hardened mode.'."\n" ."\n\n" .'[Instance metadata overview](~~108460~~).', 'type' => 'string', 'example' => 'v2', 'title' => ''], 'CpuOnlineUpgrade' => ['description' => 'Indicates whether CPU hot-upgrade is supported. Valid values:'."\n" .' '."\n" .'- supported: Supported.'."\n" .'- unsupported: Not supported.', 'type' => 'string', 'example' => 'supported', 'title' => ''], 'CpuOnlineDowngrade' => ['description' => 'Indicates whether CPU hot-downgrade is supported. Valid values:'."\n" .' '."\n" .'- supported: Supported.'."\n" .'- unsupported: Not supported.', 'type' => 'string', 'example' => 'supported', 'title' => ''], 'MemoryOnlineUpgrade' => ['description' => 'Indicates whether memory hot-upgrade is supported. Valid values:'."\n" .' '."\n" .'- supported: Supported.'."\n" .'- unsupported: Not supported.', 'type' => 'string', 'example' => 'unsupported', 'title' => ''], 'MemoryOnlineDowngrade' => ['description' => 'Indicates whether memory hot-downgrade is supported. Valid values:'."\n" .' '."\n" .'- supported: Supported.'."\n" .'- unsupported: Not supported.', 'type' => 'string', 'example' => 'unsupported', 'title' => ''], ], 'title' => '', 'example' => '', ], 'LicenseType' => ['description' => 'The license type. This property determines the billable methods and activation logic for ECS instances created from this image. This parameter is meaningful only for Windows Server images. Valid values:'."\n" .'- Aliyun: Alibaba Cloud official license. Instances created from this image include the Windows Server license fee and are automatically activated by Alibaba Cloud after startup.'."\n" .'- BYOL: Bring Your Own License. Instances created from this image do not include the Windows Server license fee. After startup, the instances are not automatically activated and must be manually activated by using your own valid license.', 'type' => 'string', 'example' => 'BYOL', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidImageOwnerAlias.ValueNotSupported', 'errorMessage' => 'The specified ImageOwnerAlias value is not supported.', 'description' => 'The specified ImageOwnerAlias parameter is invalid.'], ['errorCode' => 'InvalidParamter', 'errorMessage' => 'Invalid Parameter.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidTag.Mismatch', 'errorMessage' => 'The specified Tag.n.Key and Tag.n.Value are not match.', 'description' => 'The specified Tag.N.Key and Tag.N.Value parameters do not correspond to each other.'], ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified instance type %s does not exist. You can use the DescribeInstanceTypes API to query the available instance types.', 'description' => 'The specified instance type does not exist. You can use the DescribeInstanceTypes API to query the available instance types.'], ['errorCode' => 'InvalidFilterValue.NetworkType', 'errorMessage' => 'The specified networkType value in the Filter is invalid.', 'description' => 'The specified network type value in the filter is invalid.'], ['errorCode' => 'InvalidOperation.ImageOwnerIdUnsupported', 'errorMessage' => 'The parameter "ImageOwnerId" is not supported in this context, it is only valid when querying shared images or community images.', 'description' => 'The ImageOwnerId parameter is not supported here and is valid only when querying shared images or community images.'], ['errorCode' => 'InvalidImageOwnerAlias.PublicImageUnsupported', 'errorMessage' => 'When querying images, the parameter ImageOwnerAlias should be others while specified parameter IsPublic is true.', 'description' => 'When querying images, if the parameter IsPublic is true, the parameter ImageOwnerAlias must be others.'], ], 403 => [ ['errorCode' => 'CurrentAccount.NotSupportPublicImage', 'errorMessage' => 'Public image is not supported for current account.', 'description' => 'The current user cannot use public images.'], ], [ ['errorCode' => 'InvalidFilterKey.NotFound', 'errorMessage' => 'The specified Filter Key is not found.', 'description' => 'The specified filter key is invalid.'], ['errorCode' => 'InvalidFilterValue', 'errorMessage' => 'The specified Filter Value is not valid.', 'description' => 'The specified filter value is invalid.'], ['errorCode' => 'InvalidUsage', 'errorMessage' => 'The specified Usage is not valid.', 'description' => 'The specified Usage parameter is invalid.'], ['errorCode' => 'InvalidOSType', 'errorMessage' => 'The specified OSType is not valid.', 'description' => 'The specified OSType parameter is invalid.'], ['errorCode' => 'InvalidArchitecture', 'errorMessage' => 'The specified Architecture is not valid.', 'description' => 'The Architecture parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'Query image resources', 'summary' => 'Queries the list of available image resources based on specified parameters such as ImageId, image usage scenarios, and filter conditions.', 'description' => '- Image resources that you can query include your custom images, public images provided by Alibaba Cloud, Alibaba Cloud Marketplace images, and shared images that other Alibaba Cloud users have shared with you.'."\n" .'- Paging is supported. The query results include the total number of available image resources and the image resources on the current page. The default number of entries per page is 10.'."\n" .'- When you invoke an API operation by using Cloud Assistant CLI, request parameters of different data types must comply with format requirements. For more information, see [CLI parameter format](~~110340~~).'."\n" .'- When you query images provided by Alibaba Cloud or shared images (ImageOwnerAlias is set to system or others), the request can bypass RAM authentication rules. For more information, see [Authentication rules](~~25497~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-09-18T08:55:25.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-04-22T06:39:53.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-14T05:36:37.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-27T06:39:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-25T09:50:13.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-12-20T05:46:47.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-12-16T02:48:27.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-12-05T05:48:16.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-09-26T09:04:54.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-30T07:20:50.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-07-26T02:20:43.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeImages'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeImages', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/{#imageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 1,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"66189103-EDB2-43E2-BB60-BFF2B62F4EB8\\",\\n \\"TotalCount\\": 1,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"CreationTime\\": \\"2019-11-15T06:07:05Z\\",\\n \\"Status\\": \\"Available\\",\\n \\"ImageFamily\\": \\"hangzhou-daily-update\\",\\n \\"Progress\\": \\"100%\\",\\n \\"IsCopied\\": false,\\n \\"IsSupportIoOptimized\\": true,\\n \\"ImageOwnerAlias\\": \\"self\\",\\n \\"IsSupportCloudinit\\": true,\\n \\"ImageVersion\\": \\"2\\",\\n \\"Usage\\": \\"none\\",\\n \\"IsSelfShared\\": \\"true\\",\\n \\"Description\\": \\"Archive log for Oracle\\",\\n \\"Size\\": 60,\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"Platform\\": \\"Windows Server 2016\\",\\n \\"OSNameEn\\": \\"Windows Server 2016 Data Center Edition 64bit Chinese Edition\\",\\n \\"ImageName\\": \\"testImageName\\",\\n \\"OSName\\": \\"Windows Server 2016 数据中心版 64位中文版\\",\\n \\"ImageId\\": \\"m-bp1g7004ksh0oeuc****\\",\\n \\"OSType\\": \\"windows\\",\\n \\"IsSubscribed\\": false,\\n \\"ProductCode\\": \\"test000****\\",\\n \\"Architecture\\": \\"x86_64\\",\\n \\"BootMode\\": \\"BIOS\\",\\n \\"DiskDeviceMappings\\": {\\n \\"DiskDeviceMapping\\": [\\n {\\n \\"Type\\": \\"system\\",\\n \\"ImportOSSBucket\\": \\"testEcsImport\\",\\n \\"Progress\\": \\"32%\\",\\n \\"SnapshotId\\": \\"s-bp17ot2q7x72ggtw****\\",\\n \\"ImportOSSObject\\": \\"imageImport\\",\\n \\"Device\\": \\"/dev/xvda\\",\\n \\"Size\\": \\"60\\",\\n \\"RemainTime\\": 233,\\n \\"Format\\": \\"qcow2\\",\\n \\"Encrypted\\": true\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"Oracle\\",\\n \\"TagKey\\": \\"DTS\\"\\n }\\n ]\\n },\\n \\"IsPublic\\": false,\\n \\"ImageOwnerId\\": 1234567890,\\n \\"LoginAsNonRootSupported\\": false,\\n \\"SupplierName\\": \\"TestName\\",\\n \\"DetectionOptions\\": {\\n \\"Status\\": \\"Processing\\",\\n \\"Items\\": {\\n \\"Item\\": [\\n {\\n \\"Name\\": \\"Nvme\\",\\n \\"Value\\": \\"Supported\\",\\n \\"RiskLevel\\": \\"High\\",\\n \\"RiskCode\\": \\"NVMe.NotInstalled\\"\\n }\\n ]\\n }\\n },\\n \\"Features\\": {\\n \\"NvmeSupport\\": \\"supported\\",\\n \\"ImdsSupport\\": \\"v2\\",\\n \\"CpuOnlineUpgrade\\": \\"supported\\",\\n \\"CpuOnlineDowngrade\\": \\"supported\\",\\n \\"MemoryOnlineUpgrade\\": \\"unsupported\\",\\n \\"MemoryOnlineDowngrade\\": \\"unsupported\\"\\n },\\n \\"LicenseType\\": \\"BYOL\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceAttachmentAttributes' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28945', 'abilityTreeNodes' => ['FEATUREecsQDYV10'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the elasticity assurance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of the instances. The value can be a JSON array that consists of up to 100 instance IDs. Separate the IDs with commas (,).', 'type' => 'string', 'required' => true, 'example' => '["i-bp67acfmxazb4****", "i-bp67acfmxazb5****", "i-bp67acfmxazb6****"]', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Page starts from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Instances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Instance' => [ 'description' => 'The information about the association between private pools and instances.', 'type' => 'array', 'items' => [ 'description' => 'The information about the association between the private pool and the instance.', 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The ID of the instance.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4****', 'title' => ''], 'PrivatePoolOptionsMatchCriteria' => ['description' => 'The match mode of the private pool. Valid values:'."\n" ."\n" .'- Open: open private pool. Instances automatically match an open private pool.'."\n" ."\n" .'- Target: specified private pool. Instances match a specified private pool.'."\n" ."\n" .'- None: no private pool. Instances do not use private pools.', 'type' => 'string', 'example' => 'Open', 'title' => ''], 'PrivatePoolOptionsId' => ['description' => 'The ID of the private pool. If the value of `PrivatePoolOptionsMatchCriteria` is `Open`, the value of PrivatePoolOptionsId is the ID of the private pool that is automatically matched to the instance.', 'type' => 'string', 'example' => 'eap-bp67acfmxazb4****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'DedicatedHostNotSupported', 'errorMessage' => 'DedicatedHost is not supported for PrivatePool.', 'description' => 'The private pool does not support dedicated hosts.'], ['errorCode' => 'SpotNotSupported', 'errorMessage' => 'Spot is not supported for PrivatePool.', 'description' => 'The private pool does not support spot instances.'], ['errorCode' => 'ClassicNetworkNotSupported', 'errorMessage' => 'Classic network is not supported for PrivatePool.', 'description' => 'The private pool does not support instances in the classic network.'], ['errorCode' => 'Invalid.InstanceId', 'errorMessage' => 'Instance does not exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Invalid.PrivatePoolOptions.MatchCriteria', 'errorMessage' => 'Target mode does not support this operation.', 'description' => 'The operation is not supported while the PrivatePoolOptions.MatchCriteria parameter is set to Target.'], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Id', 'errorMessage' => 'The specified PrivatePoolOptions.Id should not be null.', 'description' => 'The PrivatePoolOptions.Id parameter is required.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Id', 'errorMessage' => 'The PrivatePool does not exist.', 'description' => 'The private pool does not exist.'], ['errorCode' => 'Invalid.InstanceType', 'errorMessage' => 'The InstanceType does not match the PrivatePool.', 'description' => 'The instance type and the private pool do not match.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The InstanceChargeType does not match the PrivatePool.', 'description' => 'The instance billing method and the private pool do not match.'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The ZoneId does not match the PrivatePool.', 'description' => 'The zone and the private pool do not match.'], ['errorCode' => 'Invalid.PrivatePoolOptions.status', 'errorMessage' => 'The PrivatePool has been used up.', 'description' => 'The resource is exhausted.'], ['errorCode' => 'InvalidPlatform.ValueNotSupported', 'errorMessage' => 'The Platform does not match the PrivatePool.', 'description' => 'The specified Platform parameter does not match the private pool.'], ['errorCode' => 'InvalidAliUid', 'errorMessage' => 'The PrivatePool does not belong to the user of the Instance.', 'description' => 'The specified private pool does not belong to the user who attempted to create the instance.'], ['errorCode' => 'MissingParameter.PackageType', 'errorMessage' => 'The specified parameter "PackageType" can not be empty.', 'description' => ''], ['errorCode' => 'MissingParameter.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" can not be empty.', 'description' => 'Specifies that the parameter "PrivatePoolOptions.ids" cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" can not be empty.', 'description' => 'The specified parameter \'InstanceCpuCocount\' cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceAmount', 'errorMessage' => 'The specified parameter "InstanceAmount" can not be empty.', 'description' => 'The specified parameter InstanceAmount cannot be empty.'], ['errorCode' => 'MissingParameter.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'The specified parameter "InstanceCpuCoreCount" and "InstanceAmount" must not be empty at the same time.', 'description' => 'The specified parameter InstanceCpuCoreCount and InstanceAmount cannot be both empty.'], ['errorCode' => 'Invalid.TooManyPrivatePoolOptions.Ids', 'errorMessage' => 'Too many PrivatePoolOptions.Ids in this request.', 'description' => 'The number of specified private pool IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyZoneIds', 'errorMessage' => 'Too many ZoneIds in the request.', 'description' => 'The number of specified zone IDs exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyInstanceTypes', 'errorMessage' => 'Too many InstanceTypes in the request.', 'description' => 'The number of specified instance types exceeds the upper limit.'], ['errorCode' => 'Invalid.TooManyUnpaidPrivatePool', 'errorMessage' => 'Too many PrivatePools create but still unpaid.', 'description' => 'Multiple private pools are created but not paid.'], ['errorCode' => 'Invalid.InstanceCpuCoreCountOrInstanceAmount', 'errorMessage' => 'Both InstanceCpuCoreCount and InstanceAmount are provided.', 'description' => 'The InstanceCpuCoreCount and InstanceAmount parameters cannot be both specified.'], ['errorCode' => 'Invalid.PrivatePoolOptions.Ids', 'errorMessage' => 'The specified parameter "PrivatePoolOptions.Ids" exist invalid element Id.', 'description' => 'The specified private pool ID does not exist.'], ['errorCode' => 'Invalid.PackageType', 'errorMessage' => 'The specified parameter "PackageType" is invalid.', 'description' => 'The specified parameter PackageType is invalid.'], ['errorCode' => 'Invalid.PrivatePool.Purchase', 'errorMessage' => 'The PrivatePool has already paid.', 'description' => 'The private pool is already paid.'], ['errorCode' => 'Invalid.AssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'RepeatStartPrivatePool', 'errorMessage' => 'PrivatePool has already been started.', 'description' => 'The private pool is already started.'], ], 403 => [ ['errorCode' => 'InvalidParameter.TooManyInstanceIds', 'errorMessage' => 'Instance ids cannot be more than 100.', 'description' => 'InstanceIds cannot be more than 100.'], ['errorCode' => 'Abs.InvalidInstanceIds.MalFormed', 'errorMessage' => 'The specified InstanceIds is not valid.', 'description' => 'The specified InstanceIds is not valid.'], ], [ ['errorCode' => 'InvalidInstanceIds.NotFound', 'errorMessage' => 'The specified InstanceIds does not exist.', 'description' => 'The specified InstanceId parameter does not exist. You can call the DescribeInstances operation to query the state of the instance.'], ], 500 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Invalid parameters.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'DescribeInstanceAttachmentAttributes', 'summary' => 'Queries the information about the private pools that Elastic Compute Service (ECS) instances match.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'After an elasticity assurance or a capacity reservation is created, a private pool is generated and associated with information about the instances that are created by using the private pool. You can specify a private pool when you create an instance. This way, the instance matches the elasticity assurance or capacity reservation that is associated with the private pool.'."\n" ."\n" .'When a private pool expires, data related to the association between instances and the private pool becomes invalid. If you call this operation to query information about the private pool, empty values are returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceAttachmentAttributes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceAttachmentAttributes', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"Instances\\": {\\n \\"Instance\\": [\\n {\\n \\"InstanceId\\": \\"i-bp67acfmxazb4****\\",\\n \\"PrivatePoolOptionsMatchCriteria\\": \\"Open\\",\\n \\"PrivatePoolOptionsId\\": \\"eap-bp67acfmxazb4****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceAttribute' => [ 'summary' => 'Queries the attribute information of a specified ECS instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28946', 'abilityTreeNodes' => ['FEATUREecsQDYV10'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'i-uf6f5trc95ug8t33****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The instance status. Valid values:'."\n" ."\n" .'- Pending: being created.'."\n" .'- Running: running.'."\n" .'- Starting: being started.'."\n" .'- Stopping: being stopped.'."\n" .'- Stopped: stopped.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'SerialNumber' => ['description' => 'The serial number of the instance.', 'type' => 'string', 'example' => '51d1353b-22bf-4567-a176-8b3e12e4****', 'title' => ''], 'CreationTime' => ['description' => 'The time when the instance was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'example' => '2017-12-10T04:04Z', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'Description' => ['description' => 'The description of the instance.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'InstanceName' => ['description' => 'Instance name', 'type' => 'string', 'example' => 'testInstanceName', 'title' => ''], 'InstanceNetworkType' => ['description' => 'The network type of the instance. Valid values: '."\n" .' '."\n" .'- vpc: virtual private cloud (VPC).'."\n" .'- classic: classic network. The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'Memory' => ['description' => 'The memory size. Unit: MiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '16384', 'title' => ''], 'ImageId' => ['description' => 'The ID of the image that the instance is running.', 'type' => 'string', 'example' => 'm-bp1h46wfpjsjastc****', 'title' => ''], 'ClusterId' => ['description' => 'The ID of the cluster to which the instance belongs.'."\n" .'> This parameter will be deprecated soon. To ensure future compatibility, use other parameters.', 'type' => 'string', 'example' => 'cls-bp67acfmxazb4p****', 'title' => ''], 'VlanId' => ['description' => 'The VLAN ID of the instance.'."\n" .'> This parameter will be deprecated soon. To ensure future compatibility, use other parameters.', 'type' => 'string', 'example' => '10', 'title' => ''], 'StoppedMode' => ['description' => 'Indicates whether the instance continues to be billed after it is stopped. Valid values:'."\n" ."\n" .'- KeepCharging: The instance continues to be billed after it is stopped. Inventory resources are reserved for the instance.'."\n" .'- StopCharging: The instance is not billed after it is stopped. After the instance is stopped, its resources such as vCPUs, memory, and public IP addresses are released. Whether the instance can be restarted depends on resource availability in the current region.'."\n" .'- Not-applicable: The instance does not support the No Fees for Stopped Instances feature.', 'type' => 'string', 'example' => 'KeepCharging', 'title' => ''], 'HostName' => ['description' => 'The hostname of the instance.', 'type' => 'string', 'example' => 'testHostName', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-uf6f5trc95ug8t33****', 'title' => ''], 'InstanceType' => ['description' => 'The instance type of the instance.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'InternetMaxBandwidthIn' => ['description' => 'The maximum inbound public bandwidth. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'InternetMaxBandwidthOut' => ['description' => 'The maximum outbound public bandwidth. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the instance.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'InstanceChargeType' => ['description' => 'The billing method of the instance. Valid values:'."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''], 'IoOptimized' => ['description' => 'Indicates whether the instance is I/O optimized. Valid values:'."\n" ."\n" .'- optimized: I/O optimized.'."\n" ."\n" .'- none: not I/O optimized.', 'type' => 'string', 'example' => 'optimized', 'title' => ''], 'Cpu' => ['description' => 'The number of vCPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'ExpiredTime' => ['description' => 'The expiration time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'example' => '2017-12-10T04:04Z', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the instance.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'InternetChargeType' => ['description' => 'The billing method for public bandwidth. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.'."\n" ."\n" .'> In **pay-by-traffic** mode, the peak inbound and outbound bandwidths are used as upper limits for bandwidths and are not guaranteed. When resource contention occurs, the peak bandwidths may be limited. If your workloads require guaranteed bandwidth, use the **pay-by-bandwidth** mode.', 'type' => 'string', 'example' => 'PayByTraffic', 'title' => ''], 'CreditSpecification' => ['description' => 'The running mode of the burstable instance. Valid values:'."\n" ."\n" .'- Standard: standard mode. For more information about instance performance, see [Performance mode](~~59977#section-svb-w9d-dju~~). '."\n" .'- Unlimited: unlimited mode. For more information about instance performance, see [Performance mode](~~59977#section-svb-w9d-dju~~).', 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'SecurityGroupIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupId' => [ 'description' => 'The security groups to which the instance belongs.', 'type' => 'array', 'items' => ['description' => 'The security group to which the instance belongs.', 'type' => 'string', 'example' => 'sg-bp1fg655nh68xyz9i****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'PublicIpAddress' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'IpAddress' => [ 'description' => 'The list of public IP addresses of the instance.', 'type' => 'array', 'items' => ['description' => 'The public IP address of the instance.', 'type' => 'string', 'example' => '121.40.**.**', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InnerIpAddress' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'IpAddress' => [ 'description' => 'The list of internal network IP addresses of classic network type instances.'."\n" ."\n" .'> The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'array', 'items' => ['description' => 'The internal network IP address of the classic network type instance.', 'type' => 'string', 'example' => '192.168.**.**', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'VpcAttributes' => [ 'description' => 'The VPC attributes.', 'type' => 'object', 'properties' => [ 'VpcId' => ['description' => 'The VPC ID.', 'type' => 'string', 'example' => 'vpc-wz9e4e9pmbcnj6ki6****', 'title' => ''], 'NatIpAddress' => ['description' => 'The IP address of the cloud service, which is used for network communication between VPC-connected cloud services.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'VSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'example' => 'vsw-uf6ixacqz8osrwnqb****', 'title' => ''], 'PrivateIpAddress' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'IpAddress' => [ 'description' => 'The list of private IP addresses.', 'type' => 'array', 'items' => ['description' => 'The private IP address.', 'type' => 'string', 'example' => '192.168.**.**', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'EipAddress' => [ 'description' => 'The Elastic IP Address (EIP) binding information.', 'type' => 'object', 'properties' => [ 'InternetChargeType' => ['description' => 'The billing method for public bandwidth. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.'."\n" ."\n" .'> In **pay-by-traffic** mode, the peak inbound and outbound bandwidths are used as upper limits for bandwidths and are not guaranteed. When resource contention occurs, the peak bandwidths may be limited. If your workloads require guaranteed bandwidth, use the **pay-by-bandwidth** mode.', 'type' => 'string', 'example' => 'PayByTraffic', 'title' => ''], 'IpAddress' => ['description' => 'The EIP.', 'type' => 'string', 'example' => '30.21.**.**', 'title' => ''], 'Bandwidth' => ['description' => 'The public bandwidth limit of the EIP. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'AllocationId' => ['description' => 'The ID of the EIP.', 'type' => 'string', 'example' => 'eip-wz9uilio26dfscamm****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DedicatedHostAttribute' => [ 'description' => 'The dedicated host attributes, which consist of the dedicated host cluster ID (DedicatedHostClusterId), dedicated host ID (DedicatedHostId), and dedicated host name (DedicatedHostName).', 'type' => 'object', 'properties' => [ 'DedicatedHostName' => ['description' => 'The name of the dedicated host.', 'type' => 'string', 'example' => 'ecs-autoui-create-ddh-temp', 'title' => ''], 'DedicatedHostId' => ['description' => 'The ID of the dedicated host.', 'type' => 'string', 'example' => 'dh-2ze7qrzz6lvbfhr0****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'OperationLocks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LockReason' => [ 'description' => 'The list of lock reasons.', 'type' => 'array', 'items' => [ 'description' => 'The lock reason.', 'type' => 'object', 'properties' => [ 'LockReason' => ['description' => 'The lock reason. Valid values:'."\n" ."\n" .'- financial: locked due to overdue payment.'."\n" .'- security: locked for security reasons.'."\n" .'- Recycling: the spot instance is pending release.'."\n" .'- dedicatedhostfinancial: the ECS instance is locked because the dedicated host has an overdue payment.'."\n" .'- refunded: locked due to a refund.', 'type' => 'string', 'example' => 'financial', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'EnableJumboFrame' => ['description' => 'Indicates whether the Jumbo Frame feature is enabled for the ECS instance. Valid values:'."\n" ."\n" .'- true: enabled.'."\n" ."\n" .'- false: not enabled.'."\n" ."\n" .'For more information, see [ECS instance MTU](~~200512~~).', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnableNetworkEncryption' => ['description' => 'Indicates whether VPC network traffic encryption is enabled for the instance. Valid values:'."\n" ."\n" .'- true: enabled.'."\n" .'- false: not enabled.'."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'NetworkOptions' => [ 'description' => 'The network-related attributes.'."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'EnableJumboFrame' => ['description' => 'Indicates whether the Jumbo Frame feature is enabled for the instance. Valid values:'."\n" ."\n" .'- true: enabled.'."\n" ."\n" .'- false: not enabled.'."\n" ."\n" .'For more information, see [ECS instance MTU](~~200512~~).'."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnableNetworkEncryption' => ['description' => 'Indicates whether VPC network traffic encryption is enabled for the instance. Valid values:'."\n" ."\n" .'- true: enabled.'."\n" .'- false: not enabled.'."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'False', 'title' => ''], 'BandwidthWeighting' => [ 'description' => 'The bandwidth weight.'."\n" ."\n" .'Different instance types support different values. Call [DescribeInstanceTypes](~~2679699~~) to query the bandwidth weight values supported by the current instance type.', 'enumValueTitles' => ['Vpc-L1' => 'Vpc-L1', 'Vpc-L2' => 'Vpc-L2', 'Ebs-L1' => 'Ebs-L1', 'Ebs-L2' => 'Ebs-L2', 'Default' => 'Default'], 'type' => 'string', 'example' => 'Vpc-L1', 'title' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Running\\",\\n \\"SerialNumber\\": \\"51d1353b-22bf-4567-a176-8b3e12e4****\\",\\n \\"CreationTime\\": \\"2017-12-10T04:04Z\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Description\\": \\"testDescription\\",\\n \\"InstanceName\\": \\"testInstanceName\\",\\n \\"InstanceNetworkType\\": \\"vpc\\",\\n \\"Memory\\": 16384,\\n \\"ImageId\\": \\"m-bp1h46wfpjsjastc****\\",\\n \\"ClusterId\\": \\"cls-bp67acfmxazb4p****\\",\\n \\"VlanId\\": \\"10\\",\\n \\"StoppedMode\\": \\"KeepCharging\\",\\n \\"HostName\\": \\"testHostName\\",\\n \\"InstanceId\\": \\"i-uf6f5trc95ug8t33****\\",\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"InternetMaxBandwidthIn\\": 50,\\n \\"InternetMaxBandwidthOut\\": 5,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceChargeType\\": \\"PrePaid\\",\\n \\"IoOptimized\\": \\"optimized\\",\\n \\"Cpu\\": 8,\\n \\"ExpiredTime\\": \\"2017-12-10T04:04Z\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"CreditSpecification\\": \\"Standard\\",\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-bp1fg655nh68xyz9i****\\"\\n ]\\n },\\n \\"PublicIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"121.40.**.**\\"\\n ]\\n },\\n \\"InnerIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"192.168.**.**\\"\\n ]\\n },\\n \\"VpcAttributes\\": {\\n \\"VpcId\\": \\"vpc-wz9e4e9pmbcnj6ki6****\\",\\n \\"NatIpAddress\\": \\"172.17.**.**\\",\\n \\"VSwitchId\\": \\"vsw-uf6ixacqz8osrwnqb****\\",\\n \\"PrivateIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"192.168.**.**\\"\\n ]\\n }\\n },\\n \\"EipAddress\\": {\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"IpAddress\\": \\"30.21.**.**\\",\\n \\"Bandwidth\\": 8,\\n \\"AllocationId\\": \\"eip-wz9uilio26dfscamm****\\"\\n },\\n \\"DedicatedHostAttribute\\": {\\n \\"DedicatedHostName\\": \\"ecs-autoui-create-ddh-temp\\",\\n \\"DedicatedHostId\\": \\"dh-2ze7qrzz6lvbfhr0****\\"\\n },\\n \\"OperationLocks\\": {\\n \\"LockReason\\": [\\n {\\n \\"LockReason\\": \\"financial\\"\\n }\\n ]\\n },\\n \\"EnableJumboFrame\\": false,\\n \\"EnableNetworkEncryption\\": true,\\n \\"NetworkOptions\\": {\\n \\"EnableJumboFrame\\": false,\\n \\"EnableNetworkEncryption\\": true,\\n \\"BandwidthWeighting\\": \\"Vpc-L1\\"\\n }\\n}","type":"json"}]', 'title' => 'Query instance attributes', 'changeSet' => [ ['createdAt' => '2025-07-28T06:39:40.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-05-29T02:05:53.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-04-11T10:31:05.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-28T05:42:53.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceAttribute'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'DescribeInstanceAutoRenewAttribute' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28947', 'abilityTreeNodes' => ['FEATUREecsQDYV10'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance IDs. You can specify up to 100 subscription instances at a time. Separate multiple instance IDs with commas.'."\n" ."\n" .'> You must specify either `InstanceId` or `RenewalStatus`.', 'type' => 'string', 'required' => false, 'example' => 'i-bp18x3z4hc7bixhx****,i-bp1g6zv0ce8oghu7****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RenewalStatus', 'in' => 'query', 'schema' => ['description' => 'The auto-renewal status of the instance. Valid values:'."\n" ."\n" .'- AutoRenewal: Auto-renewal is enabled.'."\n" ."\n" .'- Normal: Auto-renewal is disabled.'."\n" ."\n" .'- NotRenewal: The instance will not be renewed. The system does not send expiration reminders but sends a non-renewal reminder three days before the expiration date. To renew an ECS instance with this status, you must first call [ModifyInstanceAutoRenewAttribute](~~52843~~) to change its status to `Normal`. You can then manually renew the instance or enable auto-renewal.', 'type' => 'string', 'required' => false, 'example' => 'AutoRenewal', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'string', 'required' => false, 'pattern' => '^\\d+$', 'example' => '10', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The number of the page to return.'."\n" ."\n" .'Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'string', 'required' => false, 'pattern' => '^\\d+$', 'example' => '1', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances that are returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '6', 'title' => ''], 'InstanceRenewAttributes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceRenewAttribute' => [ 'description' => 'An array of `InstanceRenewAttribute` objects.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PeriodUnit' => ['description' => 'The unit of the auto-renewal duration.', 'type' => 'string', 'example' => 'week', 'title' => ''], 'Duration' => ['description' => 'The auto-renewal duration.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RenewalStatus' => ['description' => 'The auto-renewal status of the instance. Valid values:'."\n" ."\n" .'- AutoRenewal: The instance is configured for automatic renewal.'."\n" ."\n" .'- Normal: Automatic renewal is disabled. You can manually renew the instance or enable auto-renewal.'."\n" ."\n" .'- NotRenewal: The instance will not be renewed. The system does not send expiration notifications, but sends a non-renewal notification three days before the expiration date. To enable renewal for an ECS instance with this status, you must first call [ModifyInstanceAutoRenewAttribute](~~52843~~) to change its status to `Normal`. You can then manually renew the instance or enable auto-renewal.', 'type' => 'string', 'example' => 'Normal', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp18x3z4hc7bixhx****', 'title' => ''], 'AutoRenewEnabled' => ['description' => 'Indicates whether auto-renewal is enabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnableExpectedRenewDay' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => 'The auto-renewal attributes of the instances.', 'title' => '', 'example' => '', ], ], 'description' => 'The response body.', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ], 403 => [ ['errorCode' => 'MissingParameter.InstanceId', 'errorMessage' => 'InstanceId should not be null.', 'description' => 'The InstanceId parameter is required.'], ['errorCode' => 'InvalidParameter.ToManyInstanceIds', 'errorMessage' => 'InstanceId should be less than 100.', 'description' => ''], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'ChargeTypeViolation', 'errorMessage' => 'Pay-As-You-Go instances do not support this operation.', 'description' => 'The operation is not supported by pay-as-you-go instances. Check the billing method of the instance.'], ['errorCode' => 'InvalidParameter.RenewalStatus', 'errorMessage' => 'The specified parameter RenewalStatus is not valid.', 'description' => 'The specified RenewalStatus parameter is invalid.'], ['errorCode' => 'InvalidParameter.RenewalStatusInstanceId', 'errorMessage' => 'The parameter RenewalStatus and InstanceId can not be both empty.', 'description' => 'The RenewalStatus and InstanceId parameters are required.'], ['errorCode' => 'InvalidParameter.PageSize', 'errorMessage' => 'The specified parameter PageSize is not valid.', 'description' => 'The PageSize parameter is invalid.'], ['errorCode' => 'InvalidParameter.PageNumber', 'errorMessage' => 'The specified parameter PageNumber is not valid.', 'description' => 'The specified PageNumber parameter is invalid.'], ['errorCode' => 'InvalidParameter.InvalidInstanceId', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified InstanceId does not exist.'], ], ], 'title' => 'DescribeInstanceAutoRenewAttribute', 'summary' => 'This API returns the auto-renewal status and renewal period for one or more subscription ECS instances.', 'description' => '- This API supports only subscription instances. Calling this API for a pay-as-you-go instance returns an error.'."\n" ."\n" .'- Before you configure auto-renewal or manual renewal for an instance, query its renewal status to check if auto-renewal is already enabled.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-03-11T06:55:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-11-04T12:23:32.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceAutoRenewAttribute'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceAutoRenewAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 6,\\n \\"InstanceRenewAttributes\\": {\\n \\"InstanceRenewAttribute\\": [\\n {\\n \\"PeriodUnit\\": \\"week\\",\\n \\"Duration\\": 1,\\n \\"RenewalStatus\\": \\"Normal\\",\\n \\"InstanceId\\": \\"i-bp18x3z4hc7bixhx****\\",\\n \\"AutoRenewEnabled\\": false,\\n \\"EnableExpectedRenewDay\\": false\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceHistoryEvents' => [ 'summary' => 'Queries system event information for a specified instance by calling the DescribeInstanceHistoryEvents operation. You can specify parameters such as InstanceId and EventType. By default, this operation queries historical system events in inactive states.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29280', 'abilityTreeNodes' => ['FEATUREecsBUZW7T'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the resource. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. If you do not specify an instance ID, the system events of all instances in the specified region are queried.', 'type' => 'string', 'required' => false, 'example' => 'i-uf678mass4zvr9n1****', 'title' => ''], ], [ 'name' => 'EventCycleStatus', 'in' => 'query', 'schema' => ['description' => 'The lifecycle status of the system event. EventCycleStatus takes effect only when InstanceEventCycleStatus.N is not specified. Valid values: '."\n" ."\n" .'- Scheduled: The event is waiting to be executed.'."\n" .'- Avoided: The event has been avoided.'."\n" .'- Executing: The event is being executed.'."\n" .'- Executed: The event has been executed.'."\n" .'- Canceled: The event has been canceled.'."\n" .'- Failed: The event execution failed.'."\n" .'- Inquiring: The event is being inquired.', 'type' => 'string', 'required' => false, 'example' => 'Executed', 'title' => ''], ], [ 'name' => 'EventType', 'in' => 'query', 'schema' => ['description' => 'The type of the system event. EventType takes effect only when InstanceEventType.N is not specified. Valid values: '."\n" ."\n" .'- SystemMaintenance.Reboot: The instance is restarted due to system maintenance.'."\n" .'- SystemMaintenance.Redeploy: The instance is redeployed due to system maintenance.'."\n" .'- SystemFailure.Reboot: The instance is restarted due to a system error.'."\n" .'- SystemFailure.Redeploy: The instance is redeployed due to a system error.'."\n" .'- SystemFailure.Delete: The instance is released due to an instance creation failure.'."\n" .'- InstanceFailure.Reboot: The instance is restarted due to an instance error.'."\n" .'- InstanceExpiration.Stop: The instance is stopped due to subscription expiration.'."\n" .'- InstanceExpiration.Delete: The instance is released due to subscription expiration.'."\n" .'- AccountUnbalanced.Stop: The pay-as-you-go instance is stopped due to an overdue payment.'."\n" .'- AccountUnbalanced.Delete: The pay-as-you-go instance is released due to an overdue payment.'."\n" ."\n" .'> For more information about event types, see [System event overview](~~66574~~). The value of this parameter must be an instance system event, not a disk system event.', 'type' => 'string', 'required' => false, 'example' => 'SystemMaintenance.Reboot', 'title' => ''], ], [ 'name' => 'NotBefore.Start', 'in' => 'query', 'schema' => ['description' => 'The start of the time range during which the system event is scheduled to execute. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-11-30T06:32:31Z', 'title' => ''], ], [ 'name' => 'NotBefore.End', 'in' => 'query', 'schema' => ['description' => 'The end of the time range during which the system event is scheduled to execute. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-12-01T06:32:31Z', 'title' => ''], ], [ 'name' => 'EventPublishTime.Start', 'in' => 'query', 'schema' => ['description' => 'The start of the time range during which the system event is published. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-11-30T06:32:31Z', 'title' => ''], ], [ 'name' => 'EventPublishTime.End', 'in' => 'query', 'schema' => ['description' => 'The end of the time range during which the system event is published. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-12-01T06:32:31Z', 'title' => ''], ], [ 'name' => 'ImpactLevel', 'in' => 'query', 'schema' => ['description' => '> This parameter is not yet available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter will be deprecated. Use MaxResults or NextToken for paginated queries instead.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter will be deprecated. Use MaxResults or NextToken for paginated queries instead.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- instance: ECS instance.'."\n" .'- ddh: dedicated host.'."\n" .'- managedhost: physical machine in an intelligent fully managed resource pool.'."\n" ."\n" .'Default value: instance.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'EventId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more system event IDs. Valid values of N: 1 to 100. Specify multiple values in a repeated list format.', 'type' => 'array', 'items' => ['description' => 'One or more system event IDs. Valid values of N: 1 to 100. Specify multiple values in a repeated list format.', 'type' => 'string', 'required' => false, 'example' => 'e-uf64yvznlao4jl2c****', 'title' => ''], 'required' => false, 'example' => 'e-uf64yvznlao4jl2c****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'InstanceEventCycleStatus', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more lifecycle statuses of the system event. Valid values of N: 1 to 7. Specify multiple values in a repeated list format. Valid values:'."\n" ."\n" .'- Scheduled: The event is waiting to be executed.'."\n" .'- Avoided: The event has been avoided.'."\n" .'- Executing: The event is being executed.'."\n" .'- Executed: The event has been executed.'."\n" .'- Canceled: The event has been canceled.'."\n" .'- Failed: The event execution failed.'."\n" .'- Inquiring: The event is being inquired.', 'type' => 'array', 'items' => ['description' => 'One or more lifecycle statuses of the system event. Valid values of N: 1 to 7. Specify multiple values in a repeated list format. Valid values:'."\n" ."\n" .'- Scheduled: The event is waiting to be executed.'."\n" .'- Avoided: The event has been avoided.'."\n" .'- Executing: The event is being executed.'."\n" .'- Executed: The event has been executed.'."\n" .'- Canceled: The event has been canceled.'."\n" .'- Failed: The event execution failed.'."\n" .'- Inquiring: The event is being inquired.', 'type' => 'string', 'required' => false, 'example' => 'Executed', 'title' => ''], 'required' => false, 'example' => 'Executed', 'maxItems' => 10, 'title' => '', ], ], [ 'name' => 'InstanceEventType', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more types of the system event. Valid values of N: 1 to 30. Specify multiple values in a repeated list format. Valid values:'."\n" ."\n" .'- SystemMaintenance.Reboot: The instance is restarted due to system maintenance.'."\n" .'- SystemMaintenance.Redeploy: The instance is redeployed due to system maintenance.'."\n" .'- SystemFailure.Reboot: The instance is restarted due to a system error.'."\n" .'- SystemFailure.Redeploy: The instance is redeployed due to a system error.'."\n" .'- SystemFailure.Delete: The instance is released due to an instance creation failure.'."\n" .'- InstanceFailure.Reboot: The instance is restarted due to an instance error.'."\n" .'- InstanceExpiration.Stop: The instance is stopped due to subscription expiration.'."\n" .'- InstanceExpiration.Delete: The instance is released due to subscription expiration.'."\n" .'- AccountUnbalanced.Stop: The pay-as-you-go instance is stopped due to an overdue payment.'."\n" .'- AccountUnbalanced.Delete: The pay-as-you-go instance is released due to an overdue payment.'."\n" ."\n" .'> For more information about event types, see [System event overview](~~66574~~). The value of this parameter must be an instance system event, not a disk system event.', 'type' => 'array', 'items' => ['description' => 'One or more types of the system event. Valid values of N: 1 to 30. Specify multiple values in a repeated list format. Valid values:'."\n" ."\n" .'- SystemMaintenance.Reboot: The instance is restarted due to system maintenance.'."\n" .'- SystemMaintenance.Redeploy: The instance is redeployed due to system maintenance.'."\n" .'- SystemFailure.Reboot: The instance is restarted due to a system error.'."\n" .'- SystemFailure.Redeploy: The instance is redeployed due to a system error.'."\n" .'- SystemFailure.Delete: The instance is released due to an instance creation failure.'."\n" .'- InstanceFailure.Reboot: The instance is restarted due to an instance error.'."\n" .'- InstanceExpiration.Stop: The instance is stopped due to subscription expiration.'."\n" .'- InstanceExpiration.Delete: The instance is released due to subscription expiration.'."\n" .'- AccountUnbalanced.Stop: The pay-as-you-go instance is stopped due to an overdue payment.'."\n" .'- AccountUnbalanced.Delete: The pay-as-you-go instance is released due to an overdue payment.'."\n" ."\n" .'> For more information about event types, see [System event overview](~~66574~~). The value of this parameter must be an instance system event, not a disk system event.', 'type' => 'string', 'required' => false, 'example' => 'SystemMaintenance.Reboot', 'title' => ''], 'required' => false, 'example' => 'SystemMaintenance.Reboot', 'maxItems' => 30, 'title' => '', ], ], [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more resource IDs. Valid values of N: 1 to 100. Specify multiple values in a repeated list format. Valid values:'."\n" ."\n" .'- When `ResourceType=instance`, the resource ID is the ECS instance ID.'."\n" .'- When `ResourceType=ddh`, the resource ID is the dedicated host ID.'."\n" .'- When `ResourceType=managedhost`, the resource ID is the physical machine ID in an intelligent fully managed resource pool.'."\n" ."\n" .'If you do not specify this parameter, the system events of all resources of the specified resource type (`ResourceType`) in the specified region (`RegionId`) are queried.'."\n" ."\n" .'> Use `ResourceId.N` to specify one or more resource IDs. If you specify both `ResourceId.N` and `InstanceId`, `ResourceId.N` takes precedence by default.', 'type' => 'array', 'items' => ['description' => 'One or more resource IDs. Valid values of N: 1 to 100. Specify multiple values in a repeated list format. Valid values:'."\n" ."\n" .'- When `ResourceType=instance`, the resource ID is the ECS instance ID.'."\n" .'- When `ResourceType=ddh`, the resource ID is the dedicated host ID.'."\n" .'- When `ResourceType=managedhost`, the resource ID is the physical machine ID in an intelligent fully managed resource pool.'."\n" ."\n" .'If you do not specify this parameter, the system events of all resources of the specified resource type (`ResourceType`) in the specified region (`RegionId`) are queried.'."\n" ."\n" .'> Use `ResourceId.N` to specify one or more resource IDs. If you specify both `ResourceId.N` and `InstanceId`, `ResourceId.N` takes precedence by default.', 'type' => 'string', 'required' => false, 'example' => 'i-uf678mass4zvr9n1****', 'title' => ''], 'required' => false, 'example' => 'i-uf678mass4zvr9n1****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags supported by system events.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags supported by system events.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the resource.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the resource.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the resource belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'f1c9fa9de5752***', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for a paging query. Valid values: 10 to 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'* When the settings value is greater than 0 but less than 10, the default value is 10.'."\n" .'* When the settings value is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '100', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The system event information of the queried instance.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page as specified in the request.'."\n" ."\n" .'> * When you use MaxResults and NextToken parameters for paging query, the returned PageSize parameter value is meaningless.'."\n" .'> * This parameter will be deprecated. Use NextToken and MaxResults for paging query instead.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the instance event list.'."\n" ."\n" .'> * When you use MaxResults and NextToken parameters for paging query, the returned PageNumber parameter value is meaningless.'."\n" .'> * This parameter will be deprecated. Use NextToken and MaxResults for paging query instead.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instance events.'."\n" ."\n" .'> When you use MaxResults and NextToken parameters for paging query, the returned TotalCount parameter value is meaningless.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'InstanceSystemEventSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceSystemEventType' => [ 'description' => 'The array of historical instance system events.', 'type' => 'array', 'items' => [ 'description' => 'The historical instance system event.', 'type' => 'object', 'properties' => [ 'EventId' => ['description' => 'The system event ID.', 'type' => 'string', 'example' => 'e-uf64yvznlao4jl2c****', 'title' => ''], 'EventPublishTime' => ['description' => 'The time when the system event was published. The time is displayed in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC.', 'type' => 'string', 'example' => '2017-11-30T06:32:31Z', 'title' => ''], 'EventFinishTime' => ['description' => 'The time when the system event ended. The time is displayed in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC.', 'type' => 'string', 'example' => '2017-12-01T06:35:31Z', 'title' => ''], 'ResourceType' => ['description' => 'The type of the resource. Valid values:'."\n" ."\n" .'- instance: ECS instance.'."\n" .'- ddh: dedicated host.'."\n" .'- managedhost: physical machine in an intelligent fully managed resource pool.', 'type' => 'string', 'example' => 'instance', 'title' => ''], 'ImpactLevel' => ['description' => 'The impact level.', 'type' => 'string', 'example' => '100', 'title' => ''], 'NotBefore' => ['description' => 'The scheduled execution time of the system event. The time is displayed in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC.', 'type' => 'string', 'example' => '2017-12-06T00:00:00Z', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-uf678mass4zvr9n1****', 'title' => ''], 'Reason' => ['description' => 'The reason why the system event occurred.', 'type' => 'string', 'example' => 'System maintenance is scheduled due to ***.', 'title' => ''], 'EventType' => [ 'description' => 'The event type of the system event.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the system event type.', 'type' => 'string', 'example' => 'InstanceExpiration.Stop', 'title' => ''], 'Code' => ['description' => 'The code of the system event type.', 'type' => 'integer', 'format' => 'int32', 'example' => '34', 'title' => ''], ], 'title' => '', 'example' => '', ], 'EventCycleStatus' => [ 'description' => 'The lifecycle status of the system event.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the system event status.', 'type' => 'string', 'example' => 'Executed', 'title' => ''], 'Code' => ['description' => 'The status code of the system event.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ExtendedAttribute' => [ 'description' => 'The extended attributes of the event.', 'type' => 'object', 'properties' => [ 'Device' => ['description' => 'The device name of the local disk.', 'type' => 'string', 'example' => '/dev/vda', 'title' => ''], 'DiskId' => ['description' => 'The ID of the local disk.', 'type' => 'string', 'example' => 'd-diskid1', 'title' => ''], 'InactiveDisks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InactiveDisk' => [ 'description' => 'The list of released but not yet cleaned up inactive cloud disks or local disks.', 'type' => 'array', 'items' => [ 'description' => 'The information about a released but not yet cleaned up inactive cloud disk or local disk.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the cloud disk or local disk was created. The time is displayed in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC.', 'type' => 'string', 'example' => '2018-11-30T06:32:31Z', 'title' => ''], 'DeviceSize' => ['description' => 'The size of the cloud disk or local disk. Unit: GiB.', 'type' => 'string', 'example' => '80', 'title' => ''], 'DeviceCategory' => ['description' => 'The category of the cloud disk or local disk. Valid values:'."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD.'."\n" .'- local_ssd_pro: I/O-intensive local disk.'."\n" .'- local_hdd_pro: throughput-intensive local disk.'."\n" .'- ephemeral: (retired) local disk.'."\n" .'- ephemeral_ssd: (retired) local SSD.', 'type' => 'string', 'example' => 'cloud_efficiency', 'title' => ''], 'DeviceType' => ['description' => 'The type of the cloud disk or local disk. Valid values:'."\n" .'- system: system disk.'."\n" .'- data: data disk.', 'type' => 'string', 'example' => 'data', 'title' => ''], 'ReleaseTime' => ['description' => 'The time when the cloud disk or local disk was released. The time is displayed in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is in UTC.', 'type' => 'string', 'example' => '2019-11-30T06:32:31Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'HostType' => ['description' => 'The type of the host. Valid values:'."\n" ."\n" .'- ddh: dedicated host.'."\n" .'- managedhost: physical machine in an intelligent fully managed resource pool.', 'type' => 'string', 'example' => 'ddh', 'title' => ''], 'HostId' => ['description' => 'The host ID.', 'type' => 'string', 'example' => 'dh-bp1ewce1gk3iwv2****', 'title' => ''], 'MigrationOptions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'MigrationOption' => [ 'description' => 'The instance migration options. Currently, only MigrationOptions (migration by using a migration plan) is supported.', 'type' => 'array', 'items' => ['description' => 'The instance migration option. Currently, only MigrationPlan (migration by using a migration plan) is supported.', 'type' => 'string', 'example' => 'MigrationPlan', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'OnlineRepairPolicy' => ['description' => 'The online repair policy for damaged cloud disks. Valid values: IsolateOnly, which indicates that only isolating the damaged disk is supported and repairing the damaged disk is not supported.', 'type' => 'string', 'example' => 'IsolateOnly', 'title' => ''], 'Rack' => ['description' => 'The rack number of the CloudBox.', 'type' => 'string', 'example' => 'A01', 'title' => ''], 'PunishType' => ['description' => 'The penalty type.', 'type' => 'string', 'example' => 'ecs_message_alert', 'title' => ''], 'PunishDomain' => ['description' => 'The domain name that violated security policies.', 'type' => 'string', 'example' => '1228.test.com', 'title' => ''], 'PunishUrl' => ['description' => 'The URL that violated security policies.', 'type' => 'string', 'example' => 'http://1228.test.com/1', 'title' => ''], 'Code' => ['description' => 'The security violation code.', 'type' => 'string', 'example' => 'PR111', 'title' => ''], 'CanAccept' => ['description' => 'Indicates whether the event can be handled.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'ResponseResult' => ['description' => 'The event response result. Valid values:'."\n" .'- true: The event response succeeded. '."\n" .'- false: The event response failed.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'MetricValue' => ['description' => 'The metric value.', 'type' => 'string', 'example' => '18000', 'title' => ''], 'MetricName' => ['description' => 'The metric name.', 'type' => 'string', 'example' => 'in_mbps', 'title' => ''], 'InitialNotBefore' => ['title' => '', 'description' => 'The initial scheduled execution time of the system event.', 'type' => 'string', 'example' => '2026-06-22T00:00:00Z'], ], 'title' => '', 'example' => '', ], 'ReasonCode' => ['description' => 'The category code of the reason why the system event occurred.', 'type' => 'string', 'example' => 'VPCMigrationEcs', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'The query token returned in this invocation.'."\n" .'> When you use MaxResults and NextToken parameters for paging query and no NextToken is returned, no more data is available.', 'type' => 'string', 'example' => 'f1c9fa9de5752***', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'EventIdLimitExceeded', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.TimeEndBeforeStart', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Make sure that the end time is later than the start time.'], ['errorCode' => 'OperationDenied.NotInWhiteList', 'errorMessage' => '%s', 'description' => 'You are not authorized to perform this operation. Try again when you are authorized.'], ], [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"InstanceSystemEventSet\\": {\\n \\"InstanceSystemEventType\\": [\\n {\\n \\"EventId\\": \\"e-uf64yvznlao4jl2c****\\",\\n \\"EventPublishTime\\": \\"2017-11-30T06:32:31Z\\",\\n \\"EventFinishTime\\": \\"2017-12-01T06:35:31Z\\",\\n \\"ResourceType\\": \\"instance\\",\\n \\"ImpactLevel\\": \\"100\\",\\n \\"NotBefore\\": \\"2017-12-06T00:00:00Z\\",\\n \\"InstanceId\\": \\"i-uf678mass4zvr9n1****\\",\\n \\"Reason\\": \\"System maintenance is scheduled due to ***.\\",\\n \\"EventType\\": {\\n \\"Name\\": \\"InstanceExpiration.Stop\\",\\n \\"Code\\": 34\\n },\\n \\"EventCycleStatus\\": {\\n \\"Name\\": \\"Executed\\",\\n \\"Code\\": 0\\n },\\n \\"ExtendedAttribute\\": {\\n \\"Device\\": \\"/dev/vda\\",\\n \\"DiskId\\": \\"d-diskid1\\",\\n \\"InactiveDisks\\": {\\n \\"InactiveDisk\\": [\\n {\\n \\"CreationTime\\": \\"2018-11-30T06:32:31Z\\",\\n \\"DeviceSize\\": \\"80\\",\\n \\"DeviceCategory\\": \\"cloud_efficiency\\",\\n \\"DeviceType\\": \\"data\\",\\n \\"ReleaseTime\\": \\"2019-11-30T06:32:31Z\\"\\n }\\n ]\\n },\\n \\"HostType\\": \\"ddh\\",\\n \\"HostId\\": \\"dh-bp1ewce1gk3iwv2****\\",\\n \\"MigrationOptions\\": {\\n \\"MigrationOption\\": [\\n \\"MigrationPlan\\"\\n ]\\n },\\n \\"OnlineRepairPolicy\\": \\"IsolateOnly\\",\\n \\"Rack\\": \\"A01\\",\\n \\"PunishType\\": \\"ecs_message_alert\\",\\n \\"PunishDomain\\": \\"1228.test.com\\",\\n \\"PunishUrl\\": \\"http://1228.test.com/1\\",\\n \\"Code\\": \\"PR111\\",\\n \\"CanAccept\\": \\"true\\",\\n \\"ResponseResult\\": \\"true\\",\\n \\"MetricValue\\": \\"18000\\",\\n \\"MetricName\\": \\"in_mbps\\",\\n \\"InitialNotBefore\\": \\"2026-06-22T00:00:00Z\\"\\n },\\n \\"ReasonCode\\": \\"VPCMigrationEcs\\"\\n }\\n ]\\n },\\n \\"NextToken\\": \\"f1c9fa9de5752***\\"\\n}","type":"json"}]', 'title' => 'Query system events for a specified instance', 'description' => '- You can query completed historical system events from the last 30 days. There is no time limit for querying uncompleted system events.'."\n" ."\n" .'- If neither EventCycleStatus nor InstanceEventCycleStatus is specified, the query results include only system events in the Avoided, Executed, Canceled, and Failed states by default.'."\n" ."\n" .'- By specifying the InstanceEventCycleStatus parameter, you can also query system events in the Scheduled, Executing, and Inquiring states.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-09-18T09:46:16.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-11-13T03:33:32.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-08-12T08:22:56.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-07-13T08:28:07.000Z', 'description' => 'Response parameters changed, Response parameters changed'], ['createdAt' => '2022-02-22T03:51:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-02-22T03:51:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-06-23T02:56:36.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceHistoryEvents'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceHistoryEvents', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeInstanceMaintenanceAttributes' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28949', 'abilityTreeNodes' => ['FEATUREecsQDYV10'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance IDs. You can specify up to 100 instance IDs.', 'type' => 'array', 'items' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'i-bp67acfmxazb4p****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of queried maintenance attributes.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'MaintenanceAttributes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'MaintenanceAttribute' => [ 'description' => 'The maintenance attributes.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'NotifyOnMaintenance' => ['description' => 'Indicates whether an event notification was sent before maintenance.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'MaintenanceWindows' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'MaintenanceWindow' => [ 'description' => 'The maintenance windows.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'EndTime' => ['description' => 'The end time of the maintenance window.', 'type' => 'string', 'example' => '18:00:00', 'title' => ''], 'StartTime' => ['description' => 'The start time of the maintenance window.', 'type' => 'string', 'example' => '02:00:00', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'ActionOnMaintenance' => [ 'description' => 'The attributes of the maintenance action of the instance.', 'type' => 'object', 'properties' => [ 'DefaultValue' => ['description' => 'The default maintenance action.', 'type' => 'string', 'example' => 'AutoRecover', 'title' => ''], 'Value' => ['description' => 'The current maintenance action. Valid values:'."\n" ."\n" .'- Stop: stops the instance.'."\n" ."\n" .'- AutoRecover: automatically recovers the instance.'."\n" ."\n" .'- AutoRedeploy: redeploys the instance, which may damage the data disks attached to the instance.', 'type' => 'string', 'example' => 'Stop', 'title' => ''], 'SupportedValues' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedValue' => [ 'description' => 'The supported maintenance actions.', 'type' => 'array', 'items' => ['description' => 'The supported maintenance action.', 'type' => 'string', 'example' => 'Stop', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ], 403 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InstanceIdLimitExceeded', 'errorMessage' => '%s', 'description' => 'More than 100 instance IDs are specified.'], ['errorCode' => 'OperationDenied.NotInWhiteList', 'errorMessage' => '%s', 'description' => 'You are not authorized to perform this operation. Try again when you are authorized.'], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], ], 'title' => 'DescribeInstanceMaintenanceAttributes', 'summary' => 'Queries the maintenance attributes of an instance.', 'description' => 'This operation is used to query the specified maintenance policy of an instance, which contains the following maintenance attributes:'."\n" ."\n" .'- Maintenance window: the time period that you specify for maintenance.'."\n" ."\n" .'- Maintenance action: the action that you specify in response to instance shutdown.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceMaintenanceAttributes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceMaintenanceAttributes', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 100,\\n \\"MaintenanceAttributes\\": {\\n \\"MaintenanceAttribute\\": [\\n {\\n \\"NotifyOnMaintenance\\": false,\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"MaintenanceWindows\\": {\\n \\"MaintenanceWindow\\": [\\n {\\n \\"EndTime\\": \\"18:00:00\\",\\n \\"StartTime\\": \\"02:00:00\\"\\n }\\n ]\\n },\\n \\"ActionOnMaintenance\\": {\\n \\"DefaultValue\\": \\"AutoRecover\\",\\n \\"Value\\": \\"Stop\\",\\n \\"SupportedValues\\": {\\n \\"SupportedValue\\": [\\n \\"Stop\\"\\n ]\\n }\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceModificationPrice' => [ 'summary' => 'Retrieves the pricing for upgrading an active subscription ECS instance to a target instance type and for adding a subscription data disk.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28950', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance for which to query the modification price.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1f2o4ldh8l****', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The target instance type for the instance upgrade. Call the [DescribeResourcesModification](~~66187~~) operation to query the instance types available for upgrade in the specified availability zone.'."\n" ."\n" .'> You must specify at least one of the `InstanceType` and `DataDisk.N.*` parameters.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6e.large', 'title' => ''], ], [ 'name' => 'SystemDisk.Category', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. This parameter is required only when you upgrade a non-I/O optimized instance of a retired instance type to an I/O optimized instance of an available instance type. For more information about instance types, see [instance family](~~25378~~) and [retired instance types](~~55263~~).'."\n" ."\n" .'Valid values:'."\n" ."\n" .'- `cloud_efficiency`: Ultra Disk'."\n" ."\n" .'- `cloud_ssd`: Standard SSD'."\n" ."\n" .'Default value: None.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'SystemDisk', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'type' => 'object', 'properties' => [ 'Category' => ['type' => 'string', 'title' => '', 'description' => '', 'example' => ''], 'PerformanceLevel' => ['type' => 'string', 'example' => 'PL0', 'title' => '', 'description' => ''], 'Size' => ['type' => 'integer', 'format' => 'int32', 'example' => '40', 'title' => '', 'description' => ''], ], 'title' => '', 'description' => '', 'example' => '', ], ], [ 'name' => 'DataDisk', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The data disk configurations.', 'type' => 'array', 'items' => [ 'description' => 'The data disk configuration.', 'type' => 'object', 'properties' => [ 'PerformanceLevel' => ['description' => 'The performance level of the ESSD. This parameter is valid only when DataDisk.N.Category is set to cloud_essd. The value of N must match the N in DataDisk.N.Category. Valid values:'."\n" .'\\- PL0: up to 10,000 random read/write IOPS per disk.'."\n" .'\\- PL1: up to 50,000 random read/write IOPS per disk.'."\n" .'\\- PL2: up to 100,000 random read/write IOPS per disk.'."\n" .'\\- PL3: up to 1,000,000 random read/write IOPS per disk.'."\n" .'Default value: PL1.'."\n" .'For more information about ESSD performance levels, see [ESSDs](~~122389~~).', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], 'Size' => ['description' => 'The size of data disk N in GiB, where N is an integer from 1 to 16. The value range varies based on the disk category:'."\n" .'\\- `cloud_efficiency` (Ultra Disk): 20 to 32768.'."\n" .'\\- `cloud_ssd` (Standard SSD): 20 to 32768.'."\n" .'\\- `cloud_essd`: The value range varies based on the value of `DataDisk.N.PerformanceLevel`.'."\n" .'\\- PL0: 1 to 32768.'."\n" .'\\- PL1: 20 to 32768.'."\n" .'\\- PL2: 461 to 32768.'."\n" .'\\- PL3: 1261 to 32768.'."\n" .'\\- `cloud` (Basic Disk): 5 to 2000.'."\n" .'Default value: The minimum size supported by the specified data disk category.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''], 'Category' => ['description' => 'The category of data disk N, where N is an integer from 1 to 16. Use this parameter to query the price of adding a new data disk to the instance. Valid values:\\'."\n" .'\\'."\n" .'\\- `cloud_efficiency`: Ultra Disk\\'."\n" .'\\'."\n" .'\\- `cloud_ssd`: Standard SSD\\'."\n" .'\\'."\n" .'\\- `cloud_essd`: ESSD\\'."\n" .'\\'."\n" .'\\- `cloud`: Basic Disk\\'."\n" .'\\'."\n" .'Default value: None.\\'."\n" .'\\'."\n" .'\\'."\n" .'\\'."\n" .'\\'."\n" .'\\'."\n" .'\\'."\n" .'\\'."\n" .'\\'."\n" .'\\', 'type' => 'string', 'required' => false, 'example' => 'cloud_essd', 'title' => ''], 'DiskId' => ['type' => 'string', 'example' => 'd-bf4rupt9****', 'description' => '', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 16, 'title' => '', 'example' => '', ], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => 'aliyun_2_1903_x64_20G_alibase_20200324.vhd', 'title' => '', 'description' => ''], ], [ 'name' => 'InternetMaxBandwidthOut', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => '', 'description' => ''], ], [ 'name' => 'ISP', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => 'BGP', 'title' => '', 'description' => ''], ], [ 'name' => 'InternetChargeType', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => 'PayByTraffic', 'title' => '', 'description' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => '2025-12-05T22:40Z', 'title' => '', 'description' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['type' => 'string', 'example' => '2025-12-06T22Z', 'title' => '', 'description' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'A3DC3196-379B-4F32-A2C5-B937134FAD8A', 'title' => ''], 'PriceInfo' => [ 'description' => 'Price information, including price details and promotional rules.', 'type' => 'object', 'properties' => [ 'Rules' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Rule' => [ 'description' => 'A list of promotional rules.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description of the rule.', 'type' => 'string', 'example' => '升级优惠', 'title' => ''], 'RuleId' => ['description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Price' => [ 'description' => 'The price details.', 'type' => 'object', 'properties' => [ 'OriginalPrice' => ['description' => 'The original price.', 'type' => 'number', 'format' => 'float', 'example' => '175.200', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount amount.', 'type' => 'number', 'format' => 'float', 'example' => '61.320', 'title' => ''], 'Currency' => ['description' => 'The currency. Valid values:'."\n" ."\n" .'- `CNY`: For the China site.'."\n" ."\n" .'- `USD`: For the international site.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TradePrice' => ['description' => 'The final price (original price - discount).', 'type' => 'number', 'format' => 'float', 'example' => '113.880', 'title' => ''], 'DetailInfos' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DetailInfo' => [ 'description' => 'A list of price details for each resource in the configuration.'."\n" ."\n" .'> This parameter is returned only when `ResourceType` is set to `instance`.', 'type' => 'array', 'items' => [ 'description' => 'Price details for a single resource.', 'type' => 'object', 'properties' => [ 'Resource' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- `instanceType`: instance type'."\n" ."\n" .'- `bandwidth`: bandwidth'."\n" ."\n" .'- `image`: image'."\n" ."\n" .'- `systemDisk`: system disk'."\n" ."\n" .'- `dataDisk`: data disk', 'type' => 'string', 'example' => 'instanceType', 'title' => ''], 'OriginalPrice' => ['description' => 'The original price.', 'type' => 'number', 'format' => 'float', 'example' => '4368', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount amount.', 'type' => 'number', 'format' => 'float', 'example' => '655.2', 'title' => ''], 'TradePrice' => ['description' => 'The final price.', 'type' => 'number', 'format' => 'float', 'example' => '3712.8', 'title' => ''], 'SubRules' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Rule' => [ 'description' => 'Pricing rule subsets.', 'type' => 'array', 'items' => [ 'description' => 'A single pricing rule subset.', 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The rule subset description.', 'type' => 'string', 'example' => '买满1年,立享官网价格8.5折优惠', 'title' => ''], 'RuleId' => ['description' => 'The rule ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '315716429631488', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'RelatedPrice' => [ 'type' => 'object', 'properties' => [ 'MarketplaceImagePrice' => [ 'type' => 'object', 'properties' => [ 'Currency' => ['type' => 'string', 'example' => 'CNY', 'description' => '', 'title' => ''], 'OriginalPrice' => ['type' => 'number', 'format' => 'float', 'example' => '100', 'description' => '', 'title' => ''], 'DiscountPrice' => ['type' => 'number', 'format' => 'float', 'example' => '0', 'description' => '', 'title' => ''], 'TradePrice' => ['type' => 'number', 'format' => 'float', 'example' => '100', 'description' => '', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.InstanceTypeOrDataDisk', 'errorMessage' => 'You must specify the parameter InstanceType or DataDisk.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "SystemDisk.Category" is not valid.', 'description' => 'The specified parameter system disk specification is invalid.'], ['errorCode' => 'InvalidDiskCategory.Missing', 'errorMessage' => 'The DataDisk.1.Category parameter that is mandatory for processing the request is not provided.', 'description' => 'The mandatory parameter DataDiskCategory is not provided.'], ['errorCode' => 'InvalidDataDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DataDisk.n.Category" is not valid.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DiskCategory" is not valid.', 'description' => 'The specified cloud disk type DiskCategory is invalid.'], ['errorCode' => 'InvalidDataDiskSize.ValueNotSupported', 'errorMessage' => 'The specified DataDisk.n.Size beyond the permitted range.', 'description' => ''], ['errorCode' => 'InvalidPerformanceLevel.Malformed', 'errorMessage' => 'The specified parameter DataDisk.n.PerformanceLevel is not valid.', 'description' => ''], ['errorCode' => 'InvalidDiskSize.TooSmall', 'errorMessage' => 'Specified disk size is too small when choose PL0 of cloud_essd.', 'description' => ''], ['errorCode' => 'OperationDenied.PerformanceLevelNotMatch', 'errorMessage' => 'The specified DataDisk.n.PerformanceLevel and DataDisk.n.Size do not match.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => 'The specified instance type does not exist or you are not authorized to manage instances of this instance type.'], ['errorCode' => 'InvalidAction.WithActiveElasticUpgrade', 'errorMessage' => 'The instance has active Elastic Upgrade.', 'description' => ''], ['errorCode' => 'PriceNotFound', 'errorMessage' => 'The price of your queried resource is not available now, please try other resources.', 'description' => 'The price of the specified resource does not exist. Modify the parameter value and try again later.'], ], 403 => [ ['errorCode' => 'InvalidParameter.ResourceOwnerAccount', 'errorMessage' => 'ResourceOwnerAccount is Invalid.', 'description' => 'The specified ResourceOwnerAccount parameter is invalid.'], ['errorCode' => 'ChargeTypeViolation', 'errorMessage' => 'PostPaid instance do not support this operation.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NotSupportUpgrade', 'errorMessage' => 'The specified InstanceType can only be downgraded. This API supports querying prices only of InstanceType that can be upgraded.', 'description' => 'The specified instance type can be used only for a configuration downgrade of the specified instance, and this API operation can be used to query pricing information about instance types only for instance configuration upgrades. We recommend that you call the DescribeResourcesModification operation to query the instance types available for instance configuration upgrades.'], ['errorCode' => 'InstanceExpired', 'errorMessage' => 'The PrePaid instance has been expired.', 'description' => ''], ['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'InstanceType.Offline', 'errorMessage' => 'The specified InstanceType has been offline', 'description' => 'The specified instance type is retired. Select another instance type.'], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => 'There is no authority to create instance in the specified region.', 'description' => 'You are not authorized to create instances in the specified region.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'DescribeInstanceModificationPrice', 'description' => '- You can query pricing for upgrading unexpired subscription ECS instances, but not for downgrading them.'."\n" ."\n" .'- You cannot query prices for resizing pay-as-you-go ECS instances. Because a resized instance is priced the same as a new one, call [DescribePrice](~~107829~~) to get the current price.'."\n" ."\n" .'- Before upgrading an instance, call [DescribeResourcesModification](~~66187~~) to find the instance types available for an upgrade in a specific availability zone.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-01-08T03:21:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-19T01:55:07.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceModificationPrice'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceModificationPrice', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#InstanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A3DC3196-379B-4F32-A2C5-B937134FAD8A\\",\\n \\"PriceInfo\\": {\\n \\"Rules\\": {\\n \\"Rule\\": [\\n {\\n \\"Description\\": \\"升级优惠\\",\\n \\"RuleId\\": 1234567890\\n }\\n ]\\n },\\n \\"Price\\": {\\n \\"OriginalPrice\\": 175.2,\\n \\"DiscountPrice\\": 61.32,\\n \\"Currency\\": \\"CNY\\",\\n \\"TradePrice\\": 113.88,\\n \\"DetailInfos\\": {\\n \\"DetailInfo\\": [\\n {\\n \\"Resource\\": \\"instanceType\\",\\n \\"OriginalPrice\\": 4368,\\n \\"DiscountPrice\\": 655.2,\\n \\"TradePrice\\": 3712.8,\\n \\"SubRules\\": {\\n \\"Rule\\": [\\n {\\n \\"Description\\": \\"买满1年,立享官网价格8.5折优惠\\",\\n \\"RuleId\\": 315716429631488\\n }\\n ]\\n }\\n }\\n ]\\n }\\n },\\n \\"RelatedPrice\\": {\\n \\"MarketplaceImagePrice\\": {\\n \\"Currency\\": \\"CNY\\",\\n \\"OriginalPrice\\": 100,\\n \\"DiscountPrice\\": 0,\\n \\"TradePrice\\": 100\\n }\\n }\\n }\\n}","type":"json"}]', ], 'DescribeInstanceMonitorData' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28951', 'abilityTreeNodes' => ['FEATUREecsQDYV10'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1a36962lrhj4ab****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (`ss`) is not `00`, the time is rounded up to the next minute.', 'type' => 'string', 'required' => true, 'example' => '2014-10-29T23:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (`ss`) is not `00`, the time is rounded up to the next minute.', 'type' => 'string', 'required' => true, 'example' => '2014-10-30T08:00:00Z', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => [ 'description' => 'The interval at which to retrieve monitoring data. Unit: seconds. Valid values:'."\n" ."\n" .'- 60'."\n" ."\n" .'- 600'."\n" ."\n" .'- 3600'."\n" ."\n" .'Default value: 60.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'enum' => ['60', '600', '3600'], 'example' => '60', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'MonitorData' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceMonitorData' => [ 'description' => 'The monitoring data of the instance.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CPUCreditBalance' => ['description' => 'The total number of CPU credits of the burstable instance.', 'type' => 'number', 'format' => 'float', 'example' => '120', 'title' => ''], 'BPSRead' => ['description' => 'The read bandwidth of the cloud disks (system disk and data disks). Unit: Byte/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '1000', 'title' => ''], 'InternetTX' => ['description' => 'The Internet traffic sent by the instance during the period that is specified by the `Period` parameter. The period starts from the point in time that is specified by the `TimeStamp` parameter. Unit: Kbit.', 'type' => 'integer', 'format' => 'int32', 'example' => '343', 'title' => ''], 'CPU' => ['description' => 'The vCPU utilization of the instance. Unit: percent (%).', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'CPUCreditUsage' => ['description' => 'The number of CPU credits consumed by the burstable instance.', 'type' => 'number', 'format' => 'float', 'example' => '30', 'title' => ''], 'IOPSWrite' => ['description' => 'The number of write I/O operations per second on the cloud disks (system disk and data disks).', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'IntranetTX' => ['description' => 'The internal data traffic sent by the instance during the period that is specified by the `Period` parameter. The period starts from the point in time that is specified by the `TimeStamp` parameter. Unit: Kbit.', 'type' => 'integer', 'format' => 'int32', 'example' => '343', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1a36962lrhj4****', 'title' => ''], 'BPSWrite' => ['description' => 'The write bandwidth of the cloud disks (system disk and data disks). Unit: Byte/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '13585', 'title' => ''], 'CPUNotpaidSurplusCreditUsage' => ['description' => 'The unpaid overdrawn CPU credits.', 'type' => 'number', 'format' => 'float', 'example' => '0.5', 'title' => ''], 'CPUAdvanceCreditBalance' => ['description' => 'The overdrawn CPU credits of the burstable instance.', 'type' => 'number', 'format' => 'float', 'example' => '0.4', 'title' => ''], 'IOPSRead' => ['description' => 'The number of read I/O operations per second on the cloud disks (system disk and data disks).', 'type' => 'integer', 'format' => 'int32', 'example' => '1000', 'title' => ''], 'InternetBandwidth' => ['description' => 'The public bandwidth of the instance. Unit: Kbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'InternetRX' => ['description' => 'The Internet traffic received by the instance during the period that is specified by the `Period` parameter. The period starts from the point in time that is specified by the `TimeStamp` parameter. Unit: Kbit.', 'type' => 'integer', 'format' => 'int32', 'example' => '122', 'title' => ''], 'TimeStamp' => ['description' => 'The timestamp of the monitoring data.', 'type' => 'string', 'example' => '2014-10-30T05:00:00Z', 'title' => ''], 'IntranetRX' => ['description' => 'The internal data traffic received by the instance during the period that is specified by the `Period` parameter. The period starts from the point in time that is specified by the `TimeStamp` parameter. Unit: Kbit.', 'type' => 'integer', 'format' => 'int32', 'example' => '122', 'title' => ''], 'IntranetBandwidth' => ['description' => 'The internal bandwidth of the instance. Unit: Kbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidStartTime.Malformed', 'errorMessage' => 'The specified parameter "StartTime" is not valid.', 'description' => 'The specified StartTime parameter does not conform to the specification.'], ['errorCode' => 'InvalidEndTime.Malformed', 'errorMessage' => 'The specified parameter "EndTime" is not valid.', 'description' => 'The specified EndTime parameter is invalid.'], ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter "Period" is not valid.', 'description' => ''], ['errorCode' => 'InvalidStartTime.TooEarly', 'errorMessage' => 'The specified parameter "StartTime" is too early.', 'description' => ''], ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => ''], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'InvalidStartTime.ValueNotSupported', 'errorMessage' => 'The specified parameter StartTime is later than EndTime.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeInstanceMonitorData', 'summary' => 'Queries the monitoring data of an Elastic Compute Service (ECS) instance. The monitoring data can include the vCPU utilization, CPU credits of the burstable instance, amount of received data traffic, amount of sent data traffic, and average bandwidth.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- Up to 400 monitoring data entries can be returned at a time. Make sure that the `TotalCount` value does not exceed 400. The value is calculated by using the following formula: `TotalCount = (EndTime - StartTime)/Period`. If the TotalCount value is greater than 400, the `InvalidParameter.TooManyDataQueried` error is returned.'."\n" ."\n" .'- You can query the monitoring data in the last 30 days. If the value of `StartTime` is more than 30 days earlier than the current time, an error is returned.'."\n" ."\n" .'- In some scenarios, such as when the instance is in the Stopped state, the system cannot obtain the relevant information and specific information may be missing from the returned monitoring data.'."\n" ."\n" .'- You cannot call this operation to obtain the CPU basic monitoring information of an ECS bare metal instance. To obtain the CPU monitoring information of an ECS bare metal instance, install the CloudMonitor agent on the instance. For more information, see [InstallCloudMonitor](~~183482~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceMonitorData'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"MonitorData\\": {\\n \\"InstanceMonitorData\\": [\\n {\\n \\"CPUCreditBalance\\": 120,\\n \\"BPSRead\\": 1000,\\n \\"InternetTX\\": 343,\\n \\"CPU\\": 2,\\n \\"CPUCreditUsage\\": 30,\\n \\"IOPSWrite\\": 200,\\n \\"IntranetTX\\": 343,\\n \\"InstanceId\\": \\"i-bp1a36962lrhj4****\\",\\n \\"BPSWrite\\": 13585,\\n \\"CPUNotpaidSurplusCreditUsage\\": 0.5,\\n \\"CPUAdvanceCreditBalance\\": 0.4,\\n \\"IOPSRead\\": 1000,\\n \\"InternetBandwidth\\": 10,\\n \\"InternetRX\\": 122,\\n \\"TimeStamp\\": \\"2014-10-30T05:00:00Z\\",\\n \\"IntranetRX\\": 122,\\n \\"IntranetBandwidth\\": 10\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceRamRole' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28953', 'abilityTreeNodes' => ['FEATUREecsXDMPW4'], ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance RAM role. You can call the [DescribeRegions](~~25609~~) operation to query the most recent list of regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of ECS instances. You can specify up to 50 instance IDs in a single request.'."\n" ."\n" .'> You must specify at least one parameter from `InstanceIds` and `RamRoleName`.', 'type' => 'string', 'required' => false, 'example' => '["i-bp67acfmxazb1p****", "i-bp67acfmxazb2p****", "bp67acfmxazb3p****"…]', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance RAM role. If you specify this parameter, all ECS instances to which the instance RAM role is attached are returned in the response. You can call the [ListRoles](~~28713~~) operation of RAM to query the names of available instance RAM roles.'."\n" ."\n" .'> You must specify at least one parameter from `InstanceIds` and `RamRoleName`.', 'type' => 'string', 'required' => false, 'example' => 'EcsServiceRole-EcsDocGuideTest', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The number of ECS instances returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the ECS instances.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'InstanceRamRoleSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceRamRoleSet' => [ 'description' => 'The IDs of the ECS instances and the names of the corresponding instance RAM roles.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RamRoleName' => ['description' => 'The name of the instance RAM role.', 'type' => 'string', 'example' => 'EcsServiceRole-EcsDocGuideTest', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the instance', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidInstanceIds.Malformed', 'errorMessage' => 'The specified instanceIds are not valid.', 'description' => 'Multiple specified instance IDs are invalid.'], ], 403 => [ ['errorCode' => 'InvalidNetworkType.MismatchRamRole', 'errorMessage' => 'Ram role cannot be applied to instances of Classic network type.', 'description' => 'Instance RAM roles can be used only for instances of the VPC type, not for instances of the classic network type.'], ['errorCode' => 'InvalidParameter.AllEmpty', 'errorMessage' => '%s', 'description' => 'The required parameters are not specified.'], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified instanceId does not exist', 'description' => 'The specified instance does not exist. Check whether the instance ID is correct.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'DescribeInstanceRamRole', 'summary' => 'Queries the instance Resource Access Management (RAM) roles that are attached to Elastic Compute Service (ECS) instances based on the instance IDs, or queries the ECS instances to which a specific instance RAM role is attached based on the name of the instance RAM role.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'When you call the API operation by using Alibaba Cloud CLI, you must specify request parameter values of different data types in the required formats. For more information, see [Parameter formats](~~110340~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceRamRole'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceRamRole', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Role', 'arn' => 'acs:ram:{#regionId}:{#accountId}:role/{#roleName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceRamRoleSets\\": {\\n \\"InstanceRamRoleSet\\": [\\n {\\n \\"RamRoleName\\": \\"EcsServiceRole-EcsDocGuideTest\\",\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceStatus' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28956', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instances. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the instances. You can call the [DescribeZones](~~25610~~) operation to query the most recent zone list.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-d', 'title' => ''], ], [ 'name' => 'ClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the cluster to which the ECS instances belong.'."\n" ."\n" .'> This parameter is deprecated. We recommend that you do not use this parameter.', 'type' => 'string', 'required' => false, 'example' => 'cls-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of ECS instances. You can specify 1 to 100 instance IDs.'."\n" ."\n" .'Example: \\["i-bp1j4i2jdf3owlhe\\*\\*\\*\\*", "i-bp1j4i2jdf3o1234\\*\\*\\*\\*"].', 'type' => 'array', 'items' => ['description' => 'The ID of the ECS instance.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1j4i2jdf3owlhe****', 'title' => ''], 'required' => false, 'example' => 'i-bp1j4i2jdf3owlhe****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '58', 'title' => ''], 'InstanceStatuses' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceStatus' => [ 'description' => 'The IDs and status of the ECS instances.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the instance. Valid values:'."\n" ."\n" .'- Pending: The instance is being created.'."\n" ."\n" .'- Running: The instance is running.'."\n" ."\n" .'- Starting: The instance is being started.'."\n" ."\n" .'- Stopping: The instance is being stopped.'."\n" ."\n" .'- Stopped: The instance is stopped.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the instance.', 'type' => 'string', 'example' => 'i-bp1j4i2jdf3owlhe****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter.TooManyInstanceIds', 'errorMessage' => 'Instance ids cannot be more than 100.', 'description' => 'InstanceIds cannot be more than 100.'], ['errorCode' => 'Abs.InvalidInstanceIds.MalFormed', 'errorMessage' => 'The specified instanceIds is not valid.', 'description' => ''], ], [ ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The ZoneId provided does not exist in our records.', 'description' => ''], ], ], 'title' => 'DescribeInstanceStatus', 'summary' => 'Queries the status of one or more Elastic Compute Service (ECS) instances. You can also call this operation to query the list of ECS instances that match the specified filter conditions.', 'description' => 'For information about the lifecycle states of an ECS instance, see [Instance lifecycle](~~25687~~).'."\n" ."\n" .'## [](#)Sample requests'."\n" ."\n" .'- Query the ECS instances and the status of the instances in a **specific region**. Sample request:'."\n" ."\n" .''."\n" ."\n" .'```'."\n" .'"RegionID": "cn-hangzhou"'."\n" .'```'."\n" ."\n" .'- Query the ECS instances and the status of the instances in a **zone** of a **specific region**. Sample request:'."\n" ."\n" .''."\n" ."\n" .'```'."\n" .'"RegionID": "cn-hangzhou",'."\n" .'"ZoneID": "cn-hangzhou-a"'."\n" .'```'."\n" ."\n" .'- Query the status of an ECS instance in a **specific region** based on the **instance ID**. Sample request:'."\n" ."\n" .''."\n" ."\n" .'```'."\n" .'"RegionID": "cn-hangzhou",'."\n" .'"InstancesID": ["i-bp1f7c1zqp999zvp****", "i-bp1dqjv36biueg61****"]'."\n" .'```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceStatus'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 58,\\n \\"InstanceStatuses\\": {\\n \\"InstanceStatus\\": [\\n {\\n \\"Status\\": \\"Running\\",\\n \\"InstanceId\\": \\"i-bp1j4i2jdf3owlhe****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceTypeFamilies' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28958', 'abilityTreeNodes' => ['FEATUREecsILZKWZ'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance family. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Generation', 'in' => 'query', 'schema' => ['description' => 'The series of the instance family. For more information, see [Overview of instance families](~~25378~~). Valid values:'."\n" ."\n" .'- ecs-1: Series I, which consists of the earliest and cost-effective instance types'."\n" ."\n" .'- ecs-2: Series II, which provides upgraded software and hardware and higher performance than Series I'."\n" ."\n" .'- ecs-3: Series III, which consists of high-performance instance families and is suitable for different business scenarios'."\n" ."\n" .'- ecs-4: Series IV, which consists of enterprise-level instance families (such as g5, c5, and r5), ECS Bare Metal Instance families (such as ebmc5s, ebmg5s, and ebmr5s), and burstable instance families (such as t5) and can meet a wide variety of business requirements with lower latency'."\n" ."\n" .'- ecs-5: Series V, which consists of enterprise-level instance families (such as g6, c6, and r6), ECS Bare Metal Instance families (such as ebmg6, ebmg6e, and ebmc6), and storage-enhanced instance families (such as g6e) and delivers quick response times and higher performance'."\n" ."\n" .'- ecs-6: Series VI, which consists of enterprise-level instance families (such as hfc7, hfg7, and hfr7) and ECS Bare Metal Instance families (such as ebmhfg7)', 'type' => 'string', 'required' => false, 'example' => 'ecs-5', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'InstanceTypeFamilies' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceTypeFamily' => [ 'description' => 'The instance families.', 'type' => 'array', 'items' => [ 'description' => 'The series of the instance family.', 'type' => 'object', 'properties' => [ 'Generation' => ['description' => 'The series of the instance family.', 'type' => 'string', 'example' => 'ecs-5', 'title' => ''], 'InstanceTypeFamilyId' => ['description' => 'The ID of the instance family.', 'type' => 'string', 'example' => 'ecs.g6', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ], ], 'title' => 'DescribeInstanceTypeFamilies', 'summary' => 'Queries the instance families provided by Elastic Compute Service (ECS). You can call the DescribeInstanceTypeFamilies operation to obtain information about different series of instance families. This helps you better understand the available instance types and choose appropriate instance types to create ECS instances.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceTypeFamilies'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"InstanceTypeFamilies\\": {\\n \\"InstanceTypeFamily\\": [\\n {\\n \\"Generation\\": \\"ecs-5\\",\\n \\"InstanceTypeFamilyId\\": \\"ecs.g6\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeInstanceTypes' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28959', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'InstanceTypeFamily', 'in' => 'query', 'schema' => ['description' => 'The instance family that the instance type belongs to. For valid values, see [DescribeInstanceTypeFamilies](~~25621~~).'."\n" ."\n" .'For more information about instance families, see [Instance families](~~25378~~).', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6', 'title' => ''], ], [ 'name' => 'InstanceTypes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The specified instance types. Array length: 1 to 10. If this parameter is not specified, information about all instance types is queried by default.', 'type' => 'array', 'items' => ['description' => 'The instance type.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large', 'title' => ''], 'required' => false, 'example' => 'ecs.g6.large', 'maxItems' => 10, 'title' => '', ], ], [ 'name' => 'MinimumCpuCoreCount', 'in' => 'query', 'schema' => ['description' => 'The minimum number of vCPU cores when you query instance types. Valid values: positive integers.'."\n" ."\n" .'> Instance types with fewer vCPU cores than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'MaximumCpuCoreCount', 'in' => 'query', 'schema' => ['description' => 'The maximum number of vCPU cores when you query instance types. Valid values: positive integers.'."\n" ."\n" .'> Instance types with more vCPU cores than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'MinimumMemorySize', 'in' => 'query', 'schema' => ['description' => 'The minimum memory size when you query instance types. Unit: GiB.'."\n" ."\n" .'> Instance types with a memory size smaller than the specified value are not returned.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'MaximumMemorySize', 'in' => 'query', 'schema' => ['description' => 'The maximum memory size when you query instance types. Unit: GiB.'."\n" ."\n" .'> Instance types with a memory size larger than the specified value are not returned.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '60', 'title' => ''], ], [ 'name' => 'MinimumGPUAmount', 'in' => 'query', 'schema' => ['description' => 'The minimum number of GPUs when you query instance types. Valid values: positive integers.'."\n" ."\n" .'> Instance types with fewer GPUs than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '3', 'title' => ''], ], [ 'name' => 'MaximumGPUAmount', 'in' => 'query', 'schema' => ['description' => 'The maximum number of GPUs when you query instance types. Valid values: positive integers.'."\n" ."\n" .'> Instance types with more GPUs than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'GPUSpec', 'in' => 'query', 'schema' => ['description' => 'The GPU type.'."\n" ."\n" .'> Fuzzy matching is supported. For example, if the GPU type of an instance type is NVIDIA V100, you can enter NVIDIA to query the instance type.', 'type' => 'string', 'required' => false, 'example' => 'NVIDIA V100', 'title' => ''], ], [ 'name' => 'InstanceCategory', 'in' => 'query', 'schema' => [ 'description' => 'The category of the instance type. Valid values:'."\n" ."\n" .'- General-purpose: general-purpose instance type.'."\n" .'- Compute-optimized: compute-optimized instance type.'."\n" .'- Memory-optimized: memory-optimized instance type.'."\n" .'- Big data: big data instance type.'."\n" .'- Local SSDs: local SSD instance type.'."\n" .'- High Clock Speed: high clock speed instance type.'."\n" .'- Enhanced: enhanced instance type.'."\n" .'- Shared: shared instance type.'."\n" .'- Compute-optimized with GPU: GPU-accelerated compute-optimized instance type.'."\n" .'- Visual Compute-optimized: visual compute-optimized instance type.'."\n" .'- Heterogeneous Service: heterogeneous service instance type.'."\n" .'- Compute-optimized with FPGA: FPGA-accelerated compute-optimized instance type.'."\n" .'- Compute-optimized with NPU: NPU-accelerated compute-optimized instance type.'."\n" .'- ECS Bare Metal: ECS Bare Metal Instance.'."\n" .'- Super Computing Cluster: Super Computing Cluster instance type.'."\n" .'- High Performance Compute: high-performance computing instance type.', 'type' => 'string', 'enum' => ['General-purpose', 'Compute-optimized', 'Memory-optimized', 'Big data', 'Local SSDs', 'High Clock Speed', 'Enhanced', 'Shared', 'Compute-optimized with GPU', 'Visual Compute-optimized', 'Heterogeneous Service', 'Compute-optimized with FPGA', 'Compute-optimized with NPU', 'ECS Bare Metal', 'Super Computing Cluster', 'High Performance Compute'], 'required' => false, 'example' => 'Big data', 'title' => '', ], ], [ 'name' => 'CpuArchitecture', 'in' => 'query', 'schema' => [ 'description' => 'The CPU architecture. Valid values:'."\n" .'- X86.'."\n" .'- ARM.', 'type' => 'string', 'enum' => ['X86', 'ARM'], 'required' => false, 'example' => 'X86', 'title' => '', ], ], [ 'name' => 'MinimumCpuSpeedFrequency', 'in' => 'query', 'schema' => ['description' => 'The minimum CPU base clock speed when you query instance types.'."\n" ."\n" .'> Instance types with a base clock speed lower than the specified value are not returned.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '2.5', 'title' => ''], ], [ 'name' => 'MaximumCpuSpeedFrequency', 'in' => 'query', 'schema' => ['description' => 'The maximum CPU base clock speed when you query instance types.'."\n" ."\n" .'> Instance types with a base clock speed higher than the specified value are not returned.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '3.2', 'title' => ''], ], [ 'name' => 'MinimumCpuTurboFrequency', 'in' => 'query', 'schema' => ['description' => 'The minimum CPU turbo frequency when you query instance types.'."\n" ."\n" .'> Instance types with a turbo frequency lower than the specified value are not returned.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '3.2', 'title' => ''], ], [ 'name' => 'MaximumCpuTurboFrequency', 'in' => 'query', 'schema' => ['description' => 'The maximum CPU turbo frequency when you query instance types.'."\n" ."\n" .'> Instance types with a turbo frequency higher than the specified value are not returned.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '4.1', 'title' => ''], ], [ 'name' => 'PhysicalProcessorModel', 'in' => 'query', 'schema' => ['description' => 'The processor model.'."\n" ."\n" .'> Fuzzy matching is supported. For example, if the processor model of an instance type is Intel Xeon(Ice Lake) Platinum 8369B, you can enter Intel to query the instance type.', 'type' => 'string', 'required' => false, 'example' => 'Intel Xeon(Ice Lake) Platinum 8369B', 'title' => ''], ], [ 'name' => 'InstanceFamilyLevel', 'in' => 'query', 'schema' => [ 'description' => 'The level of the instance family. Valid values:'."\n" .'- EntryLevel: entry level (shared).'."\n" .'- EnterpriseLevel: enterprise level.'."\n" .'- CreditEntryLevel: credit-based entry level.', 'type' => 'string', 'enum' => ['EntryLevel', 'EnterpriseLevel', 'CreditEntryLevel'], 'required' => false, 'example' => 'EntryLevel', 'title' => '', ], ], [ 'name' => 'MinimumInstancePpsRx', 'in' => 'query', 'schema' => ['description' => 'The minimum inbound packet forwarding rate over the internal network when you query instance types. Unit: pps.'."\n" ."\n" .'> Instance types with an inbound packet forwarding rate lower than the specified value are not returned.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '15', 'title' => ''], ], [ 'name' => 'MinimumInstancePpsTx', 'in' => 'query', 'schema' => ['description' => 'The minimum outbound packet forwarding rate over the internal network when you query instance types. Unit: pps.'."\n" ."\n" .'> Instance types with an outbound packet forwarding rate lower than the specified value are not returned.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '15', 'title' => ''], ], [ 'name' => 'MinimumInstanceBandwidthRx', 'in' => 'query', 'schema' => ['description' => 'The minimum inbound internal bandwidth when you query instance types. Unit: kbit/s.'."\n" ."\n" .'> Instance types with an inbound internal bandwidth lower than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12288', 'title' => ''], ], [ 'name' => 'MinimumInstanceBandwidthTx', 'in' => 'query', 'schema' => ['description' => 'The minimum outbound internal bandwidth when you query instance types. Unit: kbit/s.'."\n" ."\n" .'> Instance types with an outbound internal bandwidth lower than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12288', 'title' => ''], ], [ 'name' => 'MinimumPrimaryEniQueueNumber', 'in' => 'query', 'schema' => ['description' => 'The minimum default number of queues supported by the primary ENI when you query instance types.'."\n" ."\n" .'> Instance types with fewer default queues on the primary ENI than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8', 'title' => ''], ], [ 'name' => 'MinimumSecondaryEniQueueNumber', 'in' => 'query', 'schema' => ['description' => 'The minimum default number of queues supported by the secondary ENI when you query instance types.'."\n" ."\n" .'> Instance types with fewer default queues on the secondary ENI than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'MinimumEniQuantity', 'in' => 'query', 'schema' => ['description' => 'The minimum number of ENIs that can be attached when you query instance types.'."\n" ."\n" .'> Instance types that support fewer ENIs than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'MinimumQueuePairNumber', 'in' => 'query', 'schema' => ['description' => 'The minimum number of QueuePair (QP) queues per Elastic RDMA Interface (ERI) when you query instance types.'."\n" ."\n" .'> Instance types with fewer QP queues per ERI than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '8', 'title' => ''], ], [ 'name' => 'MinimumEriQuantity', 'in' => 'query', 'schema' => ['description' => 'The minimum number of ERIs when you query instance types.'."\n" ."\n" .'> Instance types with fewer ERIs than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'MinimumEniPrivateIpAddressQuantity', 'in' => 'query', 'schema' => ['description' => 'The minimum number of IPv4 addresses per ENI when you query instance types.'."\n" ."\n" .'> Instance types that support fewer IPv4 addresses per ENI than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'MinimumEniIpv6AddressQuantity', 'in' => 'query', 'schema' => ['description' => 'The minimum number of IPv6 addresses per ENI when you query instance types.'."\n" ."\n" .'> Instance types that support fewer IPv6 addresses per ENI than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'MinimumLocalStorageAmount', 'in' => 'query', 'schema' => ['description' => 'The minimum number of local disks attached to the instance when you query instance types.'."\n" ."\n" .'> Instance types with fewer local disks than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'MinimumLocalStorageCapacity', 'in' => 'query', 'schema' => ['description' => 'The capacity of a single local disk attached to the instance. Unit: GiB.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '40', 'title' => ''], ], [ 'name' => 'MinimumDiskQuantity', 'in' => 'query', 'schema' => ['description' => 'The minimum number of cloud disks that can be attached when you query instance types.'."\n" ."\n" .'> Instance types that support fewer cloud disks than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], ], [ 'name' => 'LocalStorageCategory', 'in' => 'query', 'schema' => [ 'description' => 'The category of local disks. For more information, see [Local disks](~~63138#section_n2w_8yc_5u1~~). Valid values:'."\n" ."\n" .'- local\\_hdd\\_pro: SATA HDDs used by the d1ne and d1 instance families.'."\n" .'- local\\_ssd\\_pro: NVMe SSDs used by the i2, i2g, i1, ga1, and gn5 instance families.', 'type' => 'string', 'enum' => ['local_hdd_pro', 'local_ssd_pro'], 'required' => false, 'example' => 'local_ssd_pro', 'title' => '', ], ], [ 'name' => 'NvmeSupport', 'in' => 'query', 'schema' => [ 'description' => 'Indicates whether cloud disks attached to the instance type support NVMe. Valid values:'."\n" ."\n" .'- required: supported. Cloud disks are attached in NVMe mode.'."\n" .'- unsupported: not supported. Cloud disks are not attached in NVMe mode.', 'type' => 'string', 'enum' => ['required', 'unsupported'], 'required' => false, 'example' => 'required', 'title' => '', ], ], [ 'name' => 'MinimumBaselineCredit', 'in' => 'query', 'schema' => ['description' => 'The minimum baseline vCPU computing performance (total of all vCPUs) for burstable instance types t5 and t6 when you query instance types.'."\n" ."\n" .'> Instance types with a baseline vCPU computing performance lower than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12', 'title' => ''], ], [ 'name' => 'MinimumInitialCredit', 'in' => 'query', 'schema' => ['description' => 'The minimum initial vCPU credits for burstable instance types t5 and t6 when you query instance types.'."\n" ."\n" .'> Instance types with initial vCPU credits lower than the specified value are not returned.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12', 'title' => ''], ], [ 'name' => 'InstanceTypeFamilies', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance families to query. Array length: 1 to 10.', 'type' => 'array', 'items' => ['description' => 'The instance family.', 'type' => 'string', 'required' => false, 'example' => '["ecs.g6", "ecs.c6", … "ecs.r6"]', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'GpuSpecs', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The GPU types to query. Array length: 1 to 10.', 'type' => 'array', 'items' => ['description' => 'The GPU type to query.', 'type' => 'string', 'required' => false, 'example' => '["NVIDIA V100", "NVIDIA T4", … "NVIDIA A10"]', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'InstanceCategories', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance type categories to query. Array length: 1 to 10.', 'type' => 'array', 'items' => [ 'description' => 'The category of the instance type to query. Valid values:'."\n" .'- General-purpose: general-purpose instance type.'."\n" .'- Compute-optimized: compute-optimized instance type.'."\n" .'- Memory-optimized: memory-optimized instance type.'."\n" .'- Big data: big data instance type.'."\n" .'- Local SSDs: local SSD instance type.'."\n" .'- High Clock Speed: high clock speed instance type.'."\n" .'- Enhanced: enhanced instance type.'."\n" .'- Shared: shared instance type.'."\n" .'- Compute-optimized with GPU: GPU-accelerated compute-optimized instance type.'."\n" .'- Visual Compute-optimized: visual compute-optimized instance type.'."\n" .'- Heterogeneous Service: heterogeneous service instance type.'."\n" .'- Compute-optimized with FPGA: FPGA-accelerated compute-optimized instance type.'."\n" .'- Compute-optimized with NPU: NPU-accelerated compute-optimized instance type.'."\n" .'- ECS Bare Metal: ECS Bare Metal Instance.'."\n" .'- Super Computing Cluster: Super Computing Cluster instance type.'."\n" .'- High Performance Compute: high-performance computing instance type.', 'type' => 'string', 'enum' => ['General-purpose', 'Compute-optimized', 'Memory-optimized', 'Big data', 'Local SSDs', 'High Clock Speed', 'Enhanced', 'Shared', 'Compute-optimized with GPU', 'Visual Compute-optimized', 'Heterogeneous Service', 'Compute-optimized with FPGA', 'Compute-optimized with NPU', 'ECS Bare Metal', 'Super Computing Cluster', 'High Performance Compute'], 'required' => false, 'example' => '["General-purpose", "Compute-optimized", … "Enhanced"]', 'title' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'CpuArchitectures', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The CPU architectures to query. Array length: 1 to 2.', 'type' => 'array', 'items' => [ 'description' => 'The CPU architecture to query. Valid values:'."\n" ."\n" .'- X86.'."\n" .'- ARM.', 'type' => 'string', 'enum' => ['X86', 'ARM'], 'required' => false, 'example' => '["X86", "ARM"]', 'title' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'PhysicalProcessorModels', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The processor models to query. Array length: 1 to 10.', 'type' => 'array', 'items' => ['description' => 'The processor model to query.', 'type' => 'string', 'required' => false, 'example' => '["Intel Xeon(Ice Lake) Platinum 8369B", "Intel Xeon(Skylake) Platinum 8163", … "Intel Xeon(Cascade Lake) Platinum 8269CY"]', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'LocalStorageCategories', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The local disk categories to query. Array length: 1 to 2.', 'type' => 'array', 'items' => [ 'description' => 'The category of local disks to query. For more information, see [Local disks](~~63138#section_n2w_8yc_5u1~~). Valid values:'."\n" ."\n" .'- local\\_hdd\\_pro: SATA HDDs used by the d1ne and d1 instance families.'."\n" .'- local\\_ssd\\_pro: NVMe SSDs used by the i2, i2g, i1, ga1, and gn5 instance families.', 'type' => 'string', 'enum' => ['local_hdd_pro', 'local_ssd_pro'], 'required' => false, 'example' => '["local_hdd_pro", "local_ssd_pro"]', 'title' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'MaxResults', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The maximum number of entries per page for a paginated query. Maximum value: 1600.'."\n" ."\n" .'Default value: 1600.', 'type' => 'integer', 'format' => 'int64', 'maximum' => '1600', 'minimum' => '1', 'default' => '1600', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous call to this API operation. You do not need to set this parameter for the first request.', 'type' => 'string', 'maxLength' => 50, 'required' => false, 'example' => 'e71d8a535bd9cc11', 'title' => ''], ], [ 'name' => 'AdditionalAttributes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of advanced features to return for instance types.', 'type' => 'array', 'items' => ['description' => 'The additional attribute. Valid values of N: 1 to 20. Valid values:'."\n" ."\n" .'- NetworkInfo.BandwidthWeighting: the network/storage bandwidth performance weight of the instance type.', 'type' => 'string', 'required' => false, 'example' => 'NetworkInfo.BandwidthWeighting', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The queried instance type information.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '00827261-20B7-4562-83F2-4DF39876A45A', 'title' => ''], 'InstanceTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceType' => [ 'description' => 'The instance types.', 'type' => 'array', 'items' => [ 'description' => 'The instance types.', 'type' => 'object', 'properties' => [ 'EniTotalQuantity' => ['description' => 'The maximum number of NICs that can be attached, including primary NICs, secondary ENIs, and trunk ENIs.'."\n" ."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'LocalStorageCategory' => ['description' => 'The category of local disks. For more information, see [Local disks](~~63138~~). Valid values:'."\n" ."\n" .'- local_hdd_pro: SATA HDDs used by the d1ne and d1 instance families.'."\n" .'- local_ssd_pro: NVMe SSDs used by the i2, i2g, i1, ga1, and gn5 instance families.', 'type' => 'string', 'example' => 'local_ssd_pro', 'title' => ''], 'PrimaryEniQueueNumber' => ['description' => 'The default number of queues supported by the primary ENI.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'MemorySize' => ['description' => 'The memory size. Unit: GiB.', 'type' => 'number', 'format' => 'float', 'example' => '16', 'title' => ''], 'LocalStorageCapacity' => ['description' => 'The capacity of a single local disk attached to the instance. Unit: GiB.', 'type' => 'integer', 'format' => 'int64', 'example' => '5000', 'title' => ''], 'InstanceFamilyLevel' => ['description' => 'The level of the instance family. Valid values:'."\n" ."\n" .'- EntryLevel: entry level (shared).'."\n" .'- EnterpriseLevel: enterprise level.'."\n" .'- CreditEntryLevel: credit-based entry level. For more information, see [Burstable instances](~~59977~~).', 'type' => 'string', 'example' => 'EnterpriseLevel', 'title' => ''], 'InstancePpsRx' => ['description' => 'The inbound packet forwarding rate over the internal network. Unit: pps.', 'type' => 'integer', 'format' => 'int64', 'example' => '500000', 'title' => ''], 'EniIpv6AddressQuantity' => ['description' => 'The maximum number of IPv6 addresses per ENI.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaximumQueueNumberPerEni' => ['description' => 'The maximum number of queues per ENI, including primary and secondary ENIs.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'InstanceTypeId' => ['description' => 'The instance type ID.', 'type' => 'string', 'example' => 'ecs.g6.large', 'title' => ''], 'InstanceBandwidthRx' => ['description' => 'The maximum inbound internal bandwidth. Unit: kbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024000', 'title' => ''], 'SecondaryEniQueueNumber' => ['description' => 'The default number of queues supported by the secondary ENI.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'GPUSpec' => ['description' => 'The GPU type.', 'type' => 'string', 'example' => 'NVIDIA V100', 'title' => ''], 'InstanceBandwidthTx' => ['description' => 'The maximum outbound internal bandwidth. Unit: kbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '1024000', 'title' => ''], 'QueuePairNumber' => ['description' => 'The maximum number of QP queues for all ERIs of the instance. The value is related to the instance type:'."\n" .'- For enterprise-level CPU instances: `QueuePairNumber` indicates the maximum number of QP queues for all ERIs allowed by the instance type.'."\n" ."\n" .'- For GPU instances: the maximum number of QP queues for all NICs is `QueuePairNumber * NetworkCardQuantity`.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], 'EriQuantity' => ['description' => 'The number of ERIs.'."\n" ."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'GPUAmount' => ['description' => 'The number of GPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'TotalEniQueueQuantity' => ['description' => 'The total number of ENI queues that the instance type allows to be modified.', 'type' => 'integer', 'format' => 'int32', 'example' => '12', 'title' => ''], 'NvmeSupport' => ['description' => 'Indicates whether cloud disks attached to the instance type support NVMe. Valid values:'."\n" .'- required: supported. Cloud disks are attached in NVMe mode.'."\n" .'- unsupported: not supported. Cloud disks are not attached in NVMe mode.', 'type' => 'string', 'example' => 'unsupported', 'title' => ''], 'DiskQuantity' => ['description' => 'The maximum number of cloud disks that can be attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '17', 'title' => ''], 'InitialCredit' => ['description' => 'The initial vCPU credits for burstable instance types t5 and t6.', 'type' => 'integer', 'format' => 'int32', 'example' => '120', 'title' => ''], 'LocalStorageAmount' => ['description' => 'The number of local disks attached to the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'BaselineCredit' => ['description' => 'The baseline vCPU computing performance (total of all vCPUs) for burstable instance types t5 and t6.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'InstancePpsTx' => ['description' => 'The outbound packet forwarding rate over the internal network. Unit: pps.', 'type' => 'integer', 'format' => 'int64', 'example' => '500000', 'title' => ''], 'EniPrivateIpAddressQuantity' => ['description' => 'The maximum number of IPv4 addresses per ENI.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'CpuCoreCount' => ['description' => 'The number of vCPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'InstanceTypeFamily' => ['description' => 'The instance family.', 'type' => 'string', 'example' => 'ecs.g6', 'title' => ''], 'EniQuantity' => ['description' => 'The maximum number of ENIs that can be attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'EniTrunkSupported' => ['description' => 'Indicates whether trunk ENIs are supported.'."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'CpuSpeedFrequency' => ['description' => 'The CPU base clock speed. Unit: GHz.', 'type' => 'number', 'format' => 'float', 'example' => '2.7', 'title' => ''], 'CpuTurboFrequency' => ['description' => 'The CPU turbo frequency. Unit: GHz.', 'type' => 'number', 'format' => 'float', 'example' => '3.5', 'title' => ''], 'PhysicalProcessorModel' => ['description' => 'The processor model.', 'type' => 'string', 'example' => 'Intel Xeon(Ice Lake) Platinum 8369B', 'title' => ''], 'NetworkEncryptionSupport' => ['description' => 'Indicates whether VPC network traffic encryption is supported. Valid values:'."\n" ."\n" .'- true: VPC network traffic encryption is supported.'."\n" .'- false: VPC network traffic encryption is not supported.'."\n" .'> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'InstanceCategory' => ['description' => 'The category of the instance type. Valid values:'."\n" ."\n" .'- General-purpose: general-purpose instance type.'."\n" .'- Compute-optimized: compute-optimized instance type.'."\n" .'- Memory-optimized: memory-optimized instance type.'."\n" .'- Big data: big data instance type.'."\n" .'- Local SSDs: local SSD instance type.'."\n" .'- High Clock Speed: high clock speed instance type.'."\n" .'- Enhanced: enhanced instance type.'."\n" .'- Shared: shared instance type.'."\n" .'- Compute-optimized with GPU: GPU-accelerated compute-optimized instance type.'."\n" .'- Visual Compute-optimized: visual compute-optimized instance type.'."\n" .'- Heterogeneous Service: heterogeneous service instance type.'."\n" .'- Compute-optimized with FPGA: FPGA-accelerated compute-optimized instance type.'."\n" .'- Compute-optimized with NPU: NPU-accelerated compute-optimized instance type.'."\n" .'- ECS Bare Metal: ECS Bare Metal Instance.'."\n" .'- Super Computing Cluster: Super Computing Cluster instance type.'."\n" .'- High Performance Compute: high-performance computing instance type.', 'type' => 'string', 'example' => 'Big data', 'title' => ''], 'CpuArchitecture' => ['description' => 'The CPU architecture. Valid values:'."\n" ."\n" .'- X86.'."\n" .'- ARM.', 'type' => 'string', 'example' => 'X86', 'title' => ''], 'GPUMemorySize' => ['description' => 'The GPU memory size per GPU. Unit: GiB.', 'type' => 'number', 'title' => '', 'format' => 'float', 'required' => false, 'example' => '32'], 'NetworkCardQuantity' => ['description' => 'The number of physical NICs supported by the instance type.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'NetworkCards' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'NetworkCardInfo' => [ 'description' => 'The list of physical NIC information.', 'type' => 'array', 'items' => [ 'description' => 'The physical NIC information.', 'type' => 'object', 'properties' => [ 'NetworkCardIndex' => ['description' => 'The index of the physical NIC.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SupportedBootModes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedBootMode' => [ 'description' => 'The boot modes supported by the instance type.', 'type' => 'array', 'items' => ['description' => 'The boot mode. Valid values:'."\n" .'- BIOS: only the BIOS boot mode is supported.'."\n" .'- UEFI: only the UEFI boot mode is supported.'."\n" .'- BIOS,UEFI: both BIOS and UEFI boot modes are supported.', 'type' => 'string', 'example' => 'BIOS', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'EnhancedNetwork' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'object', 'properties' => [ 'SriovSupport' => ['description' => '> This parameter is not publicly available.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'VfQueueNumberPerEni' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'RssSupport' => ['description' => '> This parameter is not publicly available.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'CpuOptions' => [ 'description' => 'The CPU configuration options.', 'type' => 'object', 'properties' => [ 'SupportedTopologyTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedTopologyType' => [ 'description' => 'The CPU topology types supported by the instance type.', 'type' => 'array', 'items' => ['description' => 'The CPU topology type supported by the instance type. Valid values:'."\n" ."\n" .'- ContinuousCoreToHTMapping: the HTs within the same core of the instance are continuous.'."\n" .'- DiscreteCoreToHTMapping: the HTs within the same core of the instance are discrete.', 'type' => 'string', 'example' => 'ContinuousCoreToHTMapping', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'ThreadsPerCore' => ['description' => 'The number of threads per CPU core.'."\n" ."\n" .'> `CpuOptions.ThreadsPerCore=1` indicates that CPU hyper-threading is disabled.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'Core' => ['description' => 'The number of CPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'CoreFactor' => ['description' => 'The CPU core step size.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'HyperThreadingAdjustable' => ['description' => 'Indicates whether hyper-threading can be enabled or disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'NestedVirtualizationSupport' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'JumboFrameSupport' => ['description' => 'Indicates whether jumbo frames are supported.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Clock' => [ 'description' => 'The clock supported by the instance type.', 'type' => 'object', 'properties' => [ 'PtpSupport' => ['description' => 'Indicates whether PTP is supported. Valid values:'."\n" ."\n" .'- supported: PTP is supported.'."\n" .'- unsupported: PTP is not supported.', 'type' => 'string', 'example' => 'unsupported', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Attributes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Attribute' => [ 'description' => 'The list of instance type attributes.', 'type' => 'array', 'items' => [ 'description' => 'The instance type attribute.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The attribute name.', 'type' => 'string', 'example' => 'VirtualIntelSpeedSelectTechnologySupport', 'title' => ''], 'Value' => ['description' => 'The attribute value.', 'type' => 'string', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NetworkInfo' => [ 'description' => 'The network-related information.', 'type' => 'object', 'properties' => [ 'BandwidthWeighting' => [ 'description' => 'The bandwidth weight supported by the instance type.', 'type' => 'object', 'properties' => [ 'WeightingInfos' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'WeightingInfo' => [ 'description' => 'The bandwidth weight information. This field is returned only when NetworkInfo.BandwidthWeighting is specified in the AdditionalAttributes parameter.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The bandwidth weight name.', 'type' => 'string', 'example' => 'Default', 'title' => ''], 'VpcBandwidth' => ['description' => 'The baseline network bandwidth. Unit: Kbit/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '20480000', 'title' => ''], 'VpcBurstBandwidth' => ['description' => 'The burst network bandwidth. This value is not returned if the instance type does not support network performance bursting. Unit: Kbit/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '25600000', 'title' => ''], 'EbsBandwidth' => ['description' => 'The baseline storage bandwidth. Unit: Kbit/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '10000000', 'title' => ''], 'EbsBurstBandwidth' => ['description' => 'The burst storage bandwidth. This value is not returned if the instance type does not support storage performance bursting. Unit: Kbit/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '20000000', 'title' => ''], ], 'description' => 'The bandwidth weight information.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'The pagination token returned by this call.', 'type' => 'string', 'example' => 'e71d8a535bd9cc11', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'title' => 'Query instance type information', 'summary' => 'Queries the information about all instance types provided by Elastic Compute Service (ECS) and obtains the detailed information about the instance types. You can also query the information about specific instance types based on specific conditions. This helps you understand the configurations and performance of different instance types so that you can select instance types that meet your business requirements.', 'description' => '- **Paginated query**: You can set the MaxResults parameter to limit the number of instance types returned in each response. If only a subset of the queried instance types is returned, the NextToken parameter value is also returned. To perform a paginated query, set the NextToken parameter to the value returned by the previous call and set the MaxResults parameter.'."\n" ."\n" .'- If you call this API operation without passing the NextToken parameter for paginated retrieval, only the first page of data (up to 100 entries) is returned by default. To retrieve more data, pass the NextToken parameter for paginated retrieval or pass filter conditions to limit the returned data range.'."\n" ."\n" .'> The maximum value of the MaxResults parameter (maximum entries per page) is 100. For users who called this API before 2022, the maximum value of MaxResults remains 1600. On and after November 15, 2023, the maximum value of MaxResults will be reduced to 100 for all users, and 1600 will no longer be supported.'."\n" ."\n" .'- DescribeInstanceTypes only queries the configuration and performance information of instance types. To query instance types available for purchase in a specific region, use [DescribeAvailableResource](~~66186~~).'."\n" ."\n" .''."\n" .'- If you require instance types that are not publicly available for sale or have special requirements, [submit a ticket](https://selfservice.console.aliyun.com/ticket/createIndex).'."\n" .' '."\n" ."\n" .''."\n" .'- If you require instance types that are not publicly available for sale or have special requirements, [submit a ticket](https://smartservice.console.aliyun.com/service/create-ticket-intl).'."\n" .'', 'changeSet' => [ ['createdAt' => '2025-08-25T03:52:19.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2025-05-23T08:01:59.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-04-03T05:50:10.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-01-09T05:47:01.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-11-25T06:06:34.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-31T05:39:57.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-07-03T03:08:54.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-04-24T01:32:07.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-04-12T05:48:50.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2022-12-19T03:29:14.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-09-07T01:28:15.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2021-08-18T07:40:23.000Z', 'description' => 'Request parameters changed, Response parameters changed, Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceTypes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"00827261-20B7-4562-83F2-4DF39876A45A\\",\\n \\"InstanceTypes\\": {\\n \\"InstanceType\\": [\\n {\\n \\"EniTotalQuantity\\": 0,\\n \\"LocalStorageCategory\\": \\"local_ssd_pro\\",\\n \\"PrimaryEniQueueNumber\\": 4,\\n \\"MemorySize\\": 16,\\n \\"LocalStorageCapacity\\": 5000,\\n \\"InstanceFamilyLevel\\": \\"EnterpriseLevel\\",\\n \\"InstancePpsRx\\": 500000,\\n \\"EniIpv6AddressQuantity\\": 1,\\n \\"MaximumQueueNumberPerEni\\": 4,\\n \\"InstanceTypeId\\": \\"ecs.g6.large\\",\\n \\"InstanceBandwidthRx\\": 1024000,\\n \\"SecondaryEniQueueNumber\\": 4,\\n \\"GPUSpec\\": \\"NVIDIA V100\\",\\n \\"InstanceBandwidthTx\\": 1024000,\\n \\"QueuePairNumber\\": 22,\\n \\"EriQuantity\\": 0,\\n \\"GPUAmount\\": 0,\\n \\"TotalEniQueueQuantity\\": 12,\\n \\"NvmeSupport\\": \\"unsupported\\",\\n \\"DiskQuantity\\": 17,\\n \\"InitialCredit\\": 120,\\n \\"LocalStorageAmount\\": 1,\\n \\"BaselineCredit\\": 4,\\n \\"InstancePpsTx\\": 500000,\\n \\"EniPrivateIpAddressQuantity\\": 10,\\n \\"CpuCoreCount\\": 4,\\n \\"InstanceTypeFamily\\": \\"ecs.g6\\",\\n \\"EniQuantity\\": 3,\\n \\"EniTrunkSupported\\": true,\\n \\"CpuSpeedFrequency\\": 2.7,\\n \\"CpuTurboFrequency\\": 3.5,\\n \\"PhysicalProcessorModel\\": \\"Intel Xeon(Ice Lake) Platinum 8369B\\",\\n \\"NetworkEncryptionSupport\\": true,\\n \\"InstanceCategory\\": \\"Big data\\",\\n \\"CpuArchitecture\\": \\"X86\\",\\n \\"GPUMemorySize\\": 32,\\n \\"NetworkCardQuantity\\": 1,\\n \\"NetworkCards\\": {\\n \\"NetworkCardInfo\\": [\\n {\\n \\"NetworkCardIndex\\": 1\\n }\\n ]\\n },\\n \\"SupportedBootModes\\": {\\n \\"SupportedBootMode\\": [\\n \\"BIOS\\"\\n ]\\n },\\n \\"EnhancedNetwork\\": {\\n \\"SriovSupport\\": true,\\n \\"VfQueueNumberPerEni\\": 5,\\n \\"RssSupport\\": true\\n },\\n \\"CpuOptions\\": {\\n \\"SupportedTopologyTypes\\": {\\n \\"SupportedTopologyType\\": [\\n \\"ContinuousCoreToHTMapping\\"\\n ]\\n },\\n \\"ThreadsPerCore\\": 2,\\n \\"Core\\": 2,\\n \\"CoreFactor\\": 2,\\n \\"HyperThreadingAdjustable\\": true,\\n \\"NestedVirtualizationSupport\\": \\"\\"\\n },\\n \\"JumboFrameSupport\\": true,\\n \\"Clock\\": {\\n \\"PtpSupport\\": \\"unsupported\\"\\n },\\n \\"Attributes\\": {\\n \\"Attribute\\": [\\n {\\n \\"Name\\": \\"VirtualIntelSpeedSelectTechnologySupport\\",\\n \\"Value\\": \\"1\\"\\n }\\n ]\\n },\\n \\"NetworkInfo\\": {\\n \\"BandwidthWeighting\\": {\\n \\"WeightingInfos\\": {\\n \\"WeightingInfo\\": [\\n {\\n \\"Name\\": \\"Default\\",\\n \\"VpcBandwidth\\": 20480000,\\n \\"VpcBurstBandwidth\\": 25600000,\\n \\"EbsBandwidth\\": 10000000,\\n \\"EbsBurstBandwidth\\": 20000000\\n }\\n ]\\n }\\n }\\n }\\n }\\n ]\\n },\\n \\"NextToken\\": \\"e71d8a535bd9cc11\\"\\n}","type":"json"}]', ], 'DescribeInstanceVncUrl' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28961', 'abilityTreeNodes' => ['FEATUREecsHM5DW1'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1hzoinajzkh91h****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'VncUrl' => ['description' => 'The VNC logon URL.'."\n" ."\n" .'>**The VNC logon URL is time-sensitive and valid for 15 seconds. If you do not use the URL within 15 seconds after a successful call, the URL expires and you must call this operation again to obtain a new one.**>.', 'type' => 'string', 'example' => 'wss%3A%2F%2Fhz01-vncproxy.aliyun.com%2Fwebsockify%2F%3Fs%3DDvh%252FIA%252BYc73gWO48cBx2gBxUDVzaAnSKr74pq30mzqUYgeUMcB%252FbkNixDxdEA996', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegionInstance', 'errorMessage' => 'The specified InstanceId does not exist in given region.', 'description' => 'The instance does not exist in the specified region.'], ], 403 => [ ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'InstanceNotReady', 'errorMessage' => 'The specified instance is not ready for use', 'description' => ''], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query the VNC logon URL of an instance', 'summary' => 'Queries the VNC logon URL of an ECS instance.', 'description' => '- The API returns a VNC logon URL (VncUrl) that cannot be used directly. You can access the instance through the **management terminal URL**.'."\n" .'> To construct the management terminal URL, append `vncUrl=\\*\\*\\*\\*`, `instanceId=****`, and `isWindows=true/false` to the end of `https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?`, and connect the parameters with `&`. Parameters:'."\n" .' >- `vncUrl`: the VNC logon URL.'."\n" .' >- `instanceId`: the instance ID.'."\n" .' >- `isWindows`: specifies whether the operating system of the instance is Windows. A value of `true` indicates Windows. A value of `false` indicates non-Windows.'."\n" .' >- Password-free VNC connections are supported. You do not need to set the `password` parameter.'."\n" ."\n" .'- The KeepAlive time of a single management terminal URL is 300 seconds. If no interaction occurs within 300 seconds, the connection is automatically closed.'."\n" .'- If the connection is interrupted, call this operation again to obtain a new `VncUrl` and construct a new management terminal URL to reconnect. You can reconnect up to 30 times per minute.'."\n" ."\n" .'Example management terminal URL:'."\n" .'```'."\n" .'https://g.alicdn.com/aliyun/ecs-console-vnc2/0.0.8/index.html?vncUrl=ws%3A%2F%****&instanceId=i-wz9hhwq5a6tm****&isWindows=true'."\n" .'```.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstanceVncUrl'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInstanceVncUrl', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"VncUrl\\": \\"wss%3A%2F%2Fhz01-vncproxy.aliyun.com%2Fwebsockify%2F%3Fs%3DDvh%252FIA%252BYc73gWO48cBx2gBxUDVzaAnSKr74pq30mzqUYgeUMcB%252FbkNixDxdEA996\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DescribeInstances' => [ 'summary' => 'Queries a list of instances based on specified request conditions and returns the associated detailed information of the instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28954', 'abilityTreeNodes' => ['FEATUREecsQDYV10'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the virtual private cloud (VPC).', 'type' => 'string', 'required' => false, 'example' => 'v-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'InstanceNetworkType', 'in' => 'query', 'schema' => ['description' => 'The network type of the instance. Valid values:'."\n" ."\n" .'- vpc: VPC.'."\n" .'- classic: classic network. The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'string', 'required' => false, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The security group to which the instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'schema' => ['description' => 'The instance IDs. The value can be a JSON array that consists of up to 100 instance IDs. Separate the IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["i-bp67acfmxazb4p****", "i-bp67acfmxazb4p****", … "i-bp67acfmxazb4p****"]', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter will be offline soon. Use NextToken and MaxResults to complete paging query operations.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter will be offline soon. Use NextToken and MaxResults to complete paging query operations.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set the value to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for a paging query. Maximum value: 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If you do not set this parameter or set it to a value smaller than 10, the default value is 10.'."\n" .'- If you set this parameter to a value greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'InnerIpAddresses', 'in' => 'query', 'schema' => ['description' => 'The internal network IP addresses of classic network type instances. This parameter takes effect when InstanceNetworkType is set to classic. The value can be a JSON array that consists of up to 100 IP addresses. Separate the IP addresses with commas (,). '."\n" ."\n" .'> - The classic network feature has been offline. For details, see [Offline notice](~~2833134~~).', 'type' => 'string', 'required' => false, 'example' => '["10.1.1.1", "10.1.2.1", … "10.1.10.1"]', 'title' => ''], ], [ 'name' => 'PrivateIpAddresses', 'in' => 'query', 'schema' => ['description' => 'The private IP addresses of VPC network type instances. This parameter takes effect when InstanceNetworkType is set to vpc. The value can be a JSON array that consists of up to 100 IP addresses. Separate the IP addresses with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["172.16.1.1", "172.16.2.1", … "172.16.10.1"]', 'title' => ''], ], [ 'name' => 'PublicIpAddresses', 'in' => 'query', 'schema' => ['description' => 'The public IP addresses of instances. The value can be a JSON array that consists of up to 100 IP addresses. Separate the IP addresses with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["42.1.1.**", "42.1.2.**", … "42.1.10.**"]', 'title' => ''], ], [ 'name' => 'EipAddresses', 'in' => 'query', 'schema' => ['description' => 'The elastic IP addresses (EIPs) of instances. This parameter takes effect when InstanceNetworkType is set to vpc. The value can be a JSON array that consists of up to 100 IP addresses. Separate the IP addresses with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["42.1.1.**", "42.1.2.**", … "42.1.10.**"]', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instance. Valid values: '."\n" .' '."\n" .'- PostPaid: pay-as-you-go. '."\n" .'- PrePaid: subscription.', 'type' => 'string', 'required' => false, 'example' => 'PostPaid', 'title' => ''], ], [ 'name' => 'InternetChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method for public bandwidth. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.'."\n" ."\n" .'> In **pay-by-traffic** mode, the peak inbound and outbound bandwidths are used as bandwidth upper limits and are not guaranteed. When resource contention occurs, the peak bandwidths may be limited. If you require guaranteed bandwidth, use the **pay-by-bandwidth** mode.', 'type' => 'string', 'required' => false, 'example' => 'PayByTraffic', 'title' => ''], ], [ 'name' => 'InstanceName', 'in' => 'query', 'schema' => ['description' => 'The instance name. Fuzzy search with the wildcard * is supported.', 'type' => 'string', 'required' => false, 'example' => 'Test', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The image ID.', 'type' => 'string', 'required' => false, 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The instance status. Valid values: '."\n" ."\n" .'- Pending: being created.'."\n" .'- Running: running.'."\n" .'- Starting: being started.'."\n" .'- Stopping: being stopped.'."\n" .'- Stopped: stopped.', 'type' => 'string', 'required' => false, 'example' => 'Running', 'title' => ''], ], [ 'name' => 'LockReason', 'in' => 'query', 'schema' => ['description' => 'The reason why the resource is locked. Valid values:'."\n" ."\n" .'- financial: locked due to overdue payment.'."\n" ."\n" .'- security: locked for security reasons.'."\n" ."\n" .'- Recycling: the spot instance is pending release.'."\n" ."\n" .'- dedicatedhostfinancial: the ECS instance is locked because the dedicated host has an overdue payment.'."\n" ."\n" .'- refunded: locked due to a refund.', 'type' => 'string', 'required' => false, 'example' => 'security', 'title' => ''], ], [ 'name' => 'Filter.1.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `CreationStartTime`. Set both `Filter.1.Key` and `Filter.1.Value` to query resources that were created after the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'CreationStartTime', 'title' => ''], ], [ 'name' => 'Filter.2.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `CreationEndTime`. Set both `Filter.2.Key` and `Filter.2.Value` to query resources that were created before the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'CreationEndTime', 'title' => ''], ], [ 'name' => 'Filter.3.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `ExpiredStartTime`. Set both `Filter.3.Key` and `Filter.3.Value` to query resources that expire after the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'ExpiredStartTime', 'title' => ''], ], [ 'name' => 'Filter.4.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `ExpiredEndTime`. Set both `Filter.4.Key` and `Filter.4.Value` to query resources that expire before the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'ExpiredEndTime', 'title' => ''], ], [ 'name' => 'Filter.1.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify `Filter.1.Key`. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2017-12-05T22:40Z', 'title' => ''], ], [ 'name' => 'Filter.2.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify `Filter.2.Key`. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2017-12-06T22:40Z', 'title' => ''], ], [ 'name' => 'Filter.3.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify `Filter.3.Key`. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2017-12-07T22:40Z', 'title' => ''], ], [ 'name' => 'Filter.4.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify `Filter.4.Key`. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC+0.', 'type' => 'string', 'required' => false, 'example' => '2017-12-08T22:40Z', 'title' => ''], ], [ 'name' => 'DeviceAvailable', 'in' => 'query', 'schema' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is I/O optimized. Valid values:'."\n" ."\n" .'- true: The instance is I/O optimized.'."\n" .'- false: The instance is not I/O optimized.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'NeedSaleCycle', 'in' => 'query', 'schema' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5.large', 'title' => ''], ], [ 'name' => 'InstanceTypeFamily', 'in' => 'query', 'schema' => ['description' => 'The instance family.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the SSH key pair used by the instance.', 'type' => 'string', 'required' => false, 'example' => 'KeyPairNameTest', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the instance belongs. When you use this parameter to filter resources, the resource count cannot exceed 1,000.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'HpcClusterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the HPC cluster to which the instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'hpc-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'RdmaIpAddresses', 'in' => 'query', 'schema' => ['description' => 'The RDMA IP address of the HPC instance.', 'type' => 'string', 'required' => false, 'example' => '10.10.10.102', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run. Valid values:'."\n" ."\n" .'- true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes the dry run, the DryRunOperation error code is returned. '."\n" .'- false: performs a dry run and sends the request. If the request passes the dry run, a 2XX HTTP status code is returned and the operation is performed. '."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'HttpEndpoint', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the access channel for instance metadata. Valid values:'."\n" .'- enabled: enabled.'."\n" .'- disabled: disabled.'."\n" ."\n" .'Default value: enabled.'."\n" .'> For more information about instance metadata, see [Overview of instance metadata](~~49122~~).', 'type' => 'string', 'required' => false, 'example' => 'enabled', 'title' => ''], ], [ 'name' => 'HttpTokens', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to forcefully use the security-hardened mode (IMDSv2) to access instance metadata. Valid values:'."\n" .'- optional: does not forcefully use the security-hardened mode.'."\n" .'- required: forcefully uses the security-hardened mode. After you set this value, the normal mode cannot be used to access instance metadata.'."\n" ."\n" .'Default value: optional.'."\n" .'> For more information about the modes for accessing instance metadata, see [Instance metadata access modes](~~150575~~).', 'type' => 'string', 'required' => false, 'example' => 'optional', 'title' => ''], ], [ 'name' => 'HttpPutResponseHopLimit', 'in' => 'query', 'schema' => ['description' => '> This parameter is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], [ 'name' => 'Ipv6Address', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IPv6 addresses assigned to the network interface controller (NIC).', 'type' => 'array', 'items' => ['description' => 'The IPv6 address of the network interface controller (NIC). N indicates that you can set multiple IPv6 addresses. Valid values of N: 1 to 100.', 'type' => 'string', 'required' => false, 'example' => '2408:4321:180:1701:94c7:bc38:3bfa:****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key.'."\n" ."\n" .'> For better compatibility, use `Tag.N.Key` instead.', 'type' => 'string', 'required' => false, 'example' => 'keyTest', 'title' => ''], 'Key' => ['description' => 'The tag key of the instance. Valid values of N: 1 to 20.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the tag cannot exceed 1,000. If you use multiple tags to filter resources, the resource count with all the specified tags attached cannot exceed 1,000. If the resource count exceeds 1,000, call the [ListTagResources](~~110425~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the instance. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value.'."\n" ."\n" .'> For better compatibility, use `Tag.N.Value` instead.', 'type' => 'string', 'required' => false, 'example' => 'valueTest', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'AdditionalAttributes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of additional attributes of the instance.', 'type' => 'array', 'items' => ['description' => 'The additional attribute value. Valid values of N: 1 to 5. Valid values:'."\n" ."\n" .'- META_OPTIONS: instance metadata.'."\n" .'- DDH_CLUSTER: dedicated host cluster.'."\n" .'- NETWORK_PRIMARY_ENI_IP: secondary IP addresses of the primary ENI.'."\n" .'- PRIVATE_DNS_OPTIONS: private domain name information.'."\n" .'- CPU_OPTIONS_TOPOLOGY_TYPE: the CPU topology type of the instance.'."\n" .'- CURRENT_OS_NVME_SUPPORTED: whether the current operating system supports access to cloud disks over the NVMe protocol.'."\n" .'- LOGIN_AS_NON_ROOT: whether the instance is configured to allow logon as the ecs-user user.', 'type' => 'string', 'required' => false, 'example' => 'META_OPTIONS', 'title' => ''], 'required' => false, 'example' => 'META_OPTIONS', 'maxItems' => 10, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The query token returned in this call.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of queried instances.'."\n" ."\n" .'> When you use `MaxResults` and `NextToken` parameters for paging query, the returned `TotalCount` parameter value is meaningless.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Instances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Instance' => [ 'description' => 'An array of instances.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the instance was created. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC+0. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'example' => '2017-12-10T04:04Z', 'title' => ''], 'SerialNumber' => ['description' => 'The serial number of the instance.', 'type' => 'string', 'example' => '51d1353b-22bf-4567-a176-8b3e12e4****', 'title' => ''], 'Status' => ['description' => 'The instance status.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'DeploymentSetId' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'example' => 'ds-bp67acfmxazb4p****', 'title' => ''], 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], 'SaleCycle' => ['description' => '> This parameter is deprecated and no longer returns meaningful data.', 'type' => 'string', 'example' => 'month', 'title' => ''], 'SpotStrategy' => ['description' => 'The bidding strategy for the pay-as-you-go instance. Valid values:'."\n" ."\n" .'- NoSpot: a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: a spot instance with a user-defined maximum hourly price.'."\n" .'- SpotAsPriceGo: a spot instance priced at the market price with the pay-as-you-go price as the upper limit.', 'type' => 'string', 'example' => 'NoSpot', 'title' => ''], 'DeviceAvailable' => ['description' => 'Indicates whether data cloud disks can be attached to the instance.'."\n" ."\n" .'- true: Data cloud disks can be attached.'."\n" .'- false: Data cloud disks cannot be attached.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'LocalStorageCapacity' => ['description' => 'The storage capacity of local storage attached to the instance. Unit: GiB.', 'type' => 'integer', 'format' => 'int64', 'example' => '1000', 'title' => ''], 'Description' => ['description' => 'The description of the instance.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'SpotDuration' => ['description' => 'The protection period of the spot instance. Unit: hours. Valid values:'."\n" ."\n" .'- 1: Alibaba Cloud ensures that the instance is not automatically released within 1 hour after it is created. After 1 hour, the system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" .'- 0: Alibaba Cloud does not ensure that the instance runs for 1 hour after it is created. The system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. Select an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'> This parameter is returned only when SpotStrategy is set to SpotWithPriceLimit or SpotAsPriceGo.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceNetworkType' => ['description' => 'The network type of the instance. Valid values:'."\n" ."\n" .'- vpc: VPC.'."\n" .'- classic: classic network. The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'InstanceName' => ['description' => 'Instance name', 'type' => 'string', 'example' => 'InstanceNameTest', 'title' => ''], 'OSNameEn' => ['description' => 'The English name of the operating system of the instance.', 'type' => 'string', 'example' => 'CentOS 7.4 64 bit', 'title' => ''], 'HpcClusterId' => ['description' => 'The ID of the HPC cluster to which the instance belongs.', 'type' => 'string', 'example' => 'hpc-bp67acfmxazb4p****', 'title' => ''], 'SpotPriceLimit' => ['description' => 'The maximum hourly price of the instance. The value is accurate to three decimal places. This parameter takes effect when SpotStrategy is set to SpotWithPriceLimit.', 'type' => 'number', 'format' => 'float', 'example' => '0.98', 'title' => ''], 'Memory' => ['description' => 'The memory size. Unit: MiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '16384', 'title' => ''], 'OSName' => ['description' => 'The name of the operating system of the instance.', 'type' => 'string', 'example' => 'CentOS 7.4 64 位', 'title' => ''], 'DeploymentSetGroupNo' => ['description' => 'The group number of the ECS instance in the deployment set when the instance is attached to a deployment set for distribution deployment.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'ImageId' => ['description' => 'The ID of the image that the instance is running.', 'type' => 'string', 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], 'VlanId' => ['description' => 'The VLAN ID of the instance.'."\n" ."\n" .'> This parameter will be deprecated. For better compatibility, use other parameters.', 'type' => 'string', 'example' => '10', 'title' => ''], 'ClusterId' => ['description' => 'The ID of the cluster to which the instance belongs.'."\n" ."\n" .'> This parameter will be deprecated. For better compatibility, use other parameters.', 'type' => 'string', 'example' => 'c-bp67acfmxazb4p****', 'title' => ''], 'ClockOptions' => [ 'type' => 'object', 'properties' => [ 'PtpStatus' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'GPUSpec' => ['description' => 'The GPU type of the instance type.', 'type' => 'string', 'example' => 'NVIDIA V100', 'title' => ''], 'AutoReleaseTime' => ['description' => 'The automatic release time of the pay-as-you-go instance.', 'type' => 'string', 'example' => '2017-12-10T04:04Z', 'title' => ''], 'DeletionProtection' => ['description' => 'The release protection attribute of the instance. Specifies whether the instance can be released from the ECS console or by calling the DeleteInstance operation.'."\n" ."\n" .'- true: Release protection is enabled.'."\n" .'- false: Release protection is disabled.'."\n" ."\n" .'> This attribute applies only to pay-as-you-go instances. It can only restrict manual release, not system-initiated release.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'StoppedMode' => ['description' => 'Indicates whether the instance continues to be billed after it is stopped. Valid values:'."\n" ."\n" .'- KeepCharging: The instance continues to be billed after it is stopped. Resources such as vCPUs, memory, and public IP addresses are retained.'."\n" .'- StopCharging: The instance is not billed after it is stopped. Resources such as vCPUs, memory, and public IP addresses are released. Whether the instance can be restarted depends on the resource availability in the current region.'."\n" .'- Not-applicable: The instance does not support the economical mode.', 'type' => 'string', 'example' => 'KeepCharging', 'title' => ''], 'GPUAmount' => ['description' => 'The number of GPUs for the instance type.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'HostName' => ['description' => 'The hostname of the instance.', 'type' => 'string', 'example' => 'testHostName', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'InternetMaxBandwidthOut' => ['description' => 'The maximum outbound public bandwidth. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'InternetMaxBandwidthIn' => ['description' => 'The maximum inbound public bandwidth. Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'InstanceChargeType' => ['description' => 'The billing method of the instance. Valid values:'."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the instance.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'IoOptimized' => ['description' => 'Indicates whether the instance is I/O optimized.'."\n" ."\n" .'- true: The instance is I/O optimized.'."\n" .'- false: The instance is not I/O optimized.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'StartTime' => ['description' => 'The most recent start time of the instance. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC+0. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'example' => '2017-12-10T04:04Z', 'title' => ''], 'Cpu' => ['description' => 'The number of vCPUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'LocalStorageAmount' => ['description' => 'The number of local storage devices attached to the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'ExpiredTime' => ['description' => 'The expiration time. The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mmZ format. The time is displayed in UTC+0. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'example' => '2017-12-10T04:04Z', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the instance belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'InternetChargeType' => ['description' => 'The billing method for network usage. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.', 'type' => 'string', 'example' => 'PayByTraffic', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the instance.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'Recyclable' => ['description' => 'Indicates whether the instance can be recycled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ISP' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'CreditSpecification' => ['description' => 'The performance mode of the burstable instance. Valid values:'."\n" ."\n" .'- Standard: standard mode. For more information about instance performance, see the performance constrained mode section in [Overview of burstable instances](~~59977~~).'."\n" .'- Unlimited: unlimited mode. For more information about instance performance, see the unlimited mode section in [Overview of burstable instances](~~59977~~).', 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'InstanceTypeFamily' => ['description' => 'The instance family.', 'type' => 'string', 'example' => 'ecs.g5', 'title' => ''], 'OSType' => ['description' => 'The operating system type of the instance. Valid values:'."\n" ."\n" .'- windows.'."\n" .'- linux.', 'type' => 'string', 'example' => 'linux', 'title' => ''], 'NetworkInterfaces' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'NetworkInterface' => [ 'description' => 'The collection of Elastic Network Interfaces (ENIs) and network interface controllers (NICs) attached to the instance.', 'type' => 'array', 'items' => [ 'description' => 'The collection of Elastic Network Interfaces (ENIs) and network interface controllers (NICs) attached to the instance.', 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The type of the Elastic Network Interface (ENI). Valid values:'."\n" .'- Primary: primary network interface controller (NIC).'."\n" .'- Secondary: secondary ENI.', 'type' => 'string', 'example' => 'Primary', 'title' => ''], 'MacAddress' => ['description' => 'The MAC address of the network interface controller (NIC).', 'type' => 'string', 'example' => '00:16:3e:32:b4:**', 'title' => ''], 'PrimaryIpAddress' => ['description' => 'The primary private IP address of the network interface controller (NIC).', 'type' => 'string', 'example' => '172.17.**.***', 'title' => ''], 'NetworkInterfaceId' => ['description' => 'The ID of the network interface controller (NIC).', 'type' => 'string', 'example' => 'eni-2zeh9atclduxvf1z****', 'title' => ''], 'PrivateIpSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PrivateIpSet' => [ 'description' => 'The collection of PrivateIpSet entries.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PrivateIpAddress' => ['description' => 'The private IP address of the instance.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'Primary' => ['description' => 'Indicates whether the IP address is the primary private IP address. Valid values:'."\n" ."\n" .'- true: The IP address is the primary private IP address.'."\n" .'- false: The IP address is not the primary private IP address.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'PrivateDnsName' => ['description' => 'The private domain name of the instance.'."\n" ."\n\n" .'> This parameter is returned only when `HostnameType` is set to `IpBased` or `InstanceIdBased`. A private domain name in a fixed format is returned.', 'type' => 'string', 'example' => 'dnsTestName', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv6Sets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6Set' => [ 'description' => 'The IPv6 addresses allocated to the network interface controller (NIC). This parameter is returned only when the request parameter `AdditionalAttributes.N` is set to `NETWORK_PRIMARY_ENI_IP`.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv6Address' => ['description' => 'The IPv6 address allocated to the network interface controller (NIC).', 'type' => 'string', 'example' => '2408:4321:180:1701:94c7:bc38:3bfa:***', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv4PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv4PrefixSet' => [ 'description' => 'The IPv4 prefixes allocated to the network interface controller (NIC). This parameter is returned only when the request parameter `AdditionalAttributes.N` is set to `NETWORK_PRIMARY_ENI_IP`.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv4Prefix' => ['description' => 'The IPv4 prefix allocated to the network interface controller (NIC).', 'type' => 'string', 'example' => '192.168.*.*/28', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv6PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6PrefixSet' => [ 'description' => 'The IPv6 prefixes allocated to the network interface controller (NIC). This parameter is returned only when the request parameter `AdditionalAttributes.N` is set to `NETWORK_PRIMARY_ENI_IP`.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv6Prefix' => ['description' => 'The IPv6 prefix allocated to the network interface controller (NIC).', 'type' => 'string', 'example' => '2001:1111:*:*::/80', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'OperationLocks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LockReason' => [ 'description' => 'The reasons why the instance is locked.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LockMsg' => ['description' => 'The description of the lock on the instance.', 'type' => 'string', 'example' => 'The specified instance is locked due to financial reason.', 'title' => ''], 'LockReason' => ['description' => 'The lock type. Valid values:'."\n" ."\n" .'- financial: locked due to overdue payment.'."\n" .'- security: locked for security reasons.'."\n" .'- Recycling: the spot instance is pending release.'."\n" .'- dedicatedhostfinancial: the ECS instance is locked because the dedicated host has an overdue payment.'."\n" .'- refunded: locked due to a refund.', 'type' => 'string', 'example' => 'Recycling', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the instance.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the instance.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the instance.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'RdmaIpAddress' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'IpAddress' => [ 'description' => 'The RDMA IP addresses of the HPC instance.', 'type' => 'array', 'items' => ['description' => 'The RDMA IP address of the HPC instance.', 'type' => 'string', 'example' => '10.10.10.102', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SecurityGroupIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupId' => [ 'description' => 'The IDs of the security groups to which the instance belongs.', 'type' => 'array', 'items' => ['description' => 'The security group ID.', 'type' => 'string', 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'PublicIpAddress' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'IpAddress' => [ 'description' => 'The public IP addresses of the instance.', 'type' => 'array', 'items' => ['description' => 'The public IP address of the instance.', 'type' => 'string', 'example' => '121.40.**.**', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InnerIpAddress' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'IpAddress' => [ 'description' => 'The internal network IP addresses of the classic network type instance.'."\n" ."\n\n" .'> The classic network feature has been offline. For details, see [Offline notice](~~2833134~~).', 'type' => 'array', 'items' => ['description' => 'The internal network IP address of the classic network type instance.', 'type' => 'string', 'example' => '10.170.**.**', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'VpcAttributes' => [ 'description' => 'The VPC attributes.', 'type' => 'object', 'properties' => [ 'VpcId' => ['description' => 'The ID of the virtual private cloud (VPC).', 'type' => 'string', 'example' => 'vpc-2zeuphj08tt7q3brd****', 'title' => ''], 'NatIpAddress' => ['description' => 'The IP address of the cloud service, which is used for network communication between VPC-type cloud services.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'VSwitchId' => ['description' => 'The vSwitch ID.', 'type' => 'string', 'example' => 'vsw-2zeh0r1pabwtg6wcs****', 'title' => ''], 'PrivateIpAddress' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'IpAddress' => [ 'description' => 'The list of private IP addresses.', 'type' => 'array', 'items' => ['description' => 'The private IP address.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'EipAddress' => [ 'description' => 'The information about the EIP associated with the instance.', 'type' => 'object', 'properties' => [ 'IsSupportUnassociate' => ['description' => 'Indicates whether the elastic IP address (EIP) can be disassociated from the instance.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'InternetChargeType' => ['description' => 'The billing method of the elastic IP address (EIP).'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" ."\n" .'- PayByTraffic: pay-by-traffic.', 'type' => 'string', 'example' => 'PayByTraffic', 'title' => ''], 'IpAddress' => ['description' => 'The EIP.', 'type' => 'string', 'example' => '42.112.**.**', 'title' => ''], 'Bandwidth' => ['description' => 'The public bandwidth limit of the elastic IP address (EIP). Unit: Mbit/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'AllocationId' => ['description' => 'The ID of the EIP.', 'type' => 'string', 'example' => 'eip-2ze88m67qx5z****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'HibernationOptions' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'Configured' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DedicatedHostAttribute' => [ 'description' => 'The array of dedicated host attributes, which consists of the dedicated host cluster ID (DedicatedHostClusterId), dedicated host ID (DedicatedHostId), and dedicated host name (DedicatedHostName).', 'type' => 'object', 'properties' => [ 'DedicatedHostId' => ['description' => 'The ID of the dedicated host.', 'type' => 'string', 'example' => 'dh-bp67acfmxazb4p****', 'title' => ''], 'DedicatedHostName' => ['description' => 'The name of the dedicated host.', 'type' => 'string', 'example' => 'testDedicatedHostName', 'title' => ''], 'DedicatedHostClusterId' => ['description' => 'The ID of the dedicated host cluster.', 'type' => 'string', 'example' => 'dc-bp67acfmxazb4h****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'EcsCapacityReservationAttr' => [ 'description' => 'The capacity reservation-related parameters of the Elastic Computing Service (ECS) server.', 'type' => 'object', 'properties' => [ 'CapacityReservationPreference' => ['description' => 'The capacity reservation preference.', 'type' => 'string', 'example' => 'cr-bp67acfmxazb4p****', 'title' => ''], 'CapacityReservationId' => ['description' => 'The capacity reservation ID.', 'type' => 'string', 'example' => 'cr-bp67acfmxazb4p****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DedicatedInstanceAttribute' => [ 'description' => 'The attributes of the instance on the dedicated host.', 'type' => 'object', 'properties' => [ 'Affinity' => ['description' => 'Indicates whether the instance on the dedicated host is associated with the dedicated host. Valid values:'."\n" ."\n" .'- default: The instance is not associated with the dedicated host. When an instance that is in the economical mode is restarted, the instance may be placed on another dedicated host in the automatic deployment pool.'."\n" ."\n" .'- host: The instance is associated with the dedicated host. When an instance that is in the economical mode is restarted, the instance remains on the original dedicated host.', 'type' => 'string', 'example' => 'default', 'title' => ''], 'Tenancy' => ['description' => 'Indicates whether the host type of the instance is a dedicated host. Valid values:'."\n" ."\n" .'- default: The host type of the instance is not a dedicated host.'."\n" ."\n" .'- host: The host type of the instance is a dedicated host.', 'type' => 'string', 'example' => 'default', 'title' => ''], ], 'title' => '', 'example' => '', ], 'CpuOptions' => [ 'description' => 'The CPU configuration details.', 'type' => 'object', 'properties' => [ 'Numa' => ['description' => '> This parameter is deprecated.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'CoreCount' => ['description' => 'The number of physical CPU cores.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'ThreadsPerCore' => ['description' => 'The number of threads per CPU core.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'TopologyType' => ['description' => 'The CPU topology type of the instance. Valid values:'."\n" ."\n" .'- Discrete hyper-threading mode: ContinuousCoreToHTMapping'."\n" .'- Continuous hyper-threading mode: DiscreteCoreToHTMapping', 'type' => 'string', 'example' => 'DiscreteCoreToHTMapping', 'title' => ''], 'EnableVISST' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], 'TurboMode' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EnableVRDT' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], 'NestedVirtualization' => [ 'title' => '', 'description' => 'Indicates whether nested virtualization is enabled.', 'type' => 'string', 'example' => 'enabled', 'enum' => ['enabled', 'disabled'], ], ], 'title' => '', 'example' => '', ], 'MetadataOptions' => [ 'description' => 'The collection of metadata options.', 'type' => 'object', 'properties' => [ 'HttpEndpoint' => ['description' => 'Indicates whether the access channel for instance metadata is enabled. Valid values:'."\n" .'- enabled: enabled.'."\n" .'- disabled: disabled.'."\n" .'[_single.resp.200.props.Instances.Instance.items.Met', 'type' => 'string', 'example' => 'enabled', 'title' => ''], 'HttpPutResponseHopLimit' => ['description' => '> This parameter is not available for use.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'HttpTokens' => ['description' => 'Specifies whether the China mode (IMDSv2) is forcefully used when you access instance metadata. Valid values:'."\n" ."\n" .'- optional: The China mode (IMDSv2) is not forcefully used.'."\n" .'- required: The China mode (IMDSv2) is forcefully used.', 'type' => 'string', 'example' => 'optional', 'title' => ''], 'InstanceMetadataTags' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'ImageOptions' => [ 'description' => 'The image-related property information.', 'type' => 'object', 'properties' => [ 'LoginAsNonRoot' => ['description' => 'Indicates whether the instance that uses this image supports logon with the ecs-user user. Valid values:'."\n" ."\n" .'- true: supported.'."\n" ."\n" .'- false: not supported.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'CurrentOSNVMeSupported' => ['description' => 'Indicates whether the current operating system supports access to cloud disks over the NVMe protocol. Valid values:'."\n" ."\n" .'- true: supported.'."\n" ."\n" .'- false: not supported.'."\n" .'> This parameter is returned only when the AdditionalAttributes request parameter contains CURRENT_OS_NVME_SUPPORTED.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'SpotInterruptionBehavior' => ['description' => 'The interruption pattern of the spot instance when the platform initiates a spot instance interruption. Valid values:'."\n" ."\n" .'- Terminate: The instance is released.'."\n" ."\n" .'- Stop: The instance is stopped in economical mode.', 'type' => 'string', 'example' => 'Terminate', 'title' => ''], 'PrivateDnsNameOptions' => [ 'description' => 'The private domain name configuration of the instance.'."\n" ."\n\n" .'For more information about private private domain resolution, see [ECS private private domain resolution](~~2844797~~).'."\n" ."\n" .'> This parameter is returned only when the `AdditionalAttributes` request parameter contains `PRIVATE_DNS_OPTIONS`.', 'type' => 'object', 'properties' => [ 'EnableInstanceIdDnsARecord' => ['description' => 'Specifies whether to enable DNS resolution from the instance ID-based domain name to the IPv4 address. Valid values:'."\n" .' '."\n" .'- true: enabled.'."\n" .'- false: disabled.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnableInstanceIdDnsAAAARecord' => ['description' => 'Specifies whether to enable DNS resolution from the instance ID-based domain name to the IPv6 address. Valid values:'."\n" .' '."\n" .'- true: enabled.'."\n" .'- false: disabled.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnableIpDnsARecord' => ['description' => 'Specifies whether to enable DNS resolution from the IP-based domain name to the IPv4 address. Valid values:'."\n" .'- true: enabled.'."\n" .'- false: disabled.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'EnableIpDnsPtrRecord' => ['description' => 'Specifies whether to enable reverse DNS resolution from the IPv4 address to the IP-based domain name. Valid values:'."\n" .'- true: enabled.'."\n" .'- false: disabled.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'HostnameType' => ['description' => 'The hostname type. Valid values:'."\n" ."\n" .'- Custom: custom.'."\n" .'- IpBased: IP-based hostname.'."\n" .'- InstanceIdBased: instance ID-based hostname.'."\n" ."\n" .'Default value: Custom.', 'type' => 'string', 'example' => 'Custom', 'title' => ''], ], 'title' => '', 'example' => '', ], 'AdditionalInfo' => [ 'description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'object', 'properties' => [ 'EnableHighDensityMode' => ['description' => '> This parameter is in invitational preview and is not available for use.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'NodeSerialNumber' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'EnableNVS' => ['type' => 'boolean', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTag.Mismatch', 'errorMessage' => 'The specified Tag.n.Key and Tag.n.Value are not match.', 'description' => 'The specified Tag.N.Key and Tag.N.Value parameters do not correspond to each other.'], ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ['errorCode' => 'InvalidHpcClusterId.NotFound', 'errorMessage' => 'The specified HpcClusterId is not found.', 'description' => 'The specified HpcClusterId parameter does not exist.'], ['errorCode' => 'InvalidHpcClusterId.Creating', 'errorMessage' => 'The specified HpcClusterId is creating.', 'description' => 'The specified HPC cluster is being created.'], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ['errorCode' => 'Throttling.PageNumberLimited', 'errorMessage' => 'Request throttled. Please use NextToken instead of PageNumber for pagination.', 'description' => 'The current request has been throttling, please use NextToken alternative PageNumber method for paging query.'], ], 404 => [ ['errorCode' => 'InvalidInstanceChargeType.NotFound', 'errorMessage' => 'The InstanceChargeType does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidInternetChargeType.ValueNotSupported', 'errorMessage' => 'The specified InternetChargeType is not valid.', 'description' => ''], ['errorCode' => 'InvalidLockReason.NotFound', 'errorMessage' => 'The specified LockReason is not found.', 'description' => 'The specified lockout reason does not exist.'], ['errorCode' => 'InvalidFilterKey.NotFound', 'errorMessage' => 'Invalid filter.%s.', 'description' => 'The specified Filter.N.Key is invalid.'], ['errorCode' => 'InvalidFilterValue', 'errorMessage' => 'Invalid filter.%s.', 'description' => ''], ['errorCode' => 'InvalidNetworkType.NotFound', 'errorMessage' => 'The specified InstanceNetworkType is not found.', 'description' => ''], ['errorCode' => 'InvalidStatus.NotFound', 'errorMessage' => 'The specified Status is not found.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"Instances\\": {\\n \\"Instance\\": [\\n {\\n \\"CreationTime\\": \\"2017-12-10T04:04Z\\",\\n \\"SerialNumber\\": \\"51d1353b-22bf-4567-a176-8b3e12e4****\\",\\n \\"Status\\": \\"Running\\",\\n \\"DeploymentSetId\\": \\"ds-bp67acfmxazb4p****\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"SaleCycle\\": \\"month\\",\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"DeviceAvailable\\": true,\\n \\"LocalStorageCapacity\\": 1000,\\n \\"Description\\": \\"testDescription\\",\\n \\"SpotDuration\\": 1,\\n \\"InstanceNetworkType\\": \\"vpc\\",\\n \\"InstanceName\\": \\"InstanceNameTest\\",\\n \\"OSNameEn\\": \\"CentOS 7.4 64 bit\\",\\n \\"HpcClusterId\\": \\"hpc-bp67acfmxazb4p****\\",\\n \\"SpotPriceLimit\\": 0.98,\\n \\"Memory\\": 16384,\\n \\"OSName\\": \\"CentOS 7.4 64 位\\",\\n \\"DeploymentSetGroupNo\\": 1,\\n \\"ImageId\\": \\"m-bp67acfmxazb4p****\\",\\n \\"VlanId\\": \\"10\\",\\n \\"ClusterId\\": \\"c-bp67acfmxazb4p****\\",\\n \\"ClockOptions\\": {\\n \\"PtpStatus\\": \\"\\"\\n },\\n \\"GPUSpec\\": \\"NVIDIA V100\\",\\n \\"AutoReleaseTime\\": \\"2017-12-10T04:04Z\\",\\n \\"DeletionProtection\\": false,\\n \\"StoppedMode\\": \\"KeepCharging\\",\\n \\"GPUAmount\\": 4,\\n \\"HostName\\": \\"testHostName\\",\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"InternetMaxBandwidthOut\\": 5,\\n \\"InternetMaxBandwidthIn\\": 50,\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"InstanceChargeType\\": \\"PostPaid\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"IoOptimized\\": true,\\n \\"StartTime\\": \\"2017-12-10T04:04Z\\",\\n \\"Cpu\\": 8,\\n \\"LocalStorageAmount\\": 2,\\n \\"ExpiredTime\\": \\"2017-12-10T04:04Z\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"Recyclable\\": false,\\n \\"ISP\\": \\"null\\",\\n \\"CreditSpecification\\": \\"Standard\\",\\n \\"InstanceTypeFamily\\": \\"ecs.g5\\",\\n \\"OSType\\": \\"linux\\",\\n \\"NetworkInterfaces\\": {\\n \\"NetworkInterface\\": [\\n {\\n \\"Type\\": \\"Primary\\",\\n \\"MacAddress\\": \\"00:16:3e:32:b4:**\\",\\n \\"PrimaryIpAddress\\": \\"172.17.**.***\\",\\n \\"NetworkInterfaceId\\": \\"eni-2zeh9atclduxvf1z****\\",\\n \\"PrivateIpSets\\": {\\n \\"PrivateIpSet\\": [\\n {\\n \\"PrivateIpAddress\\": \\"172.17.**.**\\",\\n \\"Primary\\": true,\\n \\"PrivateDnsName\\": \\"dnsTestName\\"\\n }\\n ]\\n },\\n \\"Ipv6Sets\\": {\\n \\"Ipv6Set\\": [\\n {\\n \\"Ipv6Address\\": \\"2408:4321:180:1701:94c7:bc38:3bfa:***\\"\\n }\\n ]\\n },\\n \\"Ipv4PrefixSets\\": {\\n \\"Ipv4PrefixSet\\": [\\n {\\n \\"Ipv4Prefix\\": \\"192.168.*.*/28\\"\\n }\\n ]\\n },\\n \\"Ipv6PrefixSets\\": {\\n \\"Ipv6PrefixSet\\": [\\n {\\n \\"Ipv6Prefix\\": \\"2001:1111:*:*::/80\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"OperationLocks\\": {\\n \\"LockReason\\": [\\n {\\n \\"LockMsg\\": \\"The specified instance is locked due to financial reason.\\",\\n \\"LockReason\\": \\"Recycling\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"RdmaIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"10.10.10.102\\"\\n ]\\n },\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-bp67acfmxazb4p****\\"\\n ]\\n },\\n \\"PublicIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"121.40.**.**\\"\\n ]\\n },\\n \\"InnerIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"10.170.**.**\\"\\n ]\\n },\\n \\"VpcAttributes\\": {\\n \\"VpcId\\": \\"vpc-2zeuphj08tt7q3brd****\\",\\n \\"NatIpAddress\\": \\"172.17.**.**\\",\\n \\"VSwitchId\\": \\"vsw-2zeh0r1pabwtg6wcs****\\",\\n \\"PrivateIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"172.17.**.**\\"\\n ]\\n }\\n },\\n \\"EipAddress\\": {\\n \\"IsSupportUnassociate\\": true,\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"IpAddress\\": \\"42.112.**.**\\",\\n \\"Bandwidth\\": 5,\\n \\"AllocationId\\": \\"eip-2ze88m67qx5z****\\"\\n },\\n \\"HibernationOptions\\": {\\n \\"Configured\\": false\\n },\\n \\"DedicatedHostAttribute\\": {\\n \\"DedicatedHostId\\": \\"dh-bp67acfmxazb4p****\\",\\n \\"DedicatedHostName\\": \\"testDedicatedHostName\\",\\n \\"DedicatedHostClusterId\\": \\"dc-bp67acfmxazb4h****\\"\\n },\\n \\"EcsCapacityReservationAttr\\": {\\n \\"CapacityReservationPreference\\": \\"cr-bp67acfmxazb4p****\\",\\n \\"CapacityReservationId\\": \\"cr-bp67acfmxazb4p****\\"\\n },\\n \\"DedicatedInstanceAttribute\\": {\\n \\"Affinity\\": \\"default\\",\\n \\"Tenancy\\": \\"default\\"\\n },\\n \\"CpuOptions\\": {\\n \\"Numa\\": \\"null\\",\\n \\"CoreCount\\": 2,\\n \\"ThreadsPerCore\\": 2,\\n \\"TopologyType\\": \\"DiscreteCoreToHTMapping\\",\\n \\"EnableVISST\\": false,\\n \\"TurboMode\\": \\"\\",\\n \\"EnableVRDT\\": false,\\n \\"NestedVirtualization\\": \\"enabled\\"\\n },\\n \\"MetadataOptions\\": {\\n \\"HttpEndpoint\\": \\"enabled\\",\\n \\"HttpPutResponseHopLimit\\": 0,\\n \\"HttpTokens\\": \\"optional\\",\\n \\"InstanceMetadataTags\\": \\"\\"\\n },\\n \\"ImageOptions\\": {\\n \\"LoginAsNonRoot\\": false,\\n \\"CurrentOSNVMeSupported\\": true\\n },\\n \\"SpotInterruptionBehavior\\": \\"Terminate\\",\\n \\"PrivateDnsNameOptions\\": {\\n \\"EnableInstanceIdDnsARecord\\": false,\\n \\"EnableInstanceIdDnsAAAARecord\\": false,\\n \\"EnableIpDnsARecord\\": true,\\n \\"EnableIpDnsPtrRecord\\": true,\\n \\"HostnameType\\": \\"Custom\\"\\n },\\n \\"AdditionalInfo\\": {\\n \\"EnableHighDensityMode\\": true,\\n \\"NodeSerialNumber\\": \\"\\"\\n },\\n \\"EnableNVS\\": false\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query detailed information of instances', 'description' => '### Before you begin'."\n" .'- When you invoke API operations by using Cloud Assistant CLI, make sure that request parameters of different data types are in the required formats. For more information, see [CLI parameter format](~~110340~~).'."\n" ."\n" .'### Usage notes'."\n" .'- Send a dry run request by using the DryRun request parameter to check the validity of parameters and authorization.'."\n" .'- When performing a paging query for the first page of results, set only `MaxResults` to limit the number of entries to return. The `NextToken` value in the response is used as the credential for querying subsequent pages. When performing a paging query for subsequent pages, set `NextToken` to the `NextToken` value obtained from the previous response and set `MaxResults` to limit the number of entries to return.', 'changeSet' => [ ['createdAt' => '2025-07-14T01:51:01.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-04-02T01:52:22.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-12-04T11:07:00.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-30T01:45:17.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-08-08T07:35:47.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-12-14T07:09:36.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-12-11T03:25:03.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-11-24T14:05:52.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2021-12-13T08:20:33.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-05-20T08:48:39.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeInstances', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'ResourceOwner', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'DescribeInstancesFullStatus' => [ 'summary' => 'Queries the full status information of one or more Elastic Compute Service (ECS) instances. The full status information includes the instance status and the status of instance system events. The instance status is the lifecycle status of instances. The status of instance system events is the health status of maintenance events.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29281', 'abilityTreeNodes' => ['FEATUREecsYLNQGM'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The lifecycle status of the instance. Valid values:'."\n" ."\n" .'- Starting'."\n" ."\n" .'- Running'."\n" ."\n" .'- Stopped', 'type' => 'string', 'required' => false, 'example' => 'Running', 'title' => ''], ], [ 'name' => 'HealthStatus', 'in' => 'query', 'schema' => ['description' => 'The health status of the instance. Valid values:'."\n" ."\n" .'- Impaired'."\n" ."\n" .'- Warning: The instance performance may be degraded due to maintenance or technical issues.'."\n" ."\n" .'- Maintaining'."\n" ."\n" .'- Initializing'."\n" ."\n" .'- InsufficientData'."\n" ."\n" .'- NotApplicable'."\n" ."\n" .'All the values are case-sensitive.', 'type' => 'string', 'required' => false, 'example' => 'Initializing', 'title' => ''], ], [ 'name' => 'EventType', 'in' => 'query', 'schema' => ['description' => 'The type of the system event. This parameter is valid only when InstanceEventType.N is not specified. Valid values:'."\n" ."\n" .'- SystemMaintenance.Reboot: The instance is restarted due to system maintenance.'."\n" ."\n" .'- SystemFailure.Reboot: The instance is restarted due to a system failure.'."\n" ."\n" .'- InstanceFailure.Reboot: The instance is restarted due to an instance failure.'."\n" ."\n" .'- InstanceExpiration.Stop: The subscription instance is stopped due to expiration.'."\n" ."\n" .'- InstanceExpiration.Delete: The subscription instance is released due to expiration.'."\n" ."\n" .'- AccountUnbalanced.Stop: The pay-as-you-go instance is stopped due to an overdue payment.'."\n" ."\n" .'- AccountUnbalanced.Delete: The pay-as-you-go instance is released due to an overdue payment.', 'type' => 'string', 'required' => false, 'example' => 'InstanceExpiration.Stop', 'title' => ''], ], [ 'name' => 'NotBefore.Start', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range during which O\\&M tasks related to scheduled system events are executed. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-12-07T00:00:00Z', 'title' => ''], ], [ 'name' => 'NotBefore.End', 'in' => 'query', 'schema' => ['description' => 'The end of the time range during which O\\&M tasks related to scheduled system events are executed. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-11-30T00:00:00Z', 'title' => ''], ], [ 'name' => 'EventPublishTime.Start', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range during which system events are published. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-11-30T00:00:00Z', 'title' => ''], ], [ 'name' => 'EventPublishTime.End', 'in' => 'query', 'schema' => ['description' => 'The end of the time range during which system events are published. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2017-12-07T00:00:00Z', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. The value must be a positive integer.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the instances. You can specify up to 100 instance IDs in a single request.', 'type' => 'array', 'items' => ['description' => 'The ID of instance N.', 'type' => 'string', 'required' => false, 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'i-bp67acfmxazb4p****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'EventId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the system events. You can specify up to 100 event IDs in a single request.', 'type' => 'array', 'items' => ['description' => 'The ID of the system event.', 'type' => 'string', 'required' => false, 'example' => 'e-bp1hygp5b04o56l0****', 'title' => ''], 'required' => false, 'example' => 'e-bp1hygp5b04o56l0****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'InstanceEventType', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The types of system events. You can specify up to 30 event types in a single request.', 'type' => 'array', 'items' => ['description' => 'The type of the system event. Valid values:'."\n" ."\n" .'- SystemMaintenance.Reboot: The instance is restarted due to system maintenance.'."\n" ."\n" .'- SystemMaintenance.Redeploy: The instance is redeployed due to system maintenance.'."\n" ."\n" .'- SystemFailure.Reboot: The instance is restarted due to a system error.'."\n" ."\n" .'- SystemFailure.Redeploy: The instance is redeployed due to a system error.'."\n" ."\n" .'- SystemFailure.Delete: The instance is released due to an instance creation failure.'."\n" ."\n" .'- InstanceFailure.Reboot: The instance is restarted due to an instance error.'."\n" ."\n" .'- InstanceExpiration.Stop: The subscription instance is stopped due to expiration.'."\n" ."\n" .'- InstanceExpiration.Delete: The subscription instance is released due to expiration.'."\n" ."\n" .'- AccountUnbalanced.Stop: The pay-as-you-go instance is stopped due to an overdue payment.'."\n" ."\n" .'- AccountUnbalanced.Delete: The pay-as-you-go instance is released due to an overdue payment.'."\n" ."\n" .'> For more information, see [Overview](~~66574~~). The values of this parameter are applicable only to instance system events, but not to disk system events.', 'type' => 'string', 'required' => false, 'example' => 'SystemMaintenance.Reboot', 'title' => ''], 'required' => false, 'example' => 'InstanceExpiration.Stop', 'maxItems' => 30, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'InstanceFullStatusSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceFullStatusType' => [ 'description' => 'The queried instances.'."\n" ."\n" .'> If no instances exist, this parameter is empty.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'ScheduledSystemEventSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ScheduledSystemEventType' => [ 'description' => 'The system events that are in the Scheduled or Inquiring state.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'EventPublishTime' => ['description' => 'The time when the system event was published. The time is displayed in UTC.', 'type' => 'string', 'example' => '2017-11-30T06:32:31Z', 'title' => ''], 'EventId' => ['description' => 'The system event ID.', 'type' => 'string', 'example' => 'e-bp1hygp5b04o56l0****', 'title' => ''], 'NotBefore' => ['description' => 'The scheduled time at which to execute the O\\&M task related to the system event. The time is displayed in UTC.', 'type' => 'string', 'example' => '2017-12-07T00:00:00Z', 'title' => ''], 'ImpactLevel' => ['description' => 'The impact level of the system event.'."\n" ."\n" .'> If the user is not in a whitelist, this parameter is empty.', 'type' => 'string', 'example' => '100', 'title' => ''], 'Reason' => ['description' => 'The reason why the system event was scheduled.'."\n" ."\n" .'> If the exception cause is not detected, this parameter is empty.', 'type' => 'string', 'example' => 'A simulated event.', 'title' => ''], 'EventCycleStatus' => [ 'description' => 'The state of the system event.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the system event state.', 'type' => 'string', 'example' => 'Scheduled', 'title' => ''], 'Code' => ['description' => 'The code of the system event state.', 'type' => 'integer', 'format' => 'int32', 'example' => '24', 'title' => ''], ], 'title' => '', 'example' => '', ], 'EventType' => [ 'description' => 'The type of the system event.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the system event type.', 'type' => 'string', 'example' => 'SystemMaintenance.Reboot', 'title' => ''], 'Code' => ['description' => 'The code of the system event type.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ExtendedAttribute' => [ 'description' => 'The extended attributes of system events generated for instances that have local disks attached.'."\n" ."\n" .'The return values vary based on the system event type.'."\n" ."\n" .'If the system event type is not one of the following types, this parameter is empty:'."\n" ."\n" .'- SystemMaintenance.StopAndRepair'."\n" ."\n" .'- SystemMaintenance.CleanInactiveDisks'."\n" ."\n" .'- SecurityPunish.Locked'."\n" ."\n" .'- SecurityPunish.WebsiteBanned'."\n" ."\n" .'- SystemUpgrade.Migrate'."\n" ."\n" .'- SystemMaintenance.RebootAndIsolateErrorDisk'."\n" ."\n" .'- SystemMaintenance.RebootAndReInitErrorDisk'."\n" ."\n" .'- SystemMaintenance.ReInitErrorDisk'."\n" ."\n" .'- SystemMaintenance.IsolateErrorDisk', 'type' => 'object', 'properties' => [ 'Device' => ['description' => 'The device name of the local disk.', 'type' => 'string', 'example' => '/dev/vdb', 'title' => ''], 'DiskId' => ['description' => 'The ID of the local disk.', 'type' => 'string', 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], 'InactiveDisks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InactiveDisk' => [ 'description' => 'The inactive disks that have been released and must be cleared.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the disk was created. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2018-07-27T13:53:25Z', 'title' => ''], 'DeviceSize' => ['description' => 'The size of the disk. Unit: GiB.', 'type' => 'string', 'example' => '80', 'title' => ''], 'DeviceCategory' => ['description' => 'The category of the disk. Valid values:'."\n" ."\n" .'- cloud: basic disk'."\n" ."\n" .'- cloud\\_efficiency: ultra disk'."\n" ."\n" .'- cloud\\_ssd: standard SSD'."\n" ."\n" .'- cloud\\_essd: Enterprise SSD (ESSD)'."\n" ."\n" .'- local\\_ssd\\_pro: I/O-intensive local disk'."\n" ."\n" .'- local\\_hdd\\_pro: throughput-intensive local disk'."\n" ."\n" .'- ephemeral: retired local disk'."\n" ."\n" .'- ephemeral\\_ssd: retired local SSD', 'type' => 'string', 'example' => 'cloud_ssd', 'title' => ''], 'DeviceType' => ['description' => 'The type of the disk. Valid values:'."\n" ."\n" .'- system'."\n" ."\n" .'- data', 'type' => 'string', 'example' => 'system', 'title' => ''], 'ReleaseTime' => ['description' => 'The time when the disk was released. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2019-07-27T13:53:25Z', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Status' => [ 'description' => 'The lifecycle state of the instance.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the instance lifecycle state.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'Code' => ['description' => 'The code of the instance lifecycle state.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'HealthStatus' => [ 'description' => 'The health state of the instance.', 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the health state.', 'type' => 'string', 'example' => 'Warning', 'title' => ''], 'Code' => ['description' => 'The code of the health state.', 'type' => 'integer', 'format' => 'int32', 'example' => '64', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.TimeEndBeforeStart', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Make sure that the end time is later than the start time.'], ['errorCode' => 'OperationDenied.NotInWhiteList', 'errorMessage' => '%s', 'description' => 'You are not authorized to perform this operation. Try again when you are authorized.'], ['errorCode' => 'InstanceIdLimitExceeded', 'errorMessage' => '%s', 'description' => 'More than 100 instance IDs are specified.'], ['errorCode' => 'EventIdLimitExceeded', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeInstancesFullStatus', 'description' => '## [](#)Usage notes'."\n" ."\n" .'The response includes the instance status and the instance system events that are in the Scheduled state.'."\n" ."\n" .'You can specify a period of time to query events that occurred within the period of time.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '200', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInstancesFullStatus'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeInstancesFullStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"InstanceFullStatusSet\\": {\\n \\"InstanceFullStatusType\\": [\\n {\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"ScheduledSystemEventSet\\": {\\n \\"ScheduledSystemEventType\\": [\\n {\\n \\"EventPublishTime\\": \\"2017-11-30T06:32:31Z\\",\\n \\"EventId\\": \\"e-bp1hygp5b04o56l0****\\",\\n \\"NotBefore\\": \\"2017-12-07T00:00:00Z\\",\\n \\"ImpactLevel\\": \\"100\\",\\n \\"Reason\\": \\"A simulated event.\\",\\n \\"EventCycleStatus\\": {\\n \\"Name\\": \\"Scheduled\\",\\n \\"Code\\": 24\\n },\\n \\"EventType\\": {\\n \\"Name\\": \\"SystemMaintenance.Reboot\\",\\n \\"Code\\": 1\\n },\\n \\"ExtendedAttribute\\": {\\n \\"Device\\": \\"/dev/vdb\\",\\n \\"DiskId\\": \\"d-bp67acfmxazb4p****\\",\\n \\"InactiveDisks\\": {\\n \\"InactiveDisk\\": [\\n {\\n \\"CreationTime\\": \\"2018-07-27T13:53:25Z\\",\\n \\"DeviceSize\\": \\"80\\",\\n \\"DeviceCategory\\": \\"cloud_ssd\\",\\n \\"DeviceType\\": \\"system\\",\\n \\"ReleaseTime\\": \\"2019-07-27T13:53:25Z\\"\\n }\\n ]\\n }\\n }\\n }\\n ]\\n },\\n \\"Status\\": {\\n \\"Name\\": \\"Running\\",\\n \\"Code\\": 1\\n },\\n \\"HealthStatus\\": {\\n \\"Name\\": \\"Warning\\",\\n \\"Code\\": 64\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribeInvocationResults' => [ 'summary' => 'Queries the execution results of one or more Cloud Assistant commands, which are the actual execution results on ECS instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29282', 'abilityTreeNodes' => ['FEATUREecsPW0L5N'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID of the command execution. After you specify this parameter, the resource group ID must also be specified when you run the command. This parameter filters the corresponding command execution results.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InvokeId', 'in' => 'query', 'schema' => ['description' => 'The command execution ID. You can call [DescribeInvocations](~~64840~~) to query the InvokeId.', 'type' => 'string', 'required' => false, 'example' => 't-hz0jdfwd9f****', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1i7gg30r52z2em****', 'title' => ''], ], [ 'name' => 'CommandId', 'in' => 'query', 'schema' => ['description' => 'The command ID.', 'type' => 'string', 'required' => false, 'example' => 'c-hz0jdfwcsr****', 'title' => ''], ], [ 'name' => 'InvokeRecordStatus', 'in' => 'query', 'schema' => ['description' => 'The execution status of the command. Valid values:'."\n" ."\n" .'- Running: The command is running.'."\n" .' - Scheduled execution: The execution status remains running until you manually stop the scheduled command.'."\n" .' - One-time execution: The overall execution status is running as long as any command process is running.'."\n" .'- Finished: The command execution is complete.'."\n" .' - Scheduled execution: The command process cannot have a status of finished.'."\n" .' - One-time execution: All instances have completed execution, or you manually stopped the command process on some instances and the remaining instances have completed execution.'."\n" .'- Success:'."\n" .' - One-time execution: The command execution is complete and the exit code is 0.'."\n" .' - Scheduled execution: The last execution succeeded with an exit code of 0, and the specified execution time has ended.'."\n" .'- Failed: The command execution failed.'."\n" .' - Scheduled execution: The command process cannot have a status of failed.'."\n" .' - One-time execution: The command execution failed on all instances.'."\n" .'- PartialFailed: The command execution partially failed.'."\n" .' - Scheduled execution: The command process cannot have a status of partially failed.'."\n" .' - One-time execution: The command execution failed on some instances, so the overall execution status is partially failed.'."\n" .'- Stopped: The command execution has been stopped.'."\n" .'- Stopping: The command execution is being stopped.', 'type' => 'string', 'required' => false, 'example' => 'Running', 'title' => ''], ], [ 'name' => 'IncludeHistory', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return the execution history of scheduled commands. Valid values:'."\n" ."\n" .' - true: Returns the execution results of scheduled commands. When this parameter is set to true, the InvokeId parameter is required and must be the execution ID of a scheduled command (RepeatMode is Period) or a command that runs at each system startup (RepeatMode is EveryReboot).'."\n" .' - false: Does not return the execution history.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ContentEncoding', 'in' => 'query', 'schema' => ['description' => 'The encoding method of the `CommandContent` and `Output` fields in the response. Valid values:'."\n" .'- PlainText: Returns the original command content and output.'."\n" .'- Base64: Returns the Base64-encoded command content and output.'."\n" ."\n" .'Default value: Base64.', 'type' => 'string', 'required' => false, 'example' => 'PlainText', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to go offline. Use NextToken and MaxResults to complete paging query operations.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to go offline. Use NextToken and MaxResults to complete paging query operations.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page in a paging query.'."\n" ."\n" .'Maximum value: 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The tag value of the command execution. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'Key' => ['description' => 'The tag key of the command execution. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If you use a single tag to filter resources, the number of resources with this tag cannot exceed 1,000. If you use multiple tags to filter resources, the number of resources with all specified tags attached cannot exceed 1,000. If the number of resources exceeds 1,000, call [ListTagResources](~~110425~~) to execute the query.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE*****', 'title' => ''], 'Invocation' => [ 'description' => 'The collection of command execution results.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page. This value is the PageSize value specified in the paging query settings.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of commands.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'InvocationResults' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InvocationResult' => [ 'description' => 'The command execution result set.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Dropped' => ['description' => 'The length of the truncated and discarded text after the text length in the `Output` field exceeds 24 KB.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'OssOutputDelivery' => ['description' => 'The OSS delivery configuration for the command execution output.', 'type' => 'string', 'example' => 'oss://testBucket/testPrefix', 'title' => ''], 'InvocationStatus' => ['description' => 'The execution status of the command on a single instance. Valid values:'."\n" .'- Pending: The system is validating or sending the command.'."\n" .'- Invalid: The specified command type or parameter is invalid.'."\n" .'- Aborted: Failed to send the command to the instance. The instance must be running, and the command must be deliverable within 1 minute.'."\n" .'- Running: The command is being executed on the instance.'."\n" .'- Success:'."\n" .' - One-time execution: The command execution is complete and the exit code is 0.'."\n" .' - Scheduled execution: The last execution succeeded with an exit code of 0, and the specified execution time has ended.'."\n" .'- Failed:'."\n" .' - One-time execution: The command execution is complete and the exit code is non-zero.'."\n" .' - Scheduled execution: The last execution succeeded with a non-zero exit code, and the specified execution time will be terminated.'."\n" .'- Error: An exception occurred during command execution and the command cannot continue.'."\n" .'- Timeout: The command execution timed out.'."\n" .'- Cancelled: The command execution action has been canceled and the command was never started.'."\n" .'- Stopping: The command execution is being stopped.'."\n" .'- Terminated: The command was terminated during execution.'."\n" .'- Scheduled:'."\n" .' - One-time execution: Not applicable. This value does not occur.'."\n" .' - Scheduled execution: Waiting for execution.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1i7gg30r52z2em****', 'title' => ''], 'ExitCode' => ['description' => 'The exit code of the command.'."\n" ."\n" .'- For Linux instances, this is the exit code of the shell command.'."\n" .'- For Windows instances, this is the exit code of the Bat or PowerShell command.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'ErrorInfo' => ['description' => 'The details of the command delivery failure or execution failure. Valid values:'."\n" .'- Empty: The command ran normally.'."\n" .'- The security group rules denied access to the aliyun service: The security group rules denied access to the Cloud Assistant service.'."\n" .'- The specified instance does not exist: The specified instance does not exist or has been released.'."\n" .'- The specified instance was released during task execution: The instance was released during command execution.'."\n" .'- The specified instance was not running during task execution: The instance was not running when command execution started.'."\n" .'- The OS type of the instance does not support the specified command type: The command is not applicable to the specified instance.'."\n" .'- The specified account does not exist: The specified account does not exist.'."\n" .'- The specified directory does not exist: The specified directory does not exist.'."\n" .'- The cron expression is invalid: The specified cron expression is invalid.'."\n" .'- The aliyun service is not running on the instance: Cloud Assistant Agent is not running.'."\n" .'- The aliyun service in the instance does not response: Cloud Assistant Agent is not responding.'."\n" .'- The aliyun service in the instance is upgrading during task execution: Cloud Assistant Agent is being upgraded.'."\n" .'- The aliyun service in the instance need to be upgraded to at least version to support the feature: Cloud Assistant Agent needs to be upgraded. is the minimum supported version for the feature, and is the specific feature.'."\n" .'- The command delivery has been timeout: The command delivery timed out.'."\n" .'- The command execution has been timeout: The command execution timed out.'."\n" .'- The command execution got an exception: An exception occurred during command execution.'."\n" .'- The command execution exit code is not zero: The command execution completed with a non-zero exit code.'."\n" .'- The specified instance was released during task execution: The instance was released during file delivery.', 'type' => 'string', 'example' => 'the specified instance does not exists', 'title' => ''], 'StartTime' => ['description' => 'The time when the command started to be executed on the instance.', 'type' => 'string', 'example' => '2019-12-20T06:15:55Z', 'title' => ''], 'Repeats' => ['description' => 'The number of times the command was executed on the instance.'."\n" .'- If the execution mode is one-time execution, the value is 0 or 1.'."\n" .'- If the execution mode is scheduled execution, the value is the number of times the command has been executed.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InvokeRecordStatus' => ['description' => 'The execution status of the command. Valid values:'."\n" ."\n" .'- Running: The command is running.'."\n" .' - Scheduled execution: The execution status remains running until you manually stop the scheduled command.'."\n" .' - One-time execution: The overall execution status is running as long as any command process is running.'."\n" .'- Finished: The command execution is complete.'."\n" .' - Scheduled execution: The command process cannot have a status of finished.'."\n" .' - One-time execution: All instances have completed execution, or you manually stopped the command process on some instances and the remaining instances have completed execution.'."\n" .'- Failed: The command execution failed.'."\n" .' - Scheduled execution: The command process cannot have a status of failed.'."\n" .' - One-time execution: The command execution failed on all instances.'."\n" .'- PartialFailed: The command execution partially failed.'."\n" .' - Scheduled execution: The command process cannot have a status of partially failed.'."\n" .' - One-time execution: The command execution failed on some instances, so the overall execution status is partially failed.'."\n" .'- Stopped: The command execution has been stopped.'."\n" .'- Stopping: The command execution is being stopped.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'FinishedTime' => ['description' => 'The time when the command execution was complete. If the command execution timed out, the completion time is calculated as `StartTime` plus the timeout period `Timeout`.', 'type' => 'string', 'example' => '2019-12-20T06:15:56Z', 'title' => ''], 'OssOutputUri' => ['description' => 'The URI of the file in OSS to which the command execution output was delivered. This field is an empty string when the delivery is in progress or has failed.', 'type' => 'string', 'example' => 'oss://testBucket/testPrefix/output.txt', 'title' => ''], 'OssOutputStatus' => ['description' => 'The delivery status of the command execution output. Valid values:'."\n" ."\n" .'- InProgress: The delivery is in progress.'."\n" ."\n" .'- Finished: The delivery is complete.'."\n" ."\n" .'- Failed: The delivery failed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'OssOutputErrorCode' => ['description' => 'The error code returned when the delivery fails. This field is returned only when OssOutputStatus is Failed.'."\n" .'Valid values:'."\n" .'- CloudAssistant.UnsupportedInvocationStatus: The task status does not support delivery.'."\n" .'- CloudAssistant.ClientNeedUpgrade: The Cloud Assistant Agent version does not support delivery. The Cloud Assistant Agent version on Linux instances must be later than 2.2.4.1007, and the version on Windows instances must be later than 2.1.4.1007.'."\n" .'- OSS.AccessDenied: The user does not have access permissions on the specified Bucket.'."\n" .'- OSS.NoSuchBucket: The specified Bucket does not exist.'."\n" .'- OSS.FileImmutable: The data in the Bucket is in a protected state.'."\n" .'- OSS.InvalidObjectName: The object name is invalid, including an unspecified object name, an object name that exceeds the length limit, or an invalid object name.', 'type' => 'string', 'example' => 'CloudAssistant.UnsupportedInvocationStatus', 'title' => ''], 'OssOutputErrorInfo' => ['description' => 'The error details returned when the delivery fails. This field is returned only when OssOutputStatus is Failed.', 'type' => 'string', 'example' => 'The invocation status does not support output delivery.', 'title' => ''], 'Username' => ['description' => 'The username used to execute the command on the ECS instance.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'ContainerId' => ['description' => 'The container ID.', 'type' => 'string', 'example' => 'ab141ddfbacfe02d9dbc25966ed971536124527097398d419a6746873fea****', 'title' => ''], 'ContainerName' => ['description' => 'The container name.', 'type' => 'string', 'example' => 'test-container', 'title' => ''], 'Output' => ['description' => 'The output of the command execution.'."\n" ."\n" .'- If ContentEncoding is set to PlainText, the original output is returned.'."\n" .'- If ContentEncoding is set to Base64, the Base64-encoded output is returned.', 'type' => 'string', 'example' => 'MTU6MzA6MDEK', 'title' => ''], 'Launcher' => ['description' => 'The bootstrap program for script execution. The value can be up to 1 KB in length.', 'type' => 'string', 'example' => 'python3 -u {{ACS::ScriptFileName|Ext(".py")}}', 'title' => ''], 'CommandId' => ['description' => 'The command ID.', 'type' => 'string', 'example' => 'c-hz0jdfwcsr****', 'title' => ''], 'ErrorCode' => ['description' => 'The error code for the command delivery failure or execution failure. Valid values:'."\n" .'- Empty: The command executed normally.'."\n" .'- InstanceNotExists: The specified instance does not exist or has been released.'."\n" .'- InstanceReleased: The instance was released during concurrent execution.'."\n" .'- InstanceNotRunning: The instance was not running during concurrent execution.'."\n" .'- CommandNotApplicable: The command is not applicable to the specified instance.'."\n" .'- AccountNotExists: The specified username for concurrent execution does not exist.'."\n" .'- DirectoryNotExists: The specified directory does not exist.'."\n" .'- BadCronExpression: The specified cron expression is invalid.'."\n" .'- ClientNotRunning: Cloud Assistant Agent is not running.'."\n" .'- ClientNotResponse: Cloud Assistant Agent is not responding.'."\n" .'- ClientIsUpgrading: Cloud Assistant Agent is being upgraded.'."\n" .'- ClientNeedUpgrade: Cloud Assistant Agent needs to be upgraded.'."\n" .'- DeliveryTimeout: The command delivery timed out.'."\n" .'- ExecutionTimeout: The concurrent execution timed out.'."\n" .'- ExecutionException: An exception occurred during concurrent execution.'."\n" .'- ExecutionInterrupted: The concurrent execution was interrupted.'."\n" .'- ExitCodeNonzero: The concurrent execution completed with a non-zero exit code.'."\n" .'- SecurityGroupRuleDenied: The security group rules denied access to the Cloud Assistant service.'."\n" .'- TaskConcurrencyLimit: The number of concurrent task executions exceeded the maximum quota.', 'type' => 'string', 'example' => 'InstanceNotExists', 'title' => ''], 'InvokeId' => ['description' => 'The command execution ID.', 'type' => 'string', 'example' => 't-hz0jdfwd9f****', 'title' => ''], 'TerminationMode' => ['description' => 'The mode used when the task is stopped (manually stopped or interrupted due to timeout). Valid values:'."\n" .'- Process: Stops the current script process.'."\n" .'- ProcessTree: Stops the current process tree (the collection of the script process and all child processes it created).', 'type' => 'string', 'example' => 'ProcessTree', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tag information of the command execution.', 'type' => 'array', 'items' => [ 'description' => 'The tag information of the command execution.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key of the command execution.', 'type' => 'string', 'example' => 'owner', 'title' => ''], 'TagValue' => ['description' => 'The tag value of the command execution.', 'type' => 'string', 'example' => 'zhangsan', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'StopTime' => ['description' => 'The time when `StopInvocation` was called to stop the command execution.', 'type' => 'string', 'example' => '2020-01-19T09:15:47Z', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The Tags parameter number is exceed.', 'description' => 'The number of tags exceeds the maximum limit.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'MissingParameter.TagKey', 'errorMessage' => 'You must specify Tag.N.Key.', 'description' => 'The tag key is not specified.'], ['errorCode' => 'InvalidParam.PageNumber', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.PageSize', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE*****\\",\\n \\"Invocation\\": {\\n \\"PageSize\\": 1,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"InvocationResults\\": {\\n \\"InvocationResult\\": [\\n {\\n \\"Dropped\\": 0,\\n \\"OssOutputDelivery\\": \\"oss://testBucket/testPrefix\\",\\n \\"InvocationStatus\\": \\"Success\\",\\n \\"InstanceId\\": \\"i-bp1i7gg30r52z2em****\\",\\n \\"ExitCode\\": 0,\\n \\"ErrorInfo\\": \\"the specified instance does not exists\\",\\n \\"StartTime\\": \\"2019-12-20T06:15:55Z\\",\\n \\"Repeats\\": 0,\\n \\"InvokeRecordStatus\\": \\"Running\\",\\n \\"FinishedTime\\": \\"2019-12-20T06:15:56Z\\",\\n \\"OssOutputUri\\": \\"oss://testBucket/testPrefix/output.txt\\",\\n \\"OssOutputStatus\\": \\"Finished\\",\\n \\"OssOutputErrorCode\\": \\"CloudAssistant.UnsupportedInvocationStatus\\",\\n \\"OssOutputErrorInfo\\": \\"The invocation status does not support output delivery.\\",\\n \\"Username\\": \\"test\\",\\n \\"ContainerId\\": \\"ab141ddfbacfe02d9dbc25966ed971536124527097398d419a6746873fea****\\",\\n \\"ContainerName\\": \\"test-container\\",\\n \\"Output\\": \\"MTU6MzA6MDEK\\",\\n \\"Launcher\\": \\"python3 -u {{ACS::ScriptFileName|Ext(\\\\\\".py\\\\\\")}}\\",\\n \\"CommandId\\": \\"c-hz0jdfwcsr****\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\",\\n \\"InvokeId\\": \\"t-hz0jdfwd9f****\\",\\n \\"TerminationMode\\": \\"ProcessTree\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagKey\\": \\"owner\\",\\n \\"TagValue\\": \\"zhangsan\\"\\n }\\n ]\\n },\\n \\"StopTime\\": \\"2020-01-19T09:15:47Z\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', 'title' => 'Query Cloud assistant command execution results', 'description' => '## Operation description'."\n" ."\n" .'- After you run a command, the command is not guaranteed to succeed or produce the expected results. Call this operation to view the actual execution results based on the actual output.'."\n" .'- You can query execution information from the last 30 days. A maximum of 10,000 entries of execution information can be retained.'."\n" .'- You can use [Cloud Assistant task status event subscription](~~2669130~~) to obtain task results through events, which avoids frequent polling and improves efficiency.'."\n" .'- When paged query the first page, set only MaxResults to limit the number of entries to return. The NextToken value in the response serves as the token for querying subsequent pages. When paged query subsequent pages, set NextToken to the NextToken value obtained from the previous response and set MaxResults to limit the number of entries to return.'."\n" ."\n" .'- Differences between `DescribeInvocations` and `DescribeInvocationResults`:'."\n" .' - When a single `RunCommand`/`InvokeCommand` call specifies multiple instances:'."\n" .' - `DescribeInvocations` returns the execution status on each instance and the aggregated status across all instances.'."\n" .' - `DescribeInvocationResults` returns only the individual execution status on each instance, without the aggregated status across instances.'."\n" .' - When a single `RunCommand`/`InvokeCommand` call specifies one instance:'."\n" .' - `DescribeInvocations` and `DescribeInvocationResults` are largely interchangeable.'."\n" .' - When you want to view the execution history of scheduled (periodic) tasks or tasks that run at each system startup (`RepeatMode=Period, EveryReboot`), only `DescribeInvocationResults` can return historical execution records (you must specify `IncludeHistory=true`). `DescribeInvocations` returns only the latest task status.'."\n" .' - When you want to view the command content and parameters, only `DescribeInvocations` returns `CommandContent`.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-07-31T03:46:24.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-08-01T03:41:24.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-05-14T05:37:22.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-12-21T01:35:08.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-05-12T05:58:06.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-10-28T04:41:59.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-09-09T05:53:51.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-08-17T01:45:30.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-02-25T07:28:10.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInvocationResults'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInvocationResults', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Command', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:command/{#commandId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'DescribeInvocations' => [ 'summary' => 'Queries the execution list and status of Cloud Assistant commands.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29283', 'abilityTreeNodes' => ['FEATUREecsPW0L5N'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The resource group ID for command execution. After you specify this parameter, the resource group ID must also be specified when you run the command. This parameter filters the corresponding command execution results.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InvokeId', 'in' => 'query', 'schema' => ['description' => 'The command execution ID.', 'type' => 'string', 'required' => false, 'example' => 't-hz0jdfwd9f****', 'title' => ''], ], [ 'name' => 'CommandId', 'in' => 'query', 'schema' => ['description' => 'The command ID. You can call [DescribeCommands](~~64843~~) to query all available command IDs.', 'type' => 'string', 'required' => false, 'example' => 'c-hz0jdfwcsr****', 'title' => ''], ], [ 'name' => 'CommandName', 'in' => 'query', 'schema' => ['description' => 'The command name. This parameter does not take effect if you also specify InstanceId.', 'type' => 'string', 'required' => false, 'example' => 'CommandTestName', 'title' => ''], ], [ 'name' => 'CommandType', 'in' => 'query', 'schema' => ['description' => 'The command type. Valid values:'."\n" ."\n" .'- RunBatScript: Bat script that runs on Windows instances.'."\n" .'- RunPowerShellScript: PowerShell script that runs on Windows instances.'."\n" .'- RunShellScript: Shell script that runs on Linux instances.', 'type' => 'string', 'required' => false, 'example' => 'RunShellScript', 'title' => ''], ], [ 'name' => 'Timed', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the queried commands will be automatically run in the future. Valid values:'."\n" ."\n" .'- true: queries commands whose RepeatMode parameter is set to Period, NextRebootOnly, or EveryReboot when RunCommand or InvokeCommand is called.'."\n" .'- false: queries commands in the following states:'."\n" .' - Commands whose RepeatMode parameter is set to Once when RunCommand or InvokeCommand is called.'."\n" .' - Commands that have been canceled, stopped, or completed.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'InvokeStatus', 'in' => 'query', 'schema' => ['description' => 'The overall execution status of the command. The overall execution status is determined by the combined execution status across one or more instances. Valid values: '."\n" .' '."\n" .'- Running:'."\n" .' - Scheduled execution: The execution status remains Running until you manually stop the scheduled command.'."\n" .' - One-time execution: The overall status is Running if any command process is in progress.'."\n" .'- Finished:'."\n" .' - Scheduled execution: The status can never be Finished.'."\n" .' - One-time execution: All instances have completed execution, or you manually stopped the command process on some instances while the remaining instances completed execution.'."\n" .'- Success: The command execution status on each instance is Stopped or Success, and at least one instance has a status of Success. The overall status is then Success.'."\n" .' - Immediate task: The command execution is complete and the exit code is 0.'."\n" .' - Scheduled task: The most recent execution succeeded with an exit code of 0, and all specified execution times have elapsed.'."\n" .'- Failed:'."\n" .' - Scheduled execution: The status can never be Failed.'."\n" .' - One-time execution: All instances failed to run the command.'."\n" .'- Stopped: The command has been stopped.'."\n" .'- Stopping: The command is being stopped.'."\n" .'- PartialFailed: Some instances succeeded while others failed. This value does not take effect if you also specify InstanceId.'."\n" .'- Pending: The system is validating or sending the command. The overall status is Pending if at least one instance has a status of Pending.'."\n" .'- Scheduled: The scheduled command has been sent and is waiting to run. The overall status is Scheduled if at least one instance has a status of Scheduled.', 'type' => 'string', 'required' => false, 'example' => 'Finished', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. If you specify this parameter, all command execution records for the instance are queried.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1i7gg30r52z2em****', 'title' => ''], ], [ 'name' => 'ContentEncoding', 'in' => 'query', 'schema' => ['description' => 'The encoding mode of the CommandContent and Output fields in the response. Valid values:'."\n" ."\n" .'- PlainText: Returns the original command content and output.'."\n" .'- Base64: Returns Base64-encoded command content and output.'."\n" ."\n" .'Default value: Base64.', 'type' => 'string', 'required' => false, 'example' => 'PlainText', 'title' => ''], ], [ 'name' => 'IncludeOutput', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to return the command output in the results.'."\n" ."\n" .'- true: The command output is returned. You must specify at least InvokeId or InstanceId.'."\n" .'- false: The command output is not returned.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults to complete paging operations.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults to complete paging operations.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for paging.'."\n" ."\n" .'Maximum value: 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2', 'title' => ''], ], [ 'name' => 'RepeatMode', 'in' => 'query', 'schema' => ['description' => 'The execution mode of the command. This parameter does not take effect if you also specify InstanceId. Valid values:'."\n" ."\n" .'- Once: immediately runs the command.'."\n" .'- Period: runs the command on a schedule.'."\n" .'- NextRebootOnly: automatically runs the command the next time the instance starts.'."\n" .'- EveryReboot: automatically runs the command every time the instance starts.'."\n" ."\n" .'Default value: empty, which indicates that all execution modes are queried.', 'type' => 'string', 'required' => false, 'example' => 'Once', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The tag value of the command execution. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'Key' => ['description' => 'The tag key of the command execution. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the specified tag cannot exceed 1,000. If you use multiple tags to filter resources, the resource count with all specified tags attached cannot exceed 1,000. If the resource count exceeds 1,000, call [ListTagResources](~~110425~~) to execute the query.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the query results.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of commands.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'Invocations' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Invocation' => [ 'description' => 'The command execution records.', 'type' => 'array', 'items' => [ 'description' => 'The time when the task was created.', 'type' => 'object', 'properties' => [ 'OssOutputDelivery' => ['description' => 'The OSS delivery configuration for the command execution output.', 'type' => 'string', 'example' => 'oss://testBucket/testPrefix', 'title' => ''], 'InvocationStatus' => ['description' => 'The overall execution status of the command. The overall execution status is determined by the combined execution status across all instances in this call. Valid values:'."\n" .'- Pending: The system is validating or sending the command. The overall status is Pending if at least one instance has a status of Pending.'."\n" .'- Scheduled: The scheduled command has been sent and is waiting to run. The overall status is Scheduled if at least one instance has a status of Scheduled.'."\n" .'- Running: The command is running on the instances. The overall status is Running if at least one instance has a status of Running.'."\n" .'- Success: The command execution status on each instance is Stopped or Success, and at least one instance has a status of Success. The overall status is then Success.'."\n" .' - Immediate task: The command execution is complete and the exit code is 0.'."\n" .' - Scheduled task: The most recent execution succeeded with an exit code of 0, and all specified execution times have elapsed.'."\n" .'- Failed: The command execution status on each instance is Stopped or Failed. The overall status is then Failed. The status is Failed if one or more of the following conditions are met on the instances:'."\n" .' - Command validation failed (Invalid).'."\n" .' - Command delivery failed (Aborted).'."\n" .' - Command execution completed with a non-zero exit code (Failed).'."\n" .' - Command execution timed out (Timeout).'."\n" .' - Command execution encountered an exception (Error).'."\n" .'- Stopping: The task is being stopped. The overall status is Stopping if at least one instance has a status of Stopping.'."\n" .'- Stopped: The task has been stopped. The overall status is Stopped if all instances have a status of Stopped. The status is Stopped if one of the following conditions is met on the instances:'."\n" .' - The task was canceled (Cancelled).'."\n" .' - The task was terminated (Terminated).'."\n" .'- PartialFailed: Some instances succeeded while others failed. The overall status is PartialFailed if the command execution status on each instance is Success, Failed, or Stopped.'."\n" ."\n" .'> The InvokeStatus response parameter has a similar meaning, but we recommend that you check this parameter instead.', 'type' => 'string', 'example' => 'Running', 'title' => ''], 'Parameters' => ['description' => 'The custom parameters in the command.', 'type' => 'string', 'example' => '{}', 'title' => ''], 'Timed' => ['description' => 'Indicates whether the queried command will be automatically run in the future.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'CommandDescription' => ['description' => 'The command description.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'Timeout' => ['description' => 'The maximum timeout period for the command to run on the ECS instance. Unit: seconds.'."\n" ."\n" .'If the command cannot be run for any reason, a timeout occurs. The command process is then forcefully terminated by canceling the PID of the command.', 'type' => 'integer', 'format' => 'int64', 'example' => '60', 'title' => ''], 'InvokeInstances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InvokeInstance' => [ 'description' => 'The target instance set type for execution.', 'type' => 'array', 'items' => [ 'description' => 'The execution status list.', 'type' => 'object', 'properties' => [ 'Dropped' => ['description' => 'The length of the truncated and discarded text after the text length in the Output field exceeds 24 KB.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InvocationStatus' => ['description' => 'The command execution status on a single instance. Valid values:'."\n" .'- Pending: The system is validating or sending the command.'."\n" .'- Invalid: The specified command type or parameters are invalid.'."\n" .'- Aborted: Failed to send the command to the instance. The instance must be running, and the command must be deliverable within 1 minute.'."\n" .'- Running: The command is running on the instance.'."\n" .'- Success:'."\n" .' - One-time execution: The command execution is complete and the exit code is 0.'."\n" .' - Scheduled execution: The most recent execution succeeded with an exit code of 0, and the specified schedule has ended.'."\n" .'- Failed:'."\n" .' - One-time execution: The command execution is complete and the exit code is non-zero.'."\n" .' - Scheduled execution: The most recent execution completed with a non-zero exit code, and the specified schedule will be aborted.'."\n" .'- Error: An exception occurred during command execution and the command cannot continue.'."\n" .'- Timeout: The command execution timed out.'."\n" .'- Cancelled: The execution action has been canceled and the command was never started.'."\n" .'- Stopping: The task is being stopped.'."\n" .'- Terminated: The command was terminated during execution.'."\n" .'- Scheduled:'."\n" .' - One-time execution: Not applicable. This value does not occur.'."\n" .' - Scheduled execution: Waiting to run.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1i7gg30r52z2em****', 'title' => ''], 'Timed' => ['description' => 'Indicates whether the queried command will be automatically run in the future.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'InstanceInvokeStatus' => ['description' => 'The command execution status on a single instance.'."\n" ."\n" .'> We recommend that you check the InvocationStatus parameter instead of this parameter.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'ExitCode' => ['description' => 'The exit code of the command process. Valid values:'."\n" ."\n" .'- For Linux instances, the exit code of the Shell process.'."\n" .'- For Windows instances, the exit code of the Bat or PowerShell process.', 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'ErrorInfo' => ['description' => 'The details of the command delivery failure or execution failure. Valid values:'."\n" .'- Empty: The command ran normally.'."\n" .'- The security group rules denied access to the aliyun service: A security group rule denied access to the Cloud Assistant service.'."\n" .'- The specified instance does not exist: The specified instance does not exist or has been released.'."\n" .'- The specified instance was released during task execution: The instance was released during command execution.'."\n" .'- The specified instance was not running during task execution: The instance was not running when the command started to run.'."\n" .'- The OS type of the instance does not support the specified command type: The command is not applicable to the specified instance.'."\n" .'- The specified account does not exist: The specified account does not exist.'."\n" .'- The specified directory does not exist: The specified directory does not exist.'."\n" .'- The cron expression is invalid: The specified cron expression is invalid.'."\n" .'- The aliyun service is not running on the instance: Cloud Assistant Agent is not running.'."\n" .'- The aliyun service in the instance does not response: Cloud Assistant Agent is not responding.'."\n" .'- The aliyun service in the instance is upgrading during task execution: Cloud Assistant Agent is being upgraded.'."\n" .'- The aliyun service in the instance need to be upgraded to at least version to support the feature: Cloud Assistant Agent must be upgraded. is the minimum version that supports the feature, and is the specific feature.'."\n" .'- The command delivery has been timeout: Command delivery timed out.'."\n" .'- The command execution has been timeout: Command execution timed out.'."\n" .'- The command execution got an exception: An exception occurred during command execution.'."\n" .'- The command execution exit code is not zero: Command execution completed with a non-zero exit code.'."\n" .'- The specified instance was released during task execution: The instance was released during file delivery.', 'type' => 'string', 'example' => 'the specified instance does not exists', 'title' => ''], 'StartTime' => ['description' => 'The time when the command started to run on the instance.', 'type' => 'string', 'example' => '2019-12-20T06:15:55Z', 'title' => ''], 'Repeats' => ['description' => 'The number of times the command was run on the instance.'."\n" .'- For one-time execution, the value is 0 or 1.'."\n" .'- For scheduled execution, the value is the number of times the command has been run.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'OssOutputUri' => ['description' => 'The OSS URI of the file to which the command execution output is delivered. This field is an empty string if the delivery is in progress or has failed.', 'type' => 'string', 'example' => 'oss://testBucket/testPrefix/output.txt', 'title' => ''], 'OssOutputStatus' => ['description' => 'The delivery status of the command execution output. Valid values:'."\n" ."\n" .'- InProgress: The delivery is in progress.'."\n" ."\n" .'- Finished: The delivery is complete.'."\n" ."\n" .'- Failed: The delivery failed.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'OssOutputErrorCode' => ['description' => 'The error code returned when the delivery fails. This parameter is returned only when OssOutputStatus is Failed.'."\n" .'Valid values:'."\n" .'- CloudAssistant.UnsupportedInvocationStatus: The task status does not support delivery.'."\n" .'- CloudAssistant.ClientNeedUpgrade: The Cloud Assistant Agent version does not support delivery. The Cloud Assistant Agent version must be later than 2.2.4.1007 for Linux instances and later than 2.1.4.1007 for Windows instances.'."\n" .'- OSS.AccessDenied: The user does not have access permissions on the specified bucket.'."\n" .'- OSS.NoSuchBucket: The specified bucket does not exist.'."\n" .'- OSS.FileImmutable: The data in the bucket is in protection status.'."\n" .'- OSS.InvalidObjectName: The object name is invalid. The object name is not specified, exceeds the length limit, or is invalid.', 'type' => 'string', 'example' => 'CloudAssistant.UnsupportedInvocationStatus', 'title' => ''], 'OssOutputErrorInfo' => ['description' => 'The error details returned when the delivery fails. This parameter is returned only when OssOutputStatus is Failed.', 'type' => 'string', 'example' => 'The invocation status does not support output delivery.', 'title' => ''], 'FinishTime' => ['description' => 'The end time of the command process.', 'type' => 'string', 'example' => '2019-12-20T06:15:56Z', 'title' => ''], 'Output' => ['description' => 'The command output.'."\n" ."\n" .'- If ContentEncoding is set to PlainText, the original output is returned.'."\n" .'- If ContentEncoding is set to Base64, the Base64-encoded output is returned.', 'type' => 'string', 'example' => 'OutPutTestmsg', 'title' => ''], 'CreationTime' => ['description' => 'The start time of the command execution.', 'type' => 'string', 'example' => '2019-12-20T06:15:54Z', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the command status was last updated.', 'type' => 'string', 'example' => '2020-01-19T09:15:47Z', 'title' => ''], 'ErrorCode' => ['description' => 'The error code for the command delivery failure or execution failure. Valid values:'."\n" .'- Empty: The command ran normally.'."\n" .'- InstanceNotExists: The specified instance does not exist or has been released.'."\n" .'- InstanceReleased: The instance was released during concurrent execution.'."\n" .'- InstanceNotRunning: The instance was not running when the command started to run.'."\n" .'- CommandNotApplicable: The command is not applicable to the specified instance.'."\n" .'- AccountNotExists: The specified username for running the command does not exist.'."\n" .'- DirectoryNotExists: The specified directory does not exist.'."\n" .'- BadCronExpression: The specified cron expression is invalid. '."\n" .'- ClientNotRunning: Cloud Assistant Agent is not running.'."\n" .'- ClientNotResponse: Cloud Assistant Agent is not responding.'."\n" .'- ClientIsUpgrading: Cloud Assistant Agent is being upgraded.'."\n" .'- ClientNeedUpgrade: Cloud Assistant Agent must be upgraded.'."\n" .'- DeliveryTimeout: Command delivery timed out.'."\n" .'- ExecutionTimeout: Concurrent execution timed out.'."\n" .'- ExecutionException: An exception occurred during concurrent execution.'."\n" .'- ExecutionInterrupted: The concurrent execution task was interrupted.'."\n" .'- ExitCodeNonzero: Concurrent execution completed with a non-zero exit code.'."\n" .'- SecurityGroupRuleDenied: A security group rule denied access to the Cloud Assistant service.'."\n" .'- TaskConcurrencyLimit: The number of concurrent task executions exceeded the maximum quota.', 'type' => 'string', 'example' => 'InstanceNotExists', 'title' => ''], 'StopTime' => ['description' => 'The time when `StopInvocation` was called to stop the command execution.', 'type' => 'string', 'example' => '2020-01-19T09:15:47Z', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'CommandContent' => ['description' => 'The command content.'."\n" ."\n" .'- If ContentEncoding is set to PlainText, the original script content is returned.'."\n" .'- If ContentEncoding is set to Base64, the Base64-encoded script content is returned.', 'type' => 'string', 'example' => 'cnBtIC1xYSB8IGdyZXAgdnNm****', 'title' => ''], 'WorkingDir' => ['description' => 'The working directory of the command.', 'type' => 'string', 'example' => '/home/', 'title' => ''], 'RepeatMode' => ['description' => 'The execution mode of the command. Valid values:'."\n" ."\n" .'- Once: The command is immediately run.'."\n" .'- Period: The command is run on a schedule.'."\n" .'- NextRebootOnly: The command is automatically run the next time the instance starts.'."\n" .'- EveryReboot: The command is automatically run every time the instance starts.'."\n" .'- DryRun: Only a dry run of the request is performed. The command is not actually run. The system checks the request parameters, instance execution environment, and Cloud Assistant Agent status.', 'type' => 'string', 'example' => 'Once', 'title' => ''], 'InvokeStatus' => ['description' => 'The overall execution status of the command.'."\n" .'> We recommend that you check the InvocationStatus parameter instead of this parameter.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'CommandType' => ['description' => 'The command type.', 'type' => 'string', 'example' => 'RunShellScript', 'title' => ''], 'Username' => ['description' => 'The username used to run the command on the ECS instance.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'ContainerId' => ['description' => 'The container ID.', 'type' => 'string', 'example' => 'ab141ddfbacfe02d9dbc25966ed971536124527097398d419a6746873fea****', 'title' => ''], 'ContainerName' => ['description' => 'The container name.', 'type' => 'string', 'example' => 'test-container', 'title' => ''], 'CreationTime' => ['description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2020-01-19T09:15:46Z', 'title' => ''], 'Frequency' => ['description' => 'The schedule for the scheduled command execution.', 'type' => 'string', 'example' => '0 */20 * * * *', 'title' => ''], 'Launcher' => ['description' => 'The launcher for script execution. The launcher can be up to 1 KB in length.', 'type' => 'string', 'example' => 'python3 -u {{ACS::ScriptFileName|Ext(".py")}}', 'title' => ''], 'CommandId' => ['description' => 'The command ID.', 'type' => 'string', 'example' => 'c-hz0jdfwcsr****', 'title' => ''], 'CommandName' => ['description' => 'The command name.', 'type' => 'string', 'example' => 'CommandTestName', 'title' => ''], 'InvokeId' => ['description' => 'The command execution ID.', 'type' => 'string', 'example' => 't-hz0jdfwd9f****', 'title' => ''], 'TerminationMode' => ['description' => 'The mode used when the task is stopped (manually stopped or interrupted due to timeout). Valid values:'."\n" .'- Process: Stops the current script process.'."\n" .'- ProcessTree: Stops the current process tree (the script process and all child processes it created).', 'type' => 'string', 'example' => 'ProcessTree', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tag information of the command execution.', 'type' => 'array', 'items' => [ 'description' => 'The tag information of the command execution.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key of the command execution.', 'type' => 'string', 'example' => 'owner', 'title' => ''], 'TagValue' => ['description' => 'The tag value of the command execution.', 'type' => 'string', 'example' => 'zhangsan', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The Tags parameter number is exceed.', 'description' => 'The number of tags exceeds the maximum limit.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'MissingParameter.TagKey', 'errorMessage' => 'You must specify Tag.N.Key.', 'description' => 'The tag key is not specified.'], ['errorCode' => 'InvalidParam.PageNumber', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.PageSize', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"Invocations\\": {\\n \\"Invocation\\": [\\n {\\n \\"OssOutputDelivery\\": \\"oss://testBucket/testPrefix\\",\\n \\"InvocationStatus\\": \\"Running\\",\\n \\"Parameters\\": \\"{}\\",\\n \\"Timed\\": false,\\n \\"CommandDescription\\": \\"testDescription\\",\\n \\"Timeout\\": 60,\\n \\"InvokeInstances\\": {\\n \\"InvokeInstance\\": [\\n {\\n \\"Dropped\\": 0,\\n \\"InvocationStatus\\": \\"Success\\",\\n \\"InstanceId\\": \\"i-bp1i7gg30r52z2em****\\",\\n \\"Timed\\": false,\\n \\"InstanceInvokeStatus\\": \\"Finished\\",\\n \\"ExitCode\\": 0,\\n \\"ErrorInfo\\": \\"the specified instance does not exists\\",\\n \\"StartTime\\": \\"2019-12-20T06:15:55Z\\",\\n \\"Repeats\\": 0,\\n \\"OssOutputUri\\": \\"oss://testBucket/testPrefix/output.txt\\",\\n \\"OssOutputStatus\\": \\"Finished\\",\\n \\"OssOutputErrorCode\\": \\"CloudAssistant.UnsupportedInvocationStatus\\",\\n \\"OssOutputErrorInfo\\": \\"The invocation status does not support output delivery.\\",\\n \\"FinishTime\\": \\"2019-12-20T06:15:56Z\\",\\n \\"Output\\": \\"OutPutTestmsg\\",\\n \\"CreationTime\\": \\"2019-12-20T06:15:54Z\\",\\n \\"UpdateTime\\": \\"2020-01-19T09:15:47Z\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\",\\n \\"StopTime\\": \\"2020-01-19T09:15:47Z\\"\\n }\\n ]\\n },\\n \\"CommandContent\\": \\"cnBtIC1xYSB8IGdyZXAgdnNm****\\",\\n \\"WorkingDir\\": \\"/home/\\",\\n \\"RepeatMode\\": \\"Once\\",\\n \\"InvokeStatus\\": \\"Finished\\",\\n \\"CommandType\\": \\"RunShellScript\\",\\n \\"Username\\": \\"test\\",\\n \\"ContainerId\\": \\"ab141ddfbacfe02d9dbc25966ed971536124527097398d419a6746873fea****\\",\\n \\"ContainerName\\": \\"test-container\\",\\n \\"CreationTime\\": \\"2020-01-19T09:15:46Z\\",\\n \\"Frequency\\": \\"0 */20 * * * *\\",\\n \\"Launcher\\": \\"python3 -u {{ACS::ScriptFileName|Ext(\\\\\\".py\\\\\\")}}\\",\\n \\"CommandId\\": \\"c-hz0jdfwcsr****\\",\\n \\"CommandName\\": \\"CommandTestName\\",\\n \\"InvokeId\\": \\"t-hz0jdfwd9f****\\",\\n \\"TerminationMode\\": \\"ProcessTree\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagKey\\": \\"owner\\",\\n \\"TagValue\\": \\"zhangsan\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query Cloud assistant command execution information', 'description' => '- After you run a command, the command does not necessarily run successfully or produce the expected results. You must check the actual execution results based on the return values of this operation. The actual output takes precedence.'."\n" ."\n" .'- You can query execution information from the last 30 days. A maximum of 10,000 execution records are retained.'."\n" .'- You can subscribe to [Cloud Assistant task status events](~~2669130~~) to obtain task results through events, which avoids frequent polling and improves efficiency.'."\n" .'- When paged query the first page, set only MaxResults to limit the number of entries to return. The NextToken value in the response serves as the token for querying subsequent pages. When paged query subsequent pages, set NextToken to the NextToken value obtained from the previous response and set MaxResults to limit the number of entries to return.'."\n" .'- Differences between `DescribeInvocations` and `DescribeInvocationResults`:'."\n" .' - When a single `RunCommand`/`InvokeCommand` call specifies multiple instances:'."\n" .' - `DescribeInvocations` returns the execution status on each instance and the aggregated status across all instances.'."\n" .' - `DescribeInvocationResults` returns only the individual execution status on each instance, without the aggregated status.'."\n" .' - When a single `RunCommand`/`InvokeCommand` call specifies one instance:'."\n" .' - `DescribeInvocations` and `DescribeInvocationResults` are largely interchangeable.'."\n" .' - To view the execution details of each run for scheduled (periodic) or boot-triggered tasks (`RepeatMode=Period, EveryReboot`), only `DescribeInvocationResults` can return historical execution records (with `IncludeHistory=true` specified). `DescribeInvocations` returns only the latest task status.'."\n" .' - To view the command content and parameters, only `DescribeInvocations` returns `CommandContent`.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-07-31T03:46:24.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-08-01T03:41:24.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-05-14T05:37:22.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-12-21T01:37:17.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-05-12T05:58:06.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-10-28T04:41:59.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-09-09T05:53:51.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-08-17T01:45:30.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-07-07T10:21:35.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-06-22T08:38:47.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-05-12T11:18:56.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeInvocations'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeInvocations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Command', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:command/{#commandId}'], ], ], ], ], ], 'DescribeKeyPairs' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28966', 'abilityTreeNodes' => ['FEATUREecsVSX1ZN'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the key pairs. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the key pair. You can use regular expressions for fuzzy search, with the asterisk (*) to match child table expressions. Examples:'."\n" ."\n" .'- `*SshKey`: searches for key pair names that end with SshKey, including SshKey.'."\n" .'- `SshKey*`: searches for key pair names that start with SshKey, including SshKey.'."\n" .'- `*SshKey*`: searches for key pair names that contain SshKey, including SshKey.'."\n" .'- `SshKey`: exact match of SshKey.', 'type' => 'string', 'required' => false, 'example' => '*SshKey*', 'title' => ''], ], [ 'name' => 'KeyPairFingerPrint', 'in' => 'query', 'schema' => ['description' => 'The fingerprint of the key pair. The fingerprint uses the message-digest algorithm 5 (MD5) based on the public key fingerprint format defined in RFC 4716. For more information, see [RFC 4716](https://tools.ietf.org/html/rfc4716).', 'type' => 'string', 'required' => false, 'example' => 'ABC1234567', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the key pair list. Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in paging queries. Settings: Maximum value: 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'example' => '10', 'title' => ''], ], [ 'name' => 'IncludePublicKey', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to include PublicKey in the response.'."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the key pairs belong. When you use this parameter to filter resources, the resource count cannot exceed 1000.'."\n" ."\n" .'>Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-amnhr7u7c7hj****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the key pair. Valid values of N: 1 to 20.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the specified tag cannot exceed 1000. If you use multiple tags to filter resources, the resource count of resources that are attached with all specified tags cannot exceed 1000. If the resource count exceeds 1000, call the [ListTagResources](~~110425~~) operation to query resources.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the key pair. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of key pairs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'KeyPairs' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'KeyPair' => [ 'description' => 'The key pair information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the key pair was created.', 'type' => 'string', 'example' => '2023-09-04T08:33Z', 'title' => ''], 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], 'KeyPairFingerPrint' => ['description' => 'The fingerprint of the key pair.', 'type' => 'string', 'example' => 'ABC1234567', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'rg-amnhr7u7c7hj****', 'title' => ''], 'PublicKey' => ['description' => 'The public key.', 'type' => 'string', 'example' => 'ssh-rsa****', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the key pair.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the key pair.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the key pair.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'title' => 'Query key pairs', 'summary' => 'Queries one or more key pairs.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-02-01T01:29:23.000Z', 'description' => 'Request parameters changed, Response parameters changed, Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeKeyPairs'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeKeyPairs', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'KeyPair', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:keypair/{#keypairName}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'KeyPair', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:keypair/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"KeyPairs\\": {\\n \\"KeyPair\\": [\\n {\\n \\"CreationTime\\": \\"2023-09-04T08:33Z\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"KeyPairFingerPrint\\": \\"ABC1234567\\",\\n \\"ResourceGroupId\\": \\"rg-amnhr7u7c7hj****\\",\\n \\"PublicKey\\": \\"ssh-rsa****\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeLaunchTemplateVersions' => [ 'summary' => 'Queries information about launch template versions of ECS instances, such as the total number of launch templates, template names, and template version numbers.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '65904', 'abilityTreeNodes' => ['FEATUREecsV7EC6D'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the launch template.'."\n" ."\n" .'You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'LaunchTemplateVersion', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'One or more launch template version numbers.', 'type' => 'array', 'items' => ['description' => 'One or more launch template version numbers.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], 'required' => false, 'example' => '1', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'LaunchTemplateId', 'in' => 'query', 'schema' => ['description' => 'The launch template ID.'."\n" ."\n" .'You must specify `LaunchTemplateId` or `LaunchTemplateName` to determine the template.', 'type' => 'string', 'required' => false, 'example' => 'lt-bp168lnahrdwl39p****', 'title' => ''], ], [ 'name' => 'LaunchTemplateName', 'in' => 'query', 'schema' => ['description' => 'The launch template name.'."\n" ."\n" .'You must specify `LaunchTemplateId` or `LaunchTemplateName` to determine the template.', 'type' => 'string', 'required' => false, 'example' => 'testLaunchTemplateName', 'title' => ''], ], [ 'name' => 'MinVersion', 'in' => 'query', 'schema' => ['description' => 'The minimum version number used to filter query results. Used together with `MaxVersion` to query version information within the range between the minimum and maximum version numbers.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'MaxVersion', 'in' => 'query', 'schema' => ['description' => 'The maximum version number used to filter query results. Used together with `MinVersion` to query version information within the range between the minimum and maximum version numbers.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'DefaultVersion', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query the default version.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'DetailFlag', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query detailed template configuration information. Valid values:'."\n" ."\n" .'- true: Queries detailed template configuration information. In addition to basic template information, detailed configuration such as image ID and system disk size is returned.'."\n" ."\n" .'- false: Queries only basic template information, such as template ID, template name, and default version.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the launch template list.'."\n" ."\n" .'Minimum value: 1. '."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page in a paged query. Settings this parameter for paging. '."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The version information collection.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page in a paged query. Settings this parameter for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '3989ED0C-20A1-4351-A127-2067FF8390AX', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of launch templates.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'LaunchTemplateVersionSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LaunchTemplateVersionSet' => [ 'description' => 'The information about template versions.', 'type' => 'array', 'items' => [ 'description' => 'The information about template versions.', 'type' => 'object', 'properties' => [ 'LaunchTemplateName' => ['description' => 'The template name.', 'type' => 'string', 'example' => 'testLaunchTemplateName', 'title' => ''], 'DefaultVersion' => ['description' => 'Indicates whether the template is the default version.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'VersionNumber' => ['description' => 'The template version number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'ModifiedTime' => ['description' => 'The time when the template was last modified.', 'type' => 'string', 'example' => '2022-01-17T08:40:00Z', 'title' => ''], 'LaunchTemplateId' => ['description' => 'The template ID.', 'type' => 'string', 'example' => 'lt-bp67acfmxazb4p****', 'title' => ''], 'CreateTime' => ['description' => 'The time when the template was created.', 'type' => 'string', 'example' => '2022-01-17T08:22:43Z', 'title' => ''], 'CreatedBy' => ['description' => 'The creator of the template, which is the Alibaba Cloud account ID.', 'type' => 'string', 'example' => '123456789****', 'title' => ''], 'VersionDescription' => ['description' => 'The template version description.', 'type' => 'string', 'example' => 'testVersionDescription', 'title' => ''], 'LaunchTemplateData' => [ 'description' => 'The detailed template configuration.', 'type' => 'object', 'properties' => [ 'DeploymentSetId' => ['description' => 'The ID of the deployment set.', 'type' => 'string', 'example' => 'ds-bp1brhwhoqinyjd6****', 'title' => ''], 'VpcId' => ['description' => 'The VPC ID.', 'type' => 'string', 'example' => 'v-bp67acfmxazb4p****', 'title' => ''], 'SystemDisk.PerformanceLevel' => ['description' => 'The performance level settings when an enterprise SSD is used as the system disk. Valid values:'."\n" ."\n" .'- PL0 (default): A maximum of 10,000 random read/write IOPS per disk.'."\n" .'- PL1: A maximum of 50,000 random read/write IOPS per disk.'."\n" .'- PL2: A maximum of 100,000 random read/write IOPS per disk.'."\n" .'- PL3: A maximum of 1,000,000 random read/write IOPS per disk.'."\n" ."\n" .'For information about how to select an ESSD performance level, see [ESSDs](~~122389~~).', 'type' => 'string', 'example' => 'PL0', 'title' => ''], 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], 'SecurityGroupId' => ['description' => 'The security group ID of the instance.'."\n" ."\n" .'> SecurityGroupId and SecurityGroupIds are not returned at the same time.', 'type' => 'string', 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'NetworkType' => ['description' => 'The network type. Valid values:'."\n" ."\n" .'- vpc: VPC.'."\n" .'- classic: classic network. The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'SpotStrategy' => ['description' => 'The bidding policy for the pay-as-you-go instance. Valid values:'."\n" ."\n" .'- NoSpot: a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: a spot instance with a user-defined maximum hourly price.'."\n" .'- SpotAsPriceGo: a spot instance priced at the market price at the time of purchase.', 'type' => 'string', 'example' => 'NoSpot', 'title' => ''], 'EnableVmOsConfig' => ['description' => 'Indicates whether the operating system configuration of the instance is enabled.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Description' => ['description' => 'The description of the instance.', 'type' => 'string', 'example' => 'testInstanceDescription', 'title' => ''], 'SpotDuration' => ['description' => 'The protection period of the spot instance. Unit: hours. Valid values:'."\n" .'- 1: After a spot instance is created, Alibaba Cloud ensures that the instance is not automatically released within 1 hour. After the 1-hour protection period expires, the system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" .'- 0: After a spot instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. Select an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'> This parameter is returned only when SpotStrategy is set to SpotWithPriceLimit or SpotAsPriceGo.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceName' => ['description' => 'Instance name', 'type' => 'string', 'example' => 'testInstanceName', 'title' => ''], 'SecurityEnhancementStrategy' => ['description' => 'Specifies whether security hardening is enabled.', 'type' => 'string', 'example' => 'active', 'title' => ''], 'UserData' => ['description' => 'The instance user data, which is Base64-encoded.', 'type' => 'string', 'example' => 'SGVsbG9FQ1M=', 'title' => ''], 'SystemDisk.DiskName' => ['description' => 'The name of the system disk.', 'type' => 'string', 'example' => 'testSystemDiskName', 'title' => ''], 'SystemDisk.Size' => ['description' => 'The system disk size. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '40', 'title' => ''], 'SpotPriceLimit' => ['description' => 'The maximum hourly price of the instance.', 'type' => 'number', 'format' => 'float', 'example' => '0.98', 'title' => ''], 'PasswordInherit' => ['description' => 'Indicates whether the username and password pair preset in the image is inherited.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'PrivateIpAddress' => ['description' => 'The private IP address of the instance.', 'type' => 'string', 'example' => '10.1.**.**', 'title' => ''], 'ImageId' => ['description' => 'The image ID of the instance.', 'type' => 'string', 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], 'SystemDisk.DeleteWithInstance' => ['description' => 'Indicates whether the system disk is released together with the instance. Valid values:'."\n" ."\n" .'- true: The system disk is released together with the instance.'."\n" ."\n" .'- false: The system disk is not released together with the instance.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SystemDisk.Category' => ['description' => 'The category of the system disk. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD). You can use the SystemDisk.PerformanceLevel parameter to configure the performance level of the disk.'."\n" ."\n" .'For retired instance types that are not I/O optimization instances, the default value is cloud. For other cases, the default value is cloud_efficiency.', 'type' => 'string', 'example' => 'cloud_ssd', 'title' => ''], 'AutoReleaseTime' => ['description' => 'The automatic release time.', 'type' => 'string', 'example' => '2018-05-14T14:18:00Z', 'title' => ''], 'SystemDisk.Description' => ['description' => 'The system disk description.', 'type' => 'string', 'example' => 'testSystemDiskDescription', 'title' => ''], 'ImageOwnerAlias' => ['description' => 'The image source. Valid values:'."\n" ."\n" .'- system: a public image provided by Alibaba Cloud.'."\n" .'- self: a custom image that you created.'."\n" .'- others: a shared image from another Alibaba Cloud account.'."\n" .'- marketplace: an Alibaba Cloud Marketplace image.', 'type' => 'string', 'example' => 'system', 'title' => ''], 'HostName' => ['description' => 'The hostname of the instance.', 'type' => 'string', 'example' => 'testHostName', 'title' => ''], 'SystemDisk.Iops' => ['description' => 'The total IOPS of the system disk.', 'type' => 'integer', 'format' => 'int32', 'example' => '101800', 'title' => ''], 'SystemDisk.AutoSnapshotPolicyId' => ['description' => 'The automatic snapshot policy ID.', 'type' => 'string', 'example' => 'sp-bp1j0alc2z1fhvie****', 'title' => ''], 'InternetMaxBandwidthOut' => ['description' => 'The maximum outbound public bandwidth.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'InternetMaxBandwidthIn' => ['description' => 'The maximum inbound public bandwidth.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'Period' => ['description' => 'The subscription duration of the resource.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceChargeType' => ['description' => 'The billing method of the instance. Valid values:'."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.', 'type' => 'string', 'example' => 'Postpaid', 'title' => ''], 'IoOptimized' => ['description' => 'Indicates whether the instance is an I/O optimization instance.', 'type' => 'string', 'example' => 'none', 'title' => ''], 'RamRoleName' => ['description' => 'The name of the instance RAM role.', 'type' => 'string', 'example' => 'testRamRoleName', 'title' => ''], 'VSwitchId' => ['description' => 'The vSwitch ID of the instance.', 'type' => 'string', 'example' => 'vsw-bp67acfmxazb4p****', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the launch template belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'InternetChargeType' => ['description' => 'The billable methods for public bandwidth.', 'type' => 'string', 'example' => 'PayByTraffic', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'Ipv6AddressCount' => ['description' => 'The number of IPv6 addresses assigned to the instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'DataDisks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DataDisk' => [ 'description' => 'The data disk collection.', 'type' => 'array', 'items' => [ 'description' => 'The data disk collection.', 'type' => 'object', 'properties' => [ 'PerformanceLevel' => ['description' => 'The performance level settings when an enterprise SSD is used as a data disk. This parameter is returned only when `Category=cloud_essd`. Valid values:'."\n" ."\n" .'- PL0: A maximum of 10,000 random read/write IOPS per disk.'."\n" .'- PL1: A maximum of 50,000 random read/write IOPS per disk.'."\n" .'- PL2: A maximum of 100,000 random read/write IOPS per disk.'."\n" .'- PL3: A maximum of 1,000,000 random read/write IOPS per disk.', 'type' => 'string', 'example' => 'PL1', 'title' => ''], 'Description' => ['description' => 'The data disk description.', 'type' => 'string', 'example' => 'testDiskDescription', 'title' => ''], 'SnapshotId' => ['description' => 'The snapshot ID used to create the data disk.', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****', 'title' => ''], 'Device' => ['description' => 'The mount point of the data disk. The naming convention varies depending on the number of data disks attached:'."\n" .'- 1 to 25 data disks: /dev/xvd`[b-z]`'."\n" ."\n" .'- More than 25 data disks: /dev/xvd`[aa-zz]`. For example, the 26th data disk is named /dev/xvdaa, the 27th is named /dev/xvdab, and so on.'."\n" ."\n" .'> This parameter is used only for full image (whole-machine image) scenarios. You can set this parameter to the mount point of the data disk in the full image and modify the corresponding `DataDisk.N.Size` and `DataDisk.N.Category` parameters to change the disk category and size of the data disk in the full image.', 'type' => 'string', 'example' => '/dev/xvdb'."\n", 'title' => ''], 'Size' => ['description' => 'The data disk size.', 'type' => 'integer', 'format' => 'int32', 'example' => '2000', 'title' => ''], 'DiskName' => ['description' => 'The name of the data disk.', 'type' => 'string', 'example' => 'testDiskName', 'title' => ''], 'Category' => ['description' => 'The category of data disk N. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .'- cloud_regional_disk_auto: regional ESSD (ESSD).'."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .' >The cloud_essd_entry value is supported only when `InstanceType` is set to the `ecs.u1` or `ecs.e` instance family.'."\n" .'- elastic_ephemeral_disk_standard: elastic ephemeral disk - standard.'."\n" .'- elastic_ephemeral_disk_premium: elastic ephemeral disk - premium.'."\n" ."\n" .'For I/O optimized instances, the default value is cloud_efficiency. For non-I/O optimized instances, the default value is cloud.'."\n" .'Default value description:'."\n" ."\n" .'- For retired instance types that are not I/O optimized, the default value is `cloud`.'."\n" .'- In other cases, the default value is `cloud_efficiency`.After January 30, 2026, if the I/O optimized instance type does not support cloud_auto, the default value is cloud_efficiency. Otherwise, the default value is cloud_auto, and performance burst is enabled by default (which incurs additional fees. For more information, see [Billing examples](~~368372#p_75k_2hp_7gp~~)). For more information, see [Change notice](https://www.aliyun.com/notice/117844).', 'type' => 'string', 'example' => 'cloud_ssd', 'title' => ''], 'DeleteWithInstance' => ['description' => 'Indicates whether the data disk is released together with the instance.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'Encrypted' => ['description' => 'Indicates whether the data disk is encrypted.', 'type' => 'string', 'example' => 'false', 'title' => ''], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50000, 1000 × capacity - baseline performance}.'."\n" ."\n" .'Baseline performance = min{1,800 + 50 × capacity, 50,000}'."\n" ."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~) and [Modify the provisioned performance of an ESSD AutoPL disk](~~413275~~).', 'type' => 'integer', 'format' => 'int64', 'example' => '50000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Indicates whether the performance burst feature is enabled. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'AutoSnapshotPolicyId' => ['description' => 'The automatic snapshot policy ID.', 'type' => 'string', 'example' => 'sp-wz91dz3ghear2a5s****', 'title' => ''], 'KMSKeyId' => ['description' => 'The KMS key ID of the data disk.', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NetworkInterfaces' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'NetworkInterface' => [ 'description' => 'The property collection of secondary Elastic Network Interfaces (ENIs).', 'type' => 'array', 'items' => [ 'description' => 'The property collection of secondary Elastic Network Interfaces (ENIs).', 'type' => 'object', 'properties' => [ 'NetworkInterfaceName' => ['description' => 'The name of the secondary Elastic Network Interface (ENI).', 'type' => 'string', 'example' => 'testNetworkInterfaceName', 'title' => ''], 'VSwitchId' => ['description' => 'The vSwitch ID of the Elastic Network Interface (ENI).', 'type' => 'string', 'example' => 'vsw-bp67acfmxazb4p****', 'title' => ''], 'Description' => ['description' => 'The description of the secondary Elastic Network Interface (ENI).', 'type' => 'string', 'example' => 'testNetworkInterfacesDescription', 'title' => ''], 'PrimaryIpAddress' => ['description' => 'The primary private IP address of the secondary Elastic Network Interface (ENI).', 'type' => 'string', 'example' => '203.0.*.*', 'title' => ''], 'SecurityGroupId' => ['description' => 'The security group ID of the secondary Elastic Network Interface (ENI). The security group must belong to the same VPC.'."\n" ."\n" .'> SecurityGroupId and SecurityGroupIds are not returned at the same time.', 'type' => 'string', 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'SecurityGroupIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupId' => [ 'description' => 'One or more security groups to which the secondary Elastic Network Interface (ENI) belongs.'."\n" ."\n" .'> SecurityGroupId and SecurityGroupIds are not returned at the same time.', 'type' => 'array', 'items' => ['description' => 'One or more security groups to which the secondary Elastic Network Interface (ENI) belongs.'."\n" ."\n" .'> SecurityGroupId and SecurityGroupIds are not returned at the same time.', 'type' => 'string', 'example' => '["sg-bp15ed6xe1yxeycg7****"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.s2.xlarge', 'title' => ''], 'NetworkInterfaceTrafficMode' => ['description' => 'The communication mode of the primary ENI. Valid values:'."\n" ."\n" .'- Standard: TCP communication mode.'."\n" .'- HighPerformance: Elastic RDMA Interface (ERI) is enabled and RDMA communication mode is used.', 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'DeleteOnRelease' => ['description' => 'Indicates whether the ENI is retained when the instance is released. Valid values:'."\n" ."\n" .'- true: The ENI is not retained.'."\n" ."\n" .'- false: The ENI is retained.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceTag' => [ 'description' => 'The tag list of the instance.', 'type' => 'array', 'items' => [ 'description' => 'The tag list of the instance.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the instance.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the instance.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SecurityGroupIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupId' => [ 'description' => 'One or more security groups to which the instance belongs.'."\n" ."\n" .'> `SecurityGroupId` and `SecurityGroupIds` are not returned at the same time.', 'type' => 'array', 'items' => ['description' => 'One or more security groups to which the instance belongs.'."\n" ."\n" .'> `SecurityGroupId` and `SecurityGroupIds` are not returned at the same time.', 'type' => 'string', 'example' => '["sg-bp15ed6xe1yxeycg7****"]', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SystemDisk.ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50000, 1000 × capacity - baseline performance}.'."\n" ."\n" .'Baseline performance = min{1,800 + 50 × capacity, 50,000}'."\n" ."\n" .'> This parameter is supported only when DiskCategory is set to cloud_auto. For more information, see [ESSD AutoPL disks](~~368372~~) and [Modify the provisioned performance of an ESSD AutoPL disk](~~413275~~).', 'type' => 'integer', 'format' => 'int64', 'example' => '50000', 'title' => ''], 'SystemDisk.BurstingEnabled' => ['description' => 'Indicates whether the performance burst feature is enabled. Valid values:'."\n" ."\n" .'- true: Enabled.'."\n" .'- false: Disabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SystemDisk.Encrypted' => ['description' => 'Indicates whether the system disk is encrypted. Valid values:'."\n" ."\n" .'- true: Encrypted.'."\n" .'- false: Not encrypted.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> Hong Kong (China) Zone D and Singapore Zone A do not support system disk encryption when you create an instance.', 'type' => 'string', 'example' => 'false', 'title' => ''], 'DeletionProtection' => ['description' => 'The release protection attribute of the instance. Specifies whether the instance can be released from the console or by calling the [DeleteInstance](~~25507~~) operation. Valid values:'."\n" .'- true: Release protection is enabled.'."\n" ."\n" .'- false: Release protection is disabled.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> This attribute applies only to pay-as-you-go instances and can only restrict manual release operations. It does not take effect for system-initiated releases.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'CreditSpecification' => ['description' => 'The running mode of the burstable instance. Valid values:'."\n" ."\n" .'- Standard: standard mode. For more information about instance performance, see the performance constrained mode section in [Overview of burstable instances](~~59977~~).'."\n" .'- Unlimited: unlimited mode. For more information about instance performance, see the unlimited mode section in [Overview of burstable instances](~~59977~~).', 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'AutoRenew' => ['description' => 'Indicates whether auto-renewal is enabled. This parameter takes effect only when `InstanceChargeType` is set to `PrePaid`. Valid values:'."\n" ."\n" .'- true: Auto-renewal is enabled.'."\n" .'- false: Auto-renewal is disabled.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'AutoRenewPeriod' => ['description' => 'The auto-renewal period. Valid values: '."\n" .' '."\n" .''."\n" .'- When PeriodUnit is set to Week: 1, 2, or 3.'."\n" .'- When PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, or 60.'."\n" ."\n" .''."\n" ."\n" .'When PeriodUnit is set to Month: 1, 2, 3, 6, 12, 24, 36, 48, or 60.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PeriodUnit' => ['description' => 'The unit of the subscription billable methods duration. Valid values: '."\n" ."\n" .''."\n" .'- Week.'."\n" .'- Month (default).'."\n" ."\n" .''."\n" ."\n" .'Month (default).', 'type' => 'string', 'example' => 'Month', 'title' => ''], 'HttpEndpoint' => ['description' => 'Indicates whether the access channel for instance metadata is enabled. Valid values:'."\n" ."\n" .'- enabled: Enabled.'."\n" .'- disabled: Disabled.'."\n" ."\n" .'Default value: enabled.'."\n" ."\n" .'> For more information about instance metadata, see [Overview of instance metadata](~~108460~~).', 'type' => 'string', 'example' => 'enabled', 'title' => ''], 'HttpTokens' => ['description' => 'Indicates whether the China mode (IMDSv2) is forcefully used to access instance metadata. Valid values:'."\n" ."\n" .'- optional: Not forcefully used.'."\n" .'- required: Forcefully used. After this value is set, instance metadata cannot be accessed in normal mode.'."\n" ."\n" .'Default value: optional.'."\n" ."\n" .'> For more information about modes for accessing instance metadata, see [Overview of instance metadata](~~108460~~).', 'type' => 'string', 'example' => 'optional', 'title' => ''], 'HttpPutResponseHopLimit' => ['description' => '> This parameter is not available for use.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'SystemDisk.KMSKeyId' => ['description' => 'The KMS key ID of the system disk.', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****'."\n", 'title' => ''], 'ImageOptions' => [ 'description' => 'The image-related property information.', 'type' => 'object', 'properties' => [ 'LoginAsNonRoot' => ['description' => 'Indicates whether instances that use this image support logon with the ecs-user user.'."\n" .'Valid values:'."\n" .'- true: Supported.'."\n" .'- false: Not supported.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'title' => '', 'example' => '', ], 'SecurityOptions' => [ 'description' => 'The security options.', 'type' => 'object', 'properties' => [ 'TrustedSystemMode' => ['description' => 'The trusted system pattern. Value: vTPM.'."\n" ."\n" .'The following instance types support the trusted system pattern:'."\n" .'- g7, c7, and r7.'."\n" .'- Security-enhanced instance families (g7t, c7t, and r7t).'."\n" ."\n" .'When you create ECS instances of the', 'type' => 'string', 'example' => 'vTPM', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegion.NotExist', 'errorMessage' => '%s', 'description' => 'The specified region does not exist.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'InnerServiceFailed', 'errorMessage' => '%s', 'description' => 'An internal service cannot be called.'], ], [ ['errorCode' => 'InvalidLaunchTemplate.NotFound', 'errorMessage' => 'The specified LaunchTemplate is not found.', 'description' => 'The specified launch template does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"3989ED0C-20A1-4351-A127-2067FF8390AX\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"LaunchTemplateVersionSets\\": {\\n \\"LaunchTemplateVersionSet\\": [\\n {\\n \\"LaunchTemplateName\\": \\"testLaunchTemplateName\\",\\n \\"DefaultVersion\\": true,\\n \\"VersionNumber\\": 1,\\n \\"ModifiedTime\\": \\"2022-01-17T08:40:00Z\\",\\n \\"LaunchTemplateId\\": \\"lt-bp67acfmxazb4p****\\",\\n \\"CreateTime\\": \\"2022-01-17T08:22:43Z\\",\\n \\"CreatedBy\\": \\"123456789****\\",\\n \\"VersionDescription\\": \\"testVersionDescription\\",\\n \\"LaunchTemplateData\\": {\\n \\"DeploymentSetId\\": \\"ds-bp1brhwhoqinyjd6****\\",\\n \\"VpcId\\": \\"v-bp67acfmxazb4p****\\",\\n \\"SystemDisk.PerformanceLevel\\": \\"PL0\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"SecurityGroupId\\": \\"sg-bp67acfmxazb4p****\\",\\n \\"NetworkType\\": \\"vpc\\",\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"EnableVmOsConfig\\": false,\\n \\"Description\\": \\"testInstanceDescription\\",\\n \\"SpotDuration\\": 1,\\n \\"InstanceName\\": \\"testInstanceName\\",\\n \\"SecurityEnhancementStrategy\\": \\"active\\",\\n \\"UserData\\": \\"SGVsbG9FQ1M=\\",\\n \\"SystemDisk.DiskName\\": \\"testSystemDiskName\\",\\n \\"SystemDisk.Size\\": 40,\\n \\"SpotPriceLimit\\": 0.98,\\n \\"PasswordInherit\\": true,\\n \\"PrivateIpAddress\\": \\"10.1.**.**\\",\\n \\"ImageId\\": \\"m-bp67acfmxazb4p****\\",\\n \\"SystemDisk.DeleteWithInstance\\": true,\\n \\"SystemDisk.Category\\": \\"cloud_ssd\\",\\n \\"AutoReleaseTime\\": \\"2018-05-14T14:18:00Z\\",\\n \\"SystemDisk.Description\\": \\"testSystemDiskDescription\\",\\n \\"ImageOwnerAlias\\": \\"system\\",\\n \\"HostName\\": \\"testHostName\\",\\n \\"SystemDisk.Iops\\": 101800,\\n \\"SystemDisk.AutoSnapshotPolicyId\\": \\"sp-bp1j0alc2z1fhvie****\\",\\n \\"InternetMaxBandwidthOut\\": 100,\\n \\"InternetMaxBandwidthIn\\": 5,\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"Period\\": 1,\\n \\"InstanceChargeType\\": \\"Postpaid\\",\\n \\"IoOptimized\\": \\"none\\",\\n \\"RamRoleName\\": \\"testRamRoleName\\",\\n \\"VSwitchId\\": \\"vsw-bp67acfmxazb4p****\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"Ipv6AddressCount\\": 1,\\n \\"DataDisks\\": {\\n \\"DataDisk\\": [\\n {\\n \\"PerformanceLevel\\": \\"PL1\\",\\n \\"Description\\": \\"testDiskDescription\\",\\n \\"SnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"Device\\": \\"/dev/xvdb\\\\n\\",\\n \\"Size\\": 2000,\\n \\"DiskName\\": \\"testDiskName\\",\\n \\"Category\\": \\"cloud_ssd\\",\\n \\"DeleteWithInstance\\": true,\\n \\"Encrypted\\": \\"false\\",\\n \\"ProvisionedIops\\": 50000,\\n \\"BurstingEnabled\\": true,\\n \\"AutoSnapshotPolicyId\\": \\"sp-wz91dz3ghear2a5s****\\",\\n \\"KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\"\\n }\\n ]\\n },\\n \\"NetworkInterfaces\\": {\\n \\"NetworkInterface\\": [\\n {\\n \\"NetworkInterfaceName\\": \\"testNetworkInterfaceName\\",\\n \\"VSwitchId\\": \\"vsw-bp67acfmxazb4p****\\",\\n \\"Description\\": \\"testNetworkInterfacesDescription\\",\\n \\"PrimaryIpAddress\\": \\"203.0.*.*\\",\\n \\"SecurityGroupId\\": \\"sg-bp67acfmxazb4p****\\",\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"[\\\\\\"sg-bp15ed6xe1yxeycg7****\\\\\\"]\\"\\n ]\\n },\\n \\"InstanceType\\": \\"ecs.s2.xlarge\\",\\n \\"NetworkInterfaceTrafficMode\\": \\"Standard\\",\\n \\"DeleteOnRelease\\": true\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"InstanceTag\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ]\\n },\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"[\\\\\\"sg-bp15ed6xe1yxeycg7****\\\\\\"]\\"\\n ]\\n },\\n \\"SystemDisk.ProvisionedIops\\": 50000,\\n \\"SystemDisk.BurstingEnabled\\": true,\\n \\"SystemDisk.Encrypted\\": \\"false\\",\\n \\"DeletionProtection\\": false,\\n \\"CreditSpecification\\": \\"Standard\\",\\n \\"AutoRenew\\": true,\\n \\"AutoRenewPeriod\\": 1,\\n \\"PeriodUnit\\": \\"Month\\",\\n \\"HttpEndpoint\\": \\"enabled\\",\\n \\"HttpTokens\\": \\"optional\\",\\n \\"HttpPutResponseHopLimit\\": 3,\\n \\"SystemDisk.KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\\\n\\",\\n \\"ImageOptions\\": {\\n \\"LoginAsNonRoot\\": false\\n },\\n \\"SecurityOptions\\": {\\n \\"TrustedSystemMode\\": \\"vTPM\\"\\n }\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query launch template version information', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-09-15T08:08:01.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-06-27T01:42:01.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-05-27T03:01:50.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-02-17T11:08:01.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-10-12T07:03:19.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-05-28T05:59:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-10-18T03:03:40.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-08-01T07:21:24.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-03-28T02:03:24.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-05T02:31:10.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-07-11T11:13:17.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-12-20T11:16:58.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeLaunchTemplateVersions'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeLaunchTemplateVersions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/{#launchtemplateId}'], ], ], ], ], ], 'DescribeLaunchTemplates' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28967', 'abilityTreeNodes' => ['FEATUREecsIZ42RQ'], 'autoTest' => true, ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list. ', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TemplateTag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tag key-value pairs of the launch template.'."\n" .'> Currently, you can create and query launch template tags only by calling API operations. The console does not support creating or viewing launch template tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag key-value pair information of the launch template.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the launch template. Valid values of N: 1 to 20.'."\n" ."\n" .'If you use a single tag to filter resources, the number of resources with the specified tag cannot exceed 1000. If you use multiple tags to filter resources, the number of resources that are bound with all the specified tags cannot exceed 1000. If the number of resources exceeds 1000, call the [ListTagResources](~~110425~~) operation to query them.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the launch template. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the launch template list. Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for a paginated query.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'TemplateResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the launch template belongs. When you use this parameter to filter resources, the number of resources cannot exceed 1000.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmxazb4p****', 'title' => ''], ], [ 'name' => 'LaunchTemplateId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'An array of one or more launch template IDs.'."\n" ."\n" .'- You can query up to 100 launch templates at a time.'."\n" ."\n" .'- You must specify LaunchTemplateId or LaunchTemplateName to determine the templates.', 'type' => 'array', 'items' => ['description' => 'The launch template ID.'."\n" ."\n" .'- You can query up to 100 launch templates at a time.'."\n" ."\n" .'- You must specify LaunchTemplateId or LaunchTemplateName to determine the templates.', 'type' => 'string', 'required' => false, 'example' => 'lt-m5e3ofjr1zn1aw7q****', 'title' => ''], 'required' => false, 'example' => 'lt-m5e3ofjr1zn1aw7q****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'LaunchTemplateName', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'An array of one or more launch template names.'."\n" ."\n" .'- You can query up to 100 launch templates at a time.'."\n" ."\n" .'- You must specify LaunchTemplateId or LaunchTemplateName to determine the templates.', 'type' => 'array', 'items' => ['description' => 'The name of the launch template.'."\n" ."\n" .'- You can query up to 100 launch templates at a time.'."\n" ."\n" .'- You must specify LaunchTemplateId or LaunchTemplateName to determine the templates.', 'type' => 'string', 'required' => false, 'example' => 'wd-152630748****', 'title' => ''], 'required' => false, 'example' => 'wd-152630748****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE12CBA', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of launch templates.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'LaunchTemplateSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'LaunchTemplateSet' => [ 'description' => 'The list of launch template information.', 'type' => 'array', 'items' => [ 'description' => 'The launch template information.', 'type' => 'object', 'properties' => [ 'LaunchTemplateName' => ['description' => 'The template name.', 'type' => 'string', 'example' => 'wd-152630748****', 'title' => ''], 'DefaultVersionNumber' => ['description' => 'The default version number of the template.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'ModifiedTime' => ['description' => 'The time when a version of the template was created or deleted.'."\n" ."\n" .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2018-05-14T14:18:00Z', 'title' => ''], 'LaunchTemplateId' => ['description' => 'The template ID.', 'type' => 'string', 'example' => 'lt-m5e3ofjr1zn1aw7q****', 'title' => ''], 'CreateTime' => ['description' => 'The time when the launch template was created.'."\n" ."\n" .'The time follows the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2018-05-14T14:18:00Z', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the launch template belongs.', 'type' => 'string', 'example' => 'rg-acfmxazb4p****', 'title' => ''], 'CreatedBy' => ['description' => 'The creator of the template, which is the Alibaba Cloud account ID.', 'type' => 'string', 'example' => '20169351435666****', 'title' => ''], 'LatestVersionNumber' => ['description' => 'The latest version number of the template.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The list of tag key-value pairs of the launch template.'."\n" ."\n\n" .'> Currently, you can create and query launch template tags only by calling API operations. The console does not support creating or viewing launch template tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag key-value pair information of the launch template.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the launch template.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the launch template.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegion.NotExist', 'errorMessage' => '%s', 'description' => 'The specified region does not exist.'], ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'InnerServiceFailed', 'errorMessage' => '%s', 'description' => 'An internal service cannot be called.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], 503 => [ ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The request has failed due to a temporary failure of the server.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query one or more available launch templates', 'summary' => 'Calls the DescribeLaunchTemplates operation. You can specify parameters such as TemplateTag, TemplateResourceGroupId, and LaunchTemplateId to query information about one or more launch templates, including the total number of launch templates, template creation time, and latest version number.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-03-28T02:03:25.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeLaunchTemplates'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeLaunchTemplates', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'LaunchTemplate', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:launchtemplate/{#launchtemplateId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE12CBA\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"LaunchTemplateSets\\": {\\n \\"LaunchTemplateSet\\": [\\n {\\n \\"LaunchTemplateName\\": \\"wd-152630748****\\",\\n \\"DefaultVersionNumber\\": 1,\\n \\"ModifiedTime\\": \\"2018-05-14T14:18:00Z\\",\\n \\"LaunchTemplateId\\": \\"lt-m5e3ofjr1zn1aw7q****\\",\\n \\"CreateTime\\": \\"2018-05-14T14:18:00Z\\",\\n \\"ResourceGroupId\\": \\"rg-acfmxazb4p****\\",\\n \\"CreatedBy\\": \\"20169351435666****\\",\\n \\"LatestVersionNumber\\": 1,\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeLimitation' => [ 'summary' => 'Queries the limitations on your account.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28969', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Limitation', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'Limitation' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Value' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidLimitation.NotFound', 'errorMessage' => 'The specified Limitation is not valid.', 'description' => ''], ], ], 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。'], 'title' => 'Query resource quota limits ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeLimitation'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeLimitation', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Limitation\\": \\"\\",\\n \\"Value\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', ], 'DescribeLockedSnapshots' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](https://help.aliyun.com/zh/ecs/developer-reference/api-ecs-2014-05-26-describeregions?spm=a2c4g.11186623.0.i2) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SnapshotIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'An array of one to 100 snapshot IDs.', 'type' => 'array', 'items' => ['description' => 'The snapshot ID.', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****', 'title' => '', 'required' => false], 'required' => false, 'maxItems' => 100, 'example' => '', ], ], [ 'name' => 'LockStatus', 'in' => 'query', 'schema' => ['description' => 'The lock status. Valid values:'."\n" ."\n" .'- compliance-cooloff: The snapshot is locked in compliance mode and is within its cool-off period. The snapshot cannot be deleted. Users with the required RAM permissions can unlock the snapshot, extend or shorten the cool-off period, and extend or shorten the lock duration.'."\n" ."\n" .'- compliance: The snapshot is locked in compliance mode and the cool-off period has ended. The snapshot cannot be unlocked or deleted. Users with the required RAM permissions can extend the lock duration.'."\n" ."\n" .'- expired: The lock on the snapshot has expired. The snapshot is no longer locked and can be deleted.', 'type' => 'string', 'required' => false, 'example' => 'compliance-cooloff', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results. It is the `NextToken` value from a previous response.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****', 'title' => '', 'required' => false], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Maximum value: 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If you do not specify this parameter or you specify a value smaller than 10, the default value is 10.'."\n" ."\n" .'- If you specify a value larger than 100, the value is capped at 100.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'example' => '10', 'default' => '10', 'title' => '', 'required' => false], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform a dry run. Valid values:'."\n" ."\n" .'- true: performs a dry run without performing the actual operation. The system checks for required parameters, the request format, and business constraints. If the request fails the dry run, an error message is returned. If the request passes the dry run, the DryRunOperation error code is returned.'."\n" ."\n" .'- false (default): performs a dry run and performs the actual operation if the request passes the dry run.', 'type' => 'boolean', 'example' => 'false', 'title' => '', 'required' => false], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'NextToken' => ['description' => 'A token to retrieve the next page of results. If this parameter is empty, all results have been returned.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****', 'title' => ''], 'LockedSnapshotsInfo' => [ 'title' => '', 'description' => 'Details about the locked snapshots.', 'type' => 'array', 'items' => [ 'title' => '', 'description' => 'Details of a locked snapshot.', 'type' => 'object', 'properties' => [ 'SnapshotId' => ['description' => 'The snapshot ID.', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****', 'title' => ''], 'LockMode' => ['description' => 'The lock mode. Valid value:'."\n" ."\n" .'- compliance: The snapshot is locked in compliance mode. A snapshot locked in compliance mode cannot be unlocked and can only be deleted after its lock duration expires. You cannot shorten the lock duration, but users with the required RAM permissions can extend the lock duration at any time. When you lock a snapshot in compliance mode, you can optionally specify a cool-off period.', 'type' => 'string', 'example' => 'compliance', 'title' => ''], 'LockStatus' => ['description' => 'The lock status. Valid values:'."\n" ."\n" .'- compliance-cooloff: The snapshot is locked in compliance mode and is in the cool-off period. The snapshot cannot be deleted. However, users with the required RAM permissions can unlock the snapshot and adjust the cool-off period or lock duration.'."\n" ."\n" .'- compliance: The snapshot is locked in compliance mode, and its cool-off period has ended. The snapshot cannot be unlocked or deleted. However, users with the required RAM permissions can extend the lock duration.'."\n" ."\n" .'- expired: The lock has expired, and the snapshot can be deleted.', 'type' => 'string', 'example' => 'compliance-cooloff', 'title' => ''], 'LockCreationTime' => ['description' => 'The time when the snapshot was locked. The time follows the [ISO 8601](https://help.aliyun.com/zh/ecs/developer-reference/iso-8601-time-format?spm=a2c4g.11186623.0.0.277c6c92kl7kXM) standard and is displayed in UTC in the yyyy-MM-ddTHH:mm:ssZ format.', 'type' => 'string', 'example' => '2025-10-15T10:00:00Z', 'title' => ''], 'CoolOffPeriod' => ['description' => 'The cool-off period for compliance mode, in hours.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'CoolOffPeriodExpiredTime' => ['description' => 'The time when the cool-off period ends. The time follows the [ISO 8601](https://help.aliyun.com/zh/ecs/developer-reference/iso-8601-time-format?spm=a2c4g.11186623.0.0.277c6c92kl7kXM) standard and is displayed in UTC in the yyyy-MM-ddTHH:mm:ssZ format.', 'type' => 'string', 'example' => '2025-10-15T13:00:00Z', 'title' => ''], 'LockDuration' => ['description' => 'The lock duration in days. The lock automatically expires when this period ends.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'LockDurationStartTime' => ['description' => 'The time when the lock duration starts. The time follows the [ISO 8601](https://help.aliyun.com/zh/ecs/developer-reference/iso-8601-time-format?spm=a2c4g.11186623.0.0.277c6c92kl7kXM) standard and is displayed in UTC in the yyyy-MM-ddTHH:mm:ssZ format. If a snapshot in the progressing state is locked, its lock duration begins after it enters the accomplished state.', 'type' => 'string', 'example' => '2025-10-15T10:00:00Z', 'title' => ''], 'LockExpiredTime' => ['description' => 'The time when the lock expires. The time follows the [ISO 8601](https://help.aliyun.com/zh/ecs/developer-reference/iso-8601-time-format?spm=a2c4g.11186623.0.0.277c6c92kl7kXM) standard and is displayed in UTC in the yyyy-MM-ddTHH:mm:ssZ format.', 'type' => 'string', 'example' => '2025-10-16T10:00:00Z', 'title' => ''], ], 'example' => '', ], 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidLockStatus.Malformed', 'errorMessage' => 'The specified parameter LockStatus is invalid. Please check the valid range for this parameter.', 'description' => 'The specified parameter LockStatus is invalid. Please check the valid range for this parameter.'], ], 404 => [ ['errorCode' => 'InvalidSnapshotLock.NotFound', 'errorMessage' => 'The specified snapshot(s) %s is(are) not locked.', 'description' => 'The specified snapshot is not locked.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeLockedSnapshots', 'summary' => 'Queries the lock status and configuration of a snapshot.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeLockedSnapshots', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/{#SnapshotId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"LockedSnapshotsInfo\\": [\\n {\\n \\"SnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"LockMode\\": \\"compliance\\",\\n \\"LockStatus\\": \\"compliance-cooloff\\",\\n \\"LockCreationTime\\": \\"2025-10-15T10:00:00Z\\",\\n \\"CoolOffPeriod\\": 3,\\n \\"CoolOffPeriodExpiredTime\\": \\"2025-10-15T13:00:00Z\\",\\n \\"LockDuration\\": 1,\\n \\"LockDurationStartTime\\": \\"2025-10-15T10:00:00Z\\",\\n \\"LockExpiredTime\\": \\"2025-10-16T10:00:00Z\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeManagedInstances' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29284', 'abilityTreeNodes' => ['FEATUREecsLJD94P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'OsType', 'in' => 'query', 'schema' => ['description' => 'The operating system type of the managed instance. Valid values:'."\n" ."\n" .'- windows'."\n" ."\n" .'- linux'."\n" ."\n" .'- FreeBSD', 'type' => 'string', 'required' => false, 'example' => 'windows', 'title' => ''], ], [ 'name' => 'InstanceIp', 'in' => 'query', 'schema' => ['description' => 'The internal or public IP address of the managed instance.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**', 'title' => ''], ], [ 'name' => 'ActivationId', 'in' => 'query', 'schema' => ['description' => 'The ID of the activation code.', 'type' => 'string', 'required' => false, 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F7494****', 'title' => ''], ], [ 'name' => 'MachineId', 'in' => 'query', 'schema' => ['description' => 'The value of the MachineId parameter that you specify when you register a managed instance. A maximum of 36 characters are allowed. Sample registration script:'."\n" ."\n" .'```'."\n" .'aliyun-service --register \\'."\n" .' --RegionId=cn-hangznou \\'."\n" .' --ActivationId=xxxxxxxxxxx \\'."\n" .' --ActivationCode=xxxxxxxxx \\'."\n" .'--MachineId=xxxxxx \\ # Optional. The unique identifier of the machine.'."\n" .' --ForceResue '."\n" .'```'."\n" ."\n" .'- If the MachineId and ForceResult parameters are specified during registration, the Cloud Assistant generates a fixed managed instance ID for this MachineId.'."\n" ."\n" .'- If the MachineId parameter is not explicitly specified, the Cloud Assistant will automatically generate a MachineId value based on the hardware information of the machine.'."\n" ."\n" .'- We recommend that you explicitly specify the MachineId and ForceResult parameters to mark the mapping between a managed instance and an on-premises machine.', 'type' => 'string', 'required' => false, 'example' => 'GOG4X8312A0188', 'title' => ''], ], [ 'name' => 'InstanceName', 'in' => 'query', 'schema' => ['description' => 'The name of the managed instance.', 'type' => 'string', 'required' => false, 'example' => 'my-webapp-server', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter will be removed in the future. We recommend that you use NextToken and MaxResults for a paged query.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter will be removed in the future. We recommend that you use NextToken and MaxResults for a paged query.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of managed instance N. Valid values of N: 1 to 50.', 'type' => 'array', 'items' => ['description' => 'The ID of managed instance N. Valid values of N: 1 to 50.', 'type' => 'string', 'required' => false, 'example' => 'mi-hz018jrc1o0****', 'title' => ''], 'required' => false, 'example' => 'mi-hz018jrc1o0****', 'maxItems' => 50, 'title' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the managed instance.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the managed instance.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the managed instance. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If a single tag is specified to query resources, up to 1,000 resources that have this tag added can be displayed in the response. If multiple tags are specified to query resources, up to 1,000 resources that have all these tags added can be displayed in the response. To query more than 1,000 resources that have specified tags added, call the [ListTagResources](~~110425~~) operation.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot start with `acs:` or `aliyun`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the managed instance. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page.'."\n" ."\n" .'Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, '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. You must specify the token that is obtained from the previous query as the value of NextToken.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the managed instance belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-123******', 'title' => ''], ], [ 'name' => 'Connected', 'in' => 'query', 'schema' => ['description' => 'Indicates whether the managed instance is connected.'."\n" ."\n" .'true: The managed instance is connected, and you can manage it by using Cloud Assistant.'."\n" ."\n" .'false: The managed instance is not connected. The server may be shut down or the Cloud Assistant Agent may not be installed correctly.', 'type' => 'string', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '77115469-F2C5-4ECA-94F7-FA04F2FD****', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of queried managed instances.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'Instances' => [ 'description' => 'The queried managed instances.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LastInvokedTime' => ['description' => 'The time when the last Cloud Assistant task was executed.', 'type' => 'string', 'example' => '2021-01-20T09:00:40Z', 'title' => ''], 'Connected' => ['description' => 'Indicates whether the managed instance is connected. Valid values:'."\n" ."\n" .'- true: The managed instance is connected. You can manage the instance by using Cloud Assistant.'."\n" ."\n" .'- false: The managed instance is not connected. The managed instance may be down or Cloud Assistant Agent may be incorrectly installed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'InternetIp' => ['description' => 'The public IP address of the managed instance.', 'type' => 'string', 'example' => '40.65.**.**', 'title' => ''], 'Hostname' => ['description' => 'The hostname of the managed instance.', 'type' => 'string', 'example' => 'demo', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the managed instance.', 'type' => 'string', 'example' => 'mi-hz018jrc1o0****', 'title' => ''], 'ActivationId' => ['description' => 'The ID of the activation code.', 'type' => 'string', 'example' => '3704F543-F768-43FA-9864-897F75B3****', 'title' => ''], 'IntranetIp' => ['description' => 'The internal IP address of the managed instance.', 'type' => 'string', 'example' => '10.0.**.**', 'title' => ''], 'AgentVersion' => ['description' => 'The version number of Cloud Assistant Agent.', 'type' => 'string', 'example' => '2.2.0.102', 'title' => ''], 'RegistrationTime' => ['description' => 'The time when the managed instance was registered.', 'type' => 'string', 'example' => '2021-01-20T08:57:56Z', 'title' => ''], 'InstanceName' => ['description' => 'The name of the managed instance.', 'type' => 'string', 'example' => 'webAPP-linux-01', 'title' => ''], 'OsType' => ['description' => 'The operating system type of the managed instance.', 'type' => 'string', 'example' => 'Linux', 'title' => ''], 'OsVersion' => ['description' => 'The version information of the operating system.', 'type' => 'string', 'example' => 'Linux_#38~18.04.1-Ubuntu SMP Wed Jan 6 18:26:30 UTC 2021_x86_64', 'title' => ''], 'InvocationCount' => ['description' => 'The number of times that Cloud Assistant tasks were executed on the managed instance.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'MachineId' => ['description' => 'The machine code of the managed instance.', 'type' => 'string', 'example' => 'e03231b37ab14e53b5795ad625fc****', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the managed instance.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the managed instance.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The key of tag N of the managed instance. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If a single tag is specified to query resources, up to 1,000 resources that have this tag added are returned. If multiple tags are specified to query resources, up to 1,000 resources that have all these tags added are returned. To query more than 1,000 resources that have the specified tags, call the [ListTagResources](~~110425~~) operation.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot contain `http://` or `https://`. The tag key cannot start with `acs:` or `aliyun`.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'TagValue' => ['description' => 'The value of tag N of the managed instance. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the managed instance belongs.', 'type' => 'string', 'example' => 'rg-123******', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'InvalidParam.PageNumber', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.PageSize', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The Tags parameter number is exceed.', 'description' => 'The number of tags exceeds the maximum limit.'], ['errorCode' => 'MissingParameter.TagKey', 'errorMessage' => 'You must specify Tag.N.Key.', 'description' => 'The tag key is not specified.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'title' => 'DescribeManagedInstances', 'summary' => 'Queries managed instances.', 'description' => 'When performing a paged query on the home page, you only need to set `MaxResults` to limit the number of entries in the return result. The `NextToken` in the returned result serves as the credential for querying subsequent pages. When querying subsequent pages, set the `NextToken` parameter to the `NextToken` obtained from the previous response as the query credential, and set `MaxResults` to limit the number of returned entries.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-10T09:04:51.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-12-21T01:35:08.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-11-23T01:21:54.000Z', 'description' => 'Request parameters changed, Response parameters changed, Response parameters changed'], ['createdAt' => '2022-02-25T07:27:48.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeManagedInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeManagedInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"77115469-F2C5-4ECA-94F7-FA04F2FD****\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"Instances\\": [\\n {\\n \\"LastInvokedTime\\": \\"2021-01-20T09:00:40Z\\",\\n \\"Connected\\": true,\\n \\"InternetIp\\": \\"40.65.**.**\\",\\n \\"Hostname\\": \\"demo\\",\\n \\"InstanceId\\": \\"mi-hz018jrc1o0****\\",\\n \\"ActivationId\\": \\"3704F543-F768-43FA-9864-897F75B3****\\",\\n \\"IntranetIp\\": \\"10.0.**.**\\",\\n \\"AgentVersion\\": \\"2.2.0.102\\",\\n \\"RegistrationTime\\": \\"2021-01-20T08:57:56Z\\",\\n \\"InstanceName\\": \\"webAPP-linux-01\\",\\n \\"OsType\\": \\"Linux\\",\\n \\"OsVersion\\": \\"Linux_#38~18.04.1-Ubuntu SMP Wed Jan 6 18:26:30 UTC 2021_x86_64\\",\\n \\"InvocationCount\\": 1,\\n \\"MachineId\\": \\"e03231b37ab14e53b5795ad625fc****\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-123******\\"\\n }\\n ],\\n \\"NextToken\\": \\"AAAAAdDWBF2\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribeNatGateways' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region to which the nat gateways belong. Call the DescribeRegions operation to obtain the latest region list.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'NatGatewayId', 'in' => 'query', 'schema' => ['description' => 'The ID of the nat gateway.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC to which the nat gateway belongs.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. The valid range is 1 to 100. Default: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries to return per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The unique ID of the request.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of entries that match the query.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'NatGateways' => [ 'itemNode' => true, 'description' => 'The details of the NAT gateways.', 'type' => 'object', 'properties' => [ 'NatGateway' => [ 'description' => 'A list of NAT gateways.', 'type' => 'array', 'items' => [ 'description' => 'The details of a NAT gateway.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the NAT gateway. Valid values: `Creating`, `Available`, `Modifying`, `Deleting`, and `Converting`.', 'type' => 'string', 'title' => '', 'example' => ''], 'CreationTime' => ['description' => 'The time when the NAT gateway was created. The time is in UTC and in the `YYYY-MM-DDThh:mm:ssZ` format.', 'type' => 'string', 'title' => '', 'example' => ''], 'VpcId' => ['description' => 'The ID of the VPC that contains the NAT gateway.', 'type' => 'string', 'title' => '', 'example' => ''], 'Spec' => ['description' => 'The specification of the NAT gateway. Valid values: `Small`, `Middle`, and `Large`.', 'type' => 'string', 'title' => '', 'example' => ''], 'Description' => ['description' => 'The description of the NAT gateway.', 'type' => 'string', 'title' => '', 'example' => ''], 'NatGatewayId' => ['description' => 'The unique ID of the NAT gateway.', 'type' => 'string', 'title' => '', 'example' => ''], 'BusinessStatus' => ['description' => 'The operational status of the NAT gateway. Valid values: `Normal` and `Abnormal`.', 'type' => 'string', 'title' => '', 'example' => ''], 'Name' => ['description' => 'The name of the NAT gateway.', 'type' => 'string', 'title' => '', 'example' => ''], 'InstanceChargeType' => ['description' => 'The billing method of the NAT gateway. The value is always `PostPaid`.', 'type' => 'string', 'title' => '', 'example' => ''], 'RegionId' => ['description' => 'The ID of the region where the NAT gateway is deployed.', 'type' => 'string', 'title' => '', 'example' => ''], 'ForwardTableIds' => [ 'itemNode' => true, 'description' => 'The IDs of the forwarding tables.', 'type' => 'object', 'properties' => [ 'ForwardTableId' => [ 'description' => 'A list of forwarding table IDs.', 'type' => 'array', 'items' => ['description' => 'A forwarding table ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'BandwidthPackageIds' => [ 'itemNode' => true, 'description' => 'The IDs of the bandwidth packages.', 'type' => 'object', 'properties' => [ 'BandwidthPackageId' => [ 'description' => 'A list of bandwidth package IDs.', 'type' => 'array', 'items' => ['description' => 'A bandwidth package ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAliuid', 'errorMessage' => 'User Id is not valid.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeNatGateways'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNatGateways'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeNatGateways', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"NatGateways\\": {\\n \\"NatGateway\\": [\\n {\\n \\"Status\\": \\"\\",\\n \\"CreationTime\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"Spec\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"NatGatewayId\\": \\"\\",\\n \\"BusinessStatus\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"InstanceChargeType\\": \\"\\",\\n \\"RegionId\\": \\"\\",\\n \\"ForwardTableIds\\": {\\n \\"ForwardTableId\\": [\\n \\"\\"\\n ]\\n },\\n \\"BandwidthPackageIds\\": {\\n \\"BandwidthPackageId\\": [\\n \\"\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeNatGateways', 'summary' => 'DescribeNatGateways', ], 'DescribeNetworkInterfaceAttribute' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29285', 'abilityTreeNodes' => ['FEATUREecsTML5VX'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the elastic network interface resides. Call the [DescribeRegions](~~25609~~) operation to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is not publicly available.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the elastic network interface resides. Call the [DescribeRegions](~~25609~~) operation to get the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the elastic network interface.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'eni-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Attribute', 'in' => 'query', 'schema' => ['description' => 'The attribute to query. Valid values:'."\n" ."\n" .'`attachment`: The attachment details for member network interfaces associated with a trunk network interface. This is an invitation-only parameter.'."\n" ."\n" .'`connectionTrackingConfiguration`: The connection tracking configuration.', 'type' => 'string', 'required' => false, 'example' => 'attachment', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The details of the elastic network interface.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the elastic network interface was created.', 'type' => 'string', 'example' => '2019-12-25T12:31:31Z', 'title' => ''], 'VpcId' => ['description' => 'The ID of the VPC to which the elastic network interface belongs.', 'type' => 'string', 'example' => 'vpc-bp67acfmxazb4p****', 'title' => ''], 'Type' => ['description' => 'The type of the elastic network interface. Valid values:'."\n" ."\n" .'- `Primary`: The primary network interface.'."\n" ."\n" .'- `Secondary`: The secondary network interface.', 'type' => 'string', 'example' => 'Secondary', 'title' => ''], 'Status' => ['description' => 'The status of the elastic network interface. Valid values:'."\n" ."\n" .'- `Available`: The elastic network interface is available.'."\n" ."\n" .'- `Attaching`: The elastic network interface is being attached.'."\n" ."\n" .'- `InUse`: The elastic network interface is attached.'."\n" ."\n" .'- `Detaching`: The elastic network interface is being detached.'."\n" ."\n" .'- `Deleting`: The elastic network interface is being deleted.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'NetworkInterfaceTrafficMode' => ['description' => 'The communication mode of the elastic network interface. Valid values:'."\n" ."\n" .'- `Standard`: Uses TCP communication.'."\n" ."\n" .'- `HighPerformance`: Uses the Elastic RDMA Interface (ERI) for RDMA communication.'."\n" ."\n" .'> The `HighPerformance` value is supported only by RDMA-enhanced instances, such as the c7re family.', 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'NetworkInterfaceName' => ['description' => 'The name of the elastic network interface.', 'type' => 'string', 'example' => 'my-eni-name', 'title' => ''], 'MacAddress' => ['description' => 'The MAC address of the elastic network interface.', 'type' => 'string', 'example' => '00:16:3e:12:**:**', 'title' => ''], 'QueuePairNumber' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], 'NetworkInterfaceId' => ['description' => 'The ID of the elastic network interface.', 'type' => 'string', 'example' => 'eni-bp125p95hhdhn3ot****', 'title' => ''], 'ServiceID' => ['description' => 'The ID of the virtual service provider (VSP) for the elastic network interface.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345678910', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the instance to which the elastic network interface is attached.'."\n" ."\n" .'> This parameter is not returned if the elastic network interface is managed by another Alibaba Cloud service.', 'type' => 'string', 'example' => 'i-bp1e2l6djkndyuli****', 'title' => ''], 'OwnerId' => ['description' => 'The ID of the account to which the elastic network interface belongs.', 'type' => 'string', 'example' => '123456****', 'title' => ''], 'ServiceManaged' => ['description' => 'Indicates whether the elastic network interface is managed by an Alibaba Cloud service or a VSP.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'VSwitchId' => ['description' => 'The ID of the vSwitch to which the elastic network interface is connected.', 'type' => 'string', 'example' => 'vsw-bp1s5fnvk4gn2tws0****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'Description' => ['description' => 'The description of the elastic network interface.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the enterprise resource group to which the elastic network interface belongs. If you use this parameter to filter resources, the number of resources cannot exceed 1,000.'."\n" ."\n" .'> Resources in the default resource group cannot be filtered.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'ZoneId' => ['description' => 'The ID of the zone.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'PrivateIpAddress' => ['description' => 'The primary private IP address of the elastic network interface.', 'type' => 'string', 'example' => '10.1.**.**', 'title' => ''], 'QueueNumber' => ['description' => 'The number of queues supported by the elastic network interface.'."\n" ."\n" .'- For a primary network interface, this parameter returns the default number of queues for the instance type.'."\n" ."\n" .'- For a secondary network interface:'."\n" ."\n" .' - If the interface is in the `InUse` state:'."\n" ."\n" .' - If the queue number was not modified, the default value for the instance type is returned.'."\n" ."\n" .' - If the queue number was modified, the new value is returned.'."\n" ."\n" .' - If the secondary network interface is in the `Available` state:'."\n" ."\n" .' - If the queue number was not modified, this parameter is not returned.'."\n" ."\n" .' - If the queue number was modified, the new value is returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'SecurityGroupIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupId' => [ 'description' => 'The security groups to which the elastic network interface belongs.', 'type' => 'array', 'items' => ['description' => 'The ID of the security group.', 'type' => 'string', 'example' => 'sg-bp18kz60mefsicfg****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AssociatedPublicIp' => [ 'description' => 'The elastic IP address that is associated with the primary private IP address of the elastic network interface.', 'type' => 'object', 'properties' => [ 'PublicIpAddress' => ['description' => 'The public IP address.', 'type' => 'string', 'example' => '116.62.**.**', 'title' => ''], 'AllocationId' => ['description' => 'The ID of the elastic IP address.', 'type' => 'string', 'example' => 'null', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Attachment' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'DeviceIndex' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => 'hide', 'title' => ''], 'InstanceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'hide', 'title' => ''], 'TrunkNetworkInterfaceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'hide', 'title' => ''], 'MemberNetworkInterfaceIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'MemberNetworkInterfaceId' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'array', 'items' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'hide', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NetworkCardIndex' => ['description' => 'The index of the physical network card to which the elastic network interface is attached.'."\n" ."\n" .'- This parameter is not returned if the elastic network interface is `Available`, or if no index was specified during attachment.'."\n" ."\n" .'- If the elastic network interface is `InUse` and an index was specified during attachment, this parameter returns the index of the physical network card.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], ], 'title' => '', 'example' => '', ], 'PrivateIpSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PrivateIpSet' => [ 'description' => 'The private IP addresses of the elastic network interface.', 'type' => 'array', 'items' => [ 'description' => 'The details of the private IP address.', 'type' => 'object', 'properties' => [ 'PrivateIpAddress' => ['description' => 'The private IP address of the elastic network interface.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'Primary' => ['description' => 'Indicates whether this is the primary private IP address.'."\n" ."\n" .'- `true`: The IP address is primary.'."\n" ."\n" .'- `false`: The IP address is secondary.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'AssociatedPublicIp' => [ 'description' => 'The elastic IP address that is associated with the secondary private IP address.', 'type' => 'object', 'properties' => [ 'PublicIpAddress' => ['description' => 'The public IP address.', 'type' => 'string', 'example' => '116.62.**.**', 'title' => ''], 'AllocationId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv6Sets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6Set' => [ 'description' => 'The IPv6 addresses assigned to the elastic network interface.', 'type' => 'array', 'items' => [ 'description' => 'An IPv6 address assigned to the elastic network interface.', 'type' => 'object', 'properties' => [ 'Ipv6Address' => ['description' => 'The IPv6 address assigned to the elastic network interface.', 'type' => 'string', 'example' => '2001:db8:1234:1a00::****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv4PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv4PrefixSet' => [ 'description' => 'The IPv4 prefixes assigned to the elastic network interface.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv4Prefix' => ['description' => 'The IPv4 prefix assigned to the elastic network interface.', 'type' => 'string', 'example' => '192.168.**.0/28', 'title' => ''], ], 'description' => 'An assigned IPv4 prefix.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv6PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6PrefixSet' => [ 'description' => 'The IPv6 prefixes assigned to the elastic network interface.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv6Prefix' => ['description' => 'The IPv6 prefix assigned to the elastic network interface.', 'type' => 'string', 'example' => '2001:db8:1234:1a00:****::/80', 'title' => ''], ], 'description' => 'The assigned IPv6 prefix.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the elastic network interface.', 'type' => 'array', 'items' => [ 'description' => 'The details of the tag.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'BondInterfaceSpecification' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'BondMode' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'SlaveInterfaceSpecification' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SlaveInterfaceSpecificationSet' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'array', 'items' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'SlaveNetworkInterfaceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'WorkState' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'BondNetworkInterfaceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'SlaveInterfaceSpecification' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'SlaveNetworkInterfaceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'WorkState' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'BondNetworkInterfaceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DeleteOnRelease' => ['description' => 'Indicates whether to release the elastic network interface when the associated instance is released.'."\n" ."\n" .'- `true`: The interface is released.'."\n" ."\n" .'- `false`: The interface is retained.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'TcpOptionAddressEnabled' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'NetworkInterfaceTrafficConfig' => [ 'description' => 'The communication parameters of the elastic network interface.', 'type' => 'object', 'properties' => [ 'NetworkInterfaceTrafficMode' => ['description' => 'The communication mode of the elastic network interface.', 'type' => 'string', 'example' => 'HighPerformance', 'title' => ''], 'QueueNumber' => ['description' => 'The number of queues for the elastic network interface.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'QueuePairNumber' => ['description' => 'The number of queue pairs for the RDMA-enabled elastic network interface.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], ], 'title' => '', 'example' => '', ], 'ConnectionTrackingConfiguration' => [ 'description' => 'The connection tracking configuration.'."\n" ."\n" .'For more information, see [Connection timeout management](~~2865958~~).'."\n" ."\n" .'> This parameter is returned only if the `Attribute` parameter is set to `connectionTrackingConfiguration` in the request.', 'type' => 'object', 'properties' => [ 'TcpEstablishedTimeout' => ['description' => 'The timeout period for established TCP connections. Unit: seconds. Valid values: 30, 60, 80, 100, 200, 300, 500, 700, and 910.', 'type' => 'integer', 'format' => 'int32', 'example' => '910', 'title' => ''], 'TcpClosedAndTimeWaitTimeout' => ['description' => 'The timeout period for TCP connections in the `TIME_WAIT` and `FIN-WAIT-2` states. Unit: seconds. Valid values: an integer from 3 to 15.'."\n" ."\n" .'> For ECS instances used with a Network Load Balancer (NLB) or Classic Load Balancer (CLB), the default timeout for connections in the `TIME_WAIT` state is 15 seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'UdpTimeout' => ['description' => 'The timeout period for UDP streams. Unit: seconds. Valid values: 10, 20, 30, 60, 80, and 100.'."\n" ."\n" .'> For ECS instances used with a Network Load Balancer (NLB) or Classic Load Balancer (CLB), the default UDP timeout is 100 seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], ], 'title' => '', 'example' => '', ], 'SourceDestCheck' => ['description' => 'This parameter is not publicly available.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnhancedNetwork' => [ 'description' => 'This parameter is not publicly available.', 'type' => 'object', 'properties' => [ 'EnableSriov' => ['description' => 'This parameter is not publicly available.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'EnableRss' => ['description' => '> This parameter is not publicly available.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'VirtualFunctionTotalQueueNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'VirtualFunctionQuantity' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'QoSConfig' => [ 'title' => '', 'description' => 'The QoS settings.', 'type' => 'object', 'properties' => [ 'EnableQoS' => ['description' => 'Indicates whether QoS is enabled.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'QoS' => [ 'title' => '', 'description' => 'The QoS settings.', 'type' => 'object', 'properties' => [ 'BandwidthTx' => ['description' => 'The maximum outbound bandwidth on the internal network.', 'type' => 'integer', 'format' => 'int64', 'example' => '50000', 'title' => ''], 'BandwidthRx' => ['description' => 'The maximum inbound bandwidth on the internal network.', 'type' => 'integer', 'format' => 'int64', 'example' => '50000', 'title' => ''], 'PpsTx' => ['description' => 'The outbound packet transmission rate on the internal network. Unit: packets per second (pps).', 'type' => 'integer', 'format' => 'int64', 'example' => '50000', 'title' => ''], 'PpsRx' => ['description' => 'The inbound packet transmission rate on the internal network. Unit: packets per second (pps).', 'type' => 'integer', 'format' => 'int64', 'example' => '50000', 'title' => ''], 'ConcurrentConnections' => ['description' => 'The maximum number of connections.', 'type' => 'integer', 'format' => 'int64', 'example' => '50000', 'title' => ''], ], 'example' => '', ], ], 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeNetworkInterfaceAttribute', 'summary' => 'Provides details about a specified elastic network interface.', 'changeSet' => [ ['createdAt' => '2025-12-03T01:32:53.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-05-21T06:48:52.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-01-09T05:47:01.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-09-14T01:40:40.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-07-03T03:08:53.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-05-17T06:05:12.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-05-07T06:51:13.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-02-01T05:40:51.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-10-09T12:23:26.000Z', 'description' => 'Response parameters changed, Response parameters changed'], ['createdAt' => '2023-01-04T03:05:23.000Z', 'description' => 'Response parameters changed, Response parameters changed'], ['createdAt' => '2022-11-24T14:05:53.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-10-28T09:01:35.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNetworkInterfaceAttribute'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeNetworkInterfaceAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"CreationTime\\": \\"2019-12-25T12:31:31Z\\",\\n \\"VpcId\\": \\"vpc-bp67acfmxazb4p****\\",\\n \\"Type\\": \\"Secondary\\",\\n \\"Status\\": \\"Available\\",\\n \\"NetworkInterfaceTrafficMode\\": \\"Standard\\",\\n \\"NetworkInterfaceName\\": \\"my-eni-name\\",\\n \\"MacAddress\\": \\"00:16:3e:12:**:**\\",\\n \\"QueuePairNumber\\": 22,\\n \\"NetworkInterfaceId\\": \\"eni-bp125p95hhdhn3ot****\\",\\n \\"ServiceID\\": 12345678910,\\n \\"InstanceId\\": \\"i-bp1e2l6djkndyuli****\\",\\n \\"OwnerId\\": \\"123456****\\",\\n \\"ServiceManaged\\": true,\\n \\"VSwitchId\\": \\"vsw-bp1s5fnvk4gn2tws0****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Description\\": \\"testDescription\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"PrivateIpAddress\\": \\"10.1.**.**\\",\\n \\"QueueNumber\\": 8,\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-bp18kz60mefsicfg****\\"\\n ]\\n },\\n \\"AssociatedPublicIp\\": {\\n \\"PublicIpAddress\\": \\"116.62.**.**\\",\\n \\"AllocationId\\": \\"null\\"\\n },\\n \\"Attachment\\": {\\n \\"DeviceIndex\\": 0,\\n \\"InstanceId\\": \\"hide\\",\\n \\"TrunkNetworkInterfaceId\\": \\"hide\\",\\n \\"MemberNetworkInterfaceIds\\": {\\n \\"MemberNetworkInterfaceId\\": [\\n \\"hide\\"\\n ]\\n },\\n \\"NetworkCardIndex\\": 0\\n },\\n \\"PrivateIpSets\\": {\\n \\"PrivateIpSet\\": [\\n {\\n \\"PrivateIpAddress\\": \\"172.17.**.**\\",\\n \\"Primary\\": true,\\n \\"AssociatedPublicIp\\": {\\n \\"PublicIpAddress\\": \\"116.62.**.**\\",\\n \\"AllocationId\\": \\"null\\"\\n }\\n }\\n ]\\n },\\n \\"Ipv6Sets\\": {\\n \\"Ipv6Set\\": [\\n {\\n \\"Ipv6Address\\": \\"2001:db8:1234:1a00::****\\"\\n }\\n ]\\n },\\n \\"Ipv4PrefixSets\\": {\\n \\"Ipv4PrefixSet\\": [\\n {\\n \\"Ipv4Prefix\\": \\"192.168.**.0/28\\"\\n }\\n ]\\n },\\n \\"Ipv6PrefixSets\\": {\\n \\"Ipv6PrefixSet\\": [\\n {\\n \\"Ipv6Prefix\\": \\"2001:db8:1234:1a00:****::/80\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"BondInterfaceSpecification\\": {\\n \\"BondMode\\": \\"null\\",\\n \\"SlaveInterfaceSpecification\\": {\\n \\"SlaveInterfaceSpecificationSet\\": [\\n {\\n \\"SlaveNetworkInterfaceId\\": \\"null\\",\\n \\"WorkState\\": \\"null\\",\\n \\"BondNetworkInterfaceId\\": \\"null\\"\\n }\\n ]\\n }\\n },\\n \\"SlaveInterfaceSpecification\\": {\\n \\"SlaveNetworkInterfaceId\\": \\"null\\",\\n \\"WorkState\\": \\"null\\",\\n \\"BondNetworkInterfaceId\\": \\"null\\"\\n },\\n \\"DeleteOnRelease\\": true,\\n \\"TcpOptionAddressEnabled\\": \\"null\\",\\n \\"NetworkInterfaceTrafficConfig\\": {\\n \\"NetworkInterfaceTrafficMode\\": \\"HighPerformance\\",\\n \\"QueueNumber\\": 8,\\n \\"QueuePairNumber\\": 8\\n },\\n \\"ConnectionTrackingConfiguration\\": {\\n \\"TcpEstablishedTimeout\\": 910,\\n \\"TcpClosedAndTimeWaitTimeout\\": 3,\\n \\"UdpTimeout\\": 30\\n },\\n \\"SourceDestCheck\\": false,\\n \\"EnhancedNetwork\\": {\\n \\"EnableSriov\\": false,\\n \\"EnableRss\\": true,\\n \\"VirtualFunctionTotalQueueNumber\\": 0,\\n \\"VirtualFunctionQuantity\\": 0\\n },\\n \\"QoSConfig\\": {\\n \\"EnableQoS\\": false,\\n \\"QoS\\": {\\n \\"BandwidthTx\\": 50000,\\n \\"BandwidthRx\\": 50000,\\n \\"PpsTx\\": 50000,\\n \\"PpsRx\\": 50000,\\n \\"ConcurrentConnections\\": 50000\\n }\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribeNetworkInterfacePermissions' => [ 'summary' => 'Queries the list of Elastic Network Interface (ENI) permissions that you have granted to an Alibaba Cloud partner (certified ISV) or an individual user.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29286', 'abilityTreeNodes' => ['FEATUREecsTML5VX'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region of the network interface controller (NIC) permissions. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the network interface controller (NIC). You must specify `NetworkInterfaceId` or `NetworkInterfacePermissionId.N` to determine the query scope.', 'type' => 'string', 'required' => false, 'example' => 'eni-bp17pdijfczax****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the NIC permission list.'."\n" ."\n" .'Minimum value: 1'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for a paged query.'."\n" ."\n" .'Maximum value: 100'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NetworkInterfacePermissionId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of NIC permission IDs. Number of elements in the list: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'The ID of the NIC permission.', 'type' => 'string', 'required' => false, 'example' => 'eni-perm-bp1cs4lwn56lfb****', 'title' => ''], 'required' => false, 'example' => 'eni-perm-bp1cs4lwn56lfb****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page in a paging query.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '0FCD3DEF-63D3-4605-A818-805C8BD7DB87', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'NetworkInterfacePermissions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'NetworkInterfacePermission' => [ 'description' => 'The collection of NIC permissions.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Permission' => ['description' => 'The NIC permission.', 'type' => 'string', 'example' => 'InstanceAttach', 'title' => ''], 'NetworkInterfaceId' => ['description' => 'The ID of the NIC.', 'type' => 'string', 'example' => 'eni-bp14v2sdd3v8htln****', 'title' => ''], 'AccountId' => ['description' => 'The ID of the Alibaba Cloud partner (certified ISV) account or individual user.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890', 'title' => ''], 'NetworkInterfacePermissionId' => ['description' => 'The ID of the NIC permission.', 'type' => 'string', 'example' => 'eni-perm-bp1cs4lwn56lfb****', 'title' => ''], 'ServiceName' => ['description' => 'The service name of the Alibaba Cloud service.', 'type' => 'string', 'example' => 'Elastic Compute Service', 'title' => ''], 'PermissionState' => ['description' => 'The status of the NIC permission. Valid values:'."\n" ."\n" .'- Pending: Authorization in progress.'."\n" .'- Granted: Authorization granted.'."\n" .'- Revoking: Authorization being revoked.'."\n" .'- Revoked: Authorization revoked.', 'type' => 'string', 'example' => 'Granted', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'NotBelongUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage the specified resource.'], ['errorCode' => 'InvalidOperation.PermissionExisted', 'errorMessage' => '%s', 'description' => 'This NetworkInterfacePermission already exists.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ], [ ['errorCode' => 'InvalidOperation.PermissionNotExisted', 'errorMessage' => '%s', 'description' => 'The operation is invalid. First apply for permissions to perform the operation.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"0FCD3DEF-63D3-4605-A818-805C8BD7DB87\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"NetworkInterfacePermissions\\": {\\n \\"NetworkInterfacePermission\\": [\\n {\\n \\"Permission\\": \\"InstanceAttach\\",\\n \\"NetworkInterfaceId\\": \\"eni-bp14v2sdd3v8htln****\\",\\n \\"AccountId\\": 1234567890,\\n \\"NetworkInterfacePermissionId\\": \\"eni-perm-bp1cs4lwn56lfb****\\",\\n \\"ServiceName\\": \\"Elastic Compute Service\\",\\n \\"PermissionState\\": \\"Granted\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query NIC permissions granted to certified ISVs or individual users', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNetworkInterfacePermissions'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeNetworkInterfacePermissions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], ], 'DescribeNetworkInterfaces' => [ 'summary' => 'Queries the details of one or more Elastic Network Interface (ENIs).', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29287', 'abilityTreeNodes' => ['FEATUREecsTML5VX'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the ENI. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to use for query.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the ENI. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the ENI. Valid values of N: 1 to 20.'."\n" ."\n" .'If a single tag is specified to query ENIs, up to 1,000 ENIs that have this tag can be returned. If multiple tags are specified to query ENIs, up to 1,000 ENIs that have all these tags can be returned. To query more than 1,000 resources that have specified tags, call the [ListTagResources](~~110425~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the ENI. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the ENI belongs. If this parameter is specified to query resources, up to 1,000 resources that belong to the specified resource group can be returned.'."\n" ."\n" .'> Resources in the default resource group are displayed in the response regardless of how this parameter is set.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the vSwitch with which the ENI is associated.', 'type' => 'string', 'required' => false, 'example' => 'vsw-bp16usj2p27htro3****', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the virtual private cloud (VPC) to which the elastic network interface (ENI) belongs.', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp1j7w3gc1cexjqd****', 'title' => ''], ], [ 'name' => 'PrimaryIpAddress', 'in' => 'query', 'schema' => ['description' => 'The primary private IPv4 address of the ENI.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security group to which the secondary ENI belongs.'."\n" ."\n" .'- To query the details of secondary ENIs based on the ID of a security group, specify this parameter.'."\n" ."\n" .'- To query the details of primary ENIs based on the ID of a security group, call the [DescribeInstances](~~25506~~) operation and specify the `SecurityGroupId` parameter.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp144yr32sx6ndw****', 'title' => ''], ], [ 'name' => 'NetworkInterfaceName', 'in' => 'query', 'schema' => ['description' => 'The name of the ENI.', 'type' => 'string', 'required' => false, 'example' => 'test-eni-name', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The type of the ENI. Valid values:'."\n" ."\n" .'- Primary'."\n" ."\n" .'- Secondary'."\n" ."\n" .'This parameter is empty by default, which indicates that both primary and secondary ENIs are queried.', 'type' => 'string', 'required' => false, 'example' => 'Secondary', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance to which the ENI is attached.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1e2l6djkndyuli****', 'title' => ''], ], [ 'name' => 'ServiceManaged', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the user of the ENI is an Alibaba Cloud service or a distributor.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The state of the ENI. Valid values:'."\n" ."\n" .'- Available: The ENI is available.'."\n" ."\n" .'- Attaching: The ENI is being attached to an instance.'."\n" ."\n" .'- InUse: The ENI is attached to an instance.'."\n" ."\n" .'- Detaching: The ENI is being detached from an instance.'."\n" ."\n" .'- Deleting: The ENI is being deleted.'."\n" ."\n" .'This parameter is empty by default, which indicates that ENIs in all states are queried.', 'type' => 'string', 'required' => false, 'example' => 'Available', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.'."\n" ."\n" .'> This parameter will be removed in the future. We recommend that you use NextToken and MaxResults for a paged query.', 'type' => 'integer', 'format' => 'int32', 'deprecated' => true, 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 1000.'."\n" ."\n" .'Default value: 10.'."\n" ."\n" .'> This parameter will be removed in the future. We recommend that you use NextToken and MaxResults for a paged query.', 'type' => 'integer', 'format' => 'int32', 'deprecated' => true, 'required' => false, 'example' => '100', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set the value to the `NextToken` value returned in the last call to this operation.'."\n" ."\n" .'For more information about how to check the responses returned by this operation, see the preceding "Description" section.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return on each page. Valid values: 10 to 500.'."\n" ."\n" .'Default values:'."\n" ."\n" .'- If this parameter is not specified or if this parameter is set to a value less than 10, the default value is 10.'."\n" ."\n" .'- If this parameter is set to a value greater than 500, the default value is 500.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '50', 'title' => ''], ], [ 'name' => 'PrivateIpAddress', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'An array that consists of the secondary private IPv4 addresses of the ENI. You can specify multiple secondary private IPv4 addresses. Valid values of N: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'The secondary private IPv4 addresses of the ENI. You can specify multiple secondary private IPv4 addresses. Valid values of N: 1 to 100.', 'type' => 'string', 'required' => false, 'example' => '192.168.**.**', 'title' => ''], 'required' => false, 'example' => '192.168.**.**', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'An array that consists of the IDs of the ENIs. You specify multiple ENI IDs. Valid values of N: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'The ID of the ENI N. You specify multiple ENI IDs. Valid values of N: 1 to 100.', 'type' => 'string', 'required' => false, 'example' => 'eni-bp125p95hhdhn3ot****', 'title' => ''], 'required' => false, 'example' => 'eni-bp125p95hhdhn3ot****', 'maxItems' => 1000, 'title' => '', ], ], [ 'name' => 'Ipv6Address', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'An array that consists of the IPv6 address of the ENI. You can specify multiple IPv6 addresses. Valid values of N: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'IPv6 address N of the ENI. You can specify multiple IPv6 addresses. Valid values of N: 1 to 100.', 'type' => 'string', 'required' => false, 'example' => '2408:4321:180:1701:94c7:bc38:3bfa:****', 'title' => ''], 'required' => false, 'example' => '2408:4321:180:1701:94c7:bc38:3bfa:****', 'maxItems' => 1000, 'title' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the ENI belongs. If this parameter is specified to query resources, up to 1,000 resources that belong to the specified resource group can be returned.'."\n" ."\n" .'> Resources in the default resource group are displayed in the response regardless of how this parameter is set.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'PageSize' => ['description' => 'The number of entries returned per page.'."\n" ."\n" .'> This parameter will be removed in the future. We recommend that you use the NextToken and MaxResults parameters for a paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned page.'."\n" ."\n" .'> This parameter will be removed in the future. We recommend that you use the NextToken and MaxResults parameters for a paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of ENIs.'."\n" ."\n" .'> If you specify the `MaxResults` and `NextToken` parameters to perform a paged query, the value of the `TotalCount` response parameter is invalid.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'NetworkInterfaceSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'NetworkInterfaceSet' => [ 'description' => 'Details of the ENIs.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the security group was created. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2019-12-25T12:31:31Z', 'title' => ''], 'VpcId' => ['description' => 'The ID of the VPC to which the ENI belongs.', 'type' => 'string', 'example' => 'vpc-bp1j7w3gc1cexjqd****', 'title' => ''], 'Type' => ['description' => 'The type of the ENI.', 'type' => 'string', 'example' => 'Secondary', 'title' => ''], 'Status' => ['description' => 'The state of the ENI.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'NetworkInterfaceTrafficMode' => ['description' => 'The communication mode of the ENI. Valid values:'."\n" ."\n" .'- Standard: The TCP communication mode is used.'."\n" ."\n" .'- HighPerformance: The Elastic RDMA Interface (ERI) is enabled and the remote direct memory access (RDMA) communication mode is used.'."\n" ."\n" .'> This parameter can have a value of HighPerformance only when the ENI is attached to a c7re RDMA-enhanced instance that resides in Beijing Zone K.', 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'NetworkInterfaceName' => ['description' => 'The name of the ENI.', 'type' => 'string', 'example' => 'my-eni-name', 'title' => ''], 'MacAddress' => ['description' => 'The MAC address of the ENI.', 'type' => 'string', 'example' => '00:16:3e:12:**:**', 'title' => ''], 'QueuePairNumber' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'NetworkInterfaceId' => ['description' => 'The ID of the ENI.', 'type' => 'string', 'example' => 'eni-bp125p95hhdhn3ot****', 'title' => ''], 'ServiceID' => ['description' => 'The ID of the distributor to which the ENI belongs.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345678910', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the Elastic Compute Service (ECS) instance to which the ENI is attached.'."\n" ."\n" .'> If the ENI is managed by other Alibaba Cloud services, no instance ID is returned.', 'type' => 'string', 'example' => 'i-bp1e2l6djkndyuli****', 'title' => ''], 'OwnerId' => ['description' => 'The ID of the account to which the ENI belongs.', 'type' => 'string', 'example' => '123456****', 'title' => ''], 'ServiceManaged' => ['description' => 'Indicates whether the user of the ENI is an Alibaba Cloud service or a distributor.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'VSwitchId' => ['description' => 'The ID of the vSwitch.', 'type' => 'string', 'example' => 'vsw-bp16usj2p27htro3****', 'title' => ''], 'Description' => ['description' => 'The description of the ENI.', 'type' => 'string', 'example' => 'DescriptionTest', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the ENI belongs.', 'type' => 'string', 'example' => 'rg-2ze88m67qx5z****', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the ENI.', 'type' => 'string', 'example' => 'cn-hangzhou-e', 'title' => ''], 'PrivateIpAddress' => ['description' => 'The primary private IP address of the ENI.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'QueueNumber' => ['description' => 'The number of queues supported by the ENI.'."\n" ."\n" .'- If the ENI is a secondary ENI in the InUse state and the number of queues supported by the ENI has never been modified, the default number of queues per secondary ENI that the instance type supports is returned.'."\n" ."\n" .'- If the ENI is a secondary ENI and the number of queues supported by the ENI has been modified, the new number of queues is returned.'."\n" ."\n" .'- If the ENI is a secondary ENI in the Available state and the number of queues supported by the ENI has never been modified, an empty value is returned.'."\n" ."\n" .'- If the ENI is a primary ENI, the default number of queues per primary ENI that the instance type supports is returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'PrivateIpSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PrivateIpSet' => [ 'description' => 'Details about the private IP addresses of the ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PrivateIpAddress' => ['description' => 'The private IP address of the ENI.', 'type' => 'string', 'example' => '172.17.**.**', 'title' => ''], 'Primary' => ['description' => 'Indicates whether the private IP address is the primary private IP address. Valid values:'."\n" ."\n" .'- true: The IP address is the primary private IP address.'."\n" ."\n" .'- false: The IP address is a secondary private IP address.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'AssociatedPublicIp' => [ 'description' => 'The elastic IP address (EIP) that is associated with the private IP address.', 'type' => 'object', 'properties' => [ 'PublicIpAddress' => ['description' => 'The EIP.', 'type' => 'string', 'example' => '116.62.**.**', 'title' => ''], 'AllocationId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], ], 'title' => '', 'example' => '', ], 'PrivateDnsName' => ['description' => 'The private domain name of the ECS instance.'."\n" ."\n" .'> A private domain name can be returned in a specific format only when `HostnameType` is set to `IP` or `InstanceId`.', 'type' => 'string', 'example' => 'DnsTestName', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv6Sets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6Set' => [ 'description' => 'The IPv6 addresses of the ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv6Address' => ['description' => 'The IPv6 address of the ENI.', 'type' => 'string', 'example' => '2408:4321:180:1701:94c7:bc38:3bfa:****', 'title' => ''], ], 'description' => '> This parameter is in invitational preview and is unavailable.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv4PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv4PrefixSet' => [ 'description' => 'The IPv4 prefixes of the ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv4Prefix' => ['description' => 'The IPv4 prefix of the ENI.', 'type' => 'string', 'example' => '192.168.**.0/28', 'title' => ''], ], 'description' => '> This parameter is in invitational preview and is unavailable.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Ipv6PrefixSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Ipv6PrefixSet' => [ 'description' => 'The IPv6 prefixes of the ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Ipv6Prefix' => ['description' => 'The IPv6 prefix of the ENI.', 'type' => 'string', 'example' => '2001:db8:1234:1a00:****::/80', 'title' => ''], ], 'description' => '> This parameter is in invitational preview and is unavailable.', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the ENI.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SecurityGroupIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupId' => [ 'description' => 'The security groups to which the ENI belongs.', 'type' => 'array', 'items' => ['description' => 'The ID of the security group.', 'type' => 'string', 'example' => 'sg-bp18kz60mefsicfg****', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AssociatedPublicIp' => [ 'description' => 'The EIPs that are associated with the secondary private IP addresses of the ENI.', 'type' => 'object', 'properties' => [ 'PublicIpAddress' => ['description' => 'The EIP.', 'type' => 'string', 'example' => '116.62.**.**', 'title' => ''], 'AllocationId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], ], 'title' => '', 'example' => '', ], 'Attachment' => [ 'description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'object', 'properties' => [ 'DeviceIndex' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'InstanceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'TrunkNetworkInterfaceId' => ['description' => '> This parameter is in invitational preview and is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'NetworkCardIndex' => ['description' => 'The index of the network card.'."\n" ."\n" .'- If the ENI is in the Available state or if no network card index was specified when the ENI was attached, this parameter is empty.'."\n" ."\n" .'- If the ENI is in the InUse state and a network card index was specified when the ENI was attached, the specified network card index is returned as the value of this parameter.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], ], 'title' => '', 'example' => '', ], 'DeleteOnRelease' => ['description' => 'Indicates whether to retain the ENI when the associated instance is released. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SourceDestCheck' => ['description' => 'Indicates whether the source and destination IP address check feature is enabled. To improve network security, enable this feature. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> Before you use this parameter, read [Source and destination IP address check](~~2863210~~).', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEcsState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.DetachPrimaryEniNotAllowed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'MaxEniCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be managed has been reached.'], ['errorCode' => 'EniPerInstanceLimitExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be attached to the specified instance has been reached.'], ['errorCode' => 'InvalidOperation.AvailabilityZoneMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.VpcMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check whether the VPC in the operation corresponds to other parameters.'], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSecurityGroupId.NotVpc', 'errorMessage' => '%s', 'description' => 'The specified SecurityGroupId parameter is invalid and the network type of the security group is not VPC.'], ['errorCode' => 'InvalidOperation.InvalidEniType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVpc.Empty', 'errorMessage' => '%s', 'description' => 'No vSwitches exist in the specified VPC. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniPageNumber', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVpc.Indeterminacy', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'InvalidEcsId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance ID does not exist.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified security group ID does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeNetworkInterfaces', 'description' => '## [](#)Usage notes'."\n" ."\n" .'You can call the `DescribeNetworkInterfaces` operation for paged query by specifying the `MaxResults` or `NextToken` parameter. Take note of the following items:'."\n" ."\n" .'- During a paged query, when you call the DescribeNetworkInterfaces operation to retrieve the first page of results, set `MaxResults` to specify the maximum number of entries to return in the call. The return value of `NextToken` is a pagination token that can be used in the next call to retrieve a new page of results.'."\n" ."\n" .'- When you call the DescribeNetworkInterfaces operation to retrieve a new page of results, set `NextToken` to the `NextToken` value returned in the previous call and set `MaxResults` to specify the maximum number of entries to return in this call.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-09-14T01:40:40.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-08-08T07:35:47.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-01-25T05:30:54.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-10-09T12:23:26.000Z', 'description' => 'Response parameters changed, Response parameters changed'], ['createdAt' => '2023-01-04T03:05:23.000Z', 'description' => 'Response parameters changed, Response parameters changed'], ['createdAt' => '2022-11-24T14:05:53.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-05-20T08:48:39.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNetworkInterfaces'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeNetworkInterfaces', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"PageSize\\": 1,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 2,\\n \\"NetworkInterfaceSets\\": {\\n \\"NetworkInterfaceSet\\": [\\n {\\n \\"CreationTime\\": \\"2019-12-25T12:31:31Z\\",\\n \\"VpcId\\": \\"vpc-bp1j7w3gc1cexjqd****\\",\\n \\"Type\\": \\"Secondary\\",\\n \\"Status\\": \\"Available\\",\\n \\"NetworkInterfaceTrafficMode\\": \\"Standard\\",\\n \\"NetworkInterfaceName\\": \\"my-eni-name\\",\\n \\"MacAddress\\": \\"00:16:3e:12:**:**\\",\\n \\"QueuePairNumber\\": 0,\\n \\"NetworkInterfaceId\\": \\"eni-bp125p95hhdhn3ot****\\",\\n \\"ServiceID\\": 12345678910,\\n \\"InstanceId\\": \\"i-bp1e2l6djkndyuli****\\",\\n \\"OwnerId\\": \\"123456****\\",\\n \\"ServiceManaged\\": true,\\n \\"VSwitchId\\": \\"vsw-bp16usj2p27htro3****\\",\\n \\"Description\\": \\"DescriptionTest\\",\\n \\"ResourceGroupId\\": \\"rg-2ze88m67qx5z****\\",\\n \\"ZoneId\\": \\"cn-hangzhou-e\\",\\n \\"PrivateIpAddress\\": \\"172.17.**.**\\",\\n \\"QueueNumber\\": 8,\\n \\"PrivateIpSets\\": {\\n \\"PrivateIpSet\\": [\\n {\\n \\"PrivateIpAddress\\": \\"172.17.**.**\\",\\n \\"Primary\\": true,\\n \\"AssociatedPublicIp\\": {\\n \\"PublicIpAddress\\": \\"116.62.**.**\\",\\n \\"AllocationId\\": \\"null\\"\\n },\\n \\"PrivateDnsName\\": \\"DnsTestName\\"\\n }\\n ]\\n },\\n \\"Ipv6Sets\\": {\\n \\"Ipv6Set\\": [\\n {\\n \\"Ipv6Address\\": \\"2408:4321:180:1701:94c7:bc38:3bfa:****\\"\\n }\\n ]\\n },\\n \\"Ipv4PrefixSets\\": {\\n \\"Ipv4PrefixSet\\": [\\n {\\n \\"Ipv4Prefix\\": \\"192.168.**.0/28\\"\\n }\\n ]\\n },\\n \\"Ipv6PrefixSets\\": {\\n \\"Ipv6PrefixSet\\": [\\n {\\n \\"Ipv6Prefix\\": \\"2001:db8:1234:1a00:****::/80\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-bp18kz60mefsicfg****\\"\\n ]\\n },\\n \\"AssociatedPublicIp\\": {\\n \\"PublicIpAddress\\": \\"116.62.**.**\\",\\n \\"AllocationId\\": \\"null\\"\\n },\\n \\"Attachment\\": {\\n \\"DeviceIndex\\": 0,\\n \\"InstanceId\\": \\"null\\",\\n \\"TrunkNetworkInterfaceId\\": \\"null\\",\\n \\"NetworkCardIndex\\": 0\\n },\\n \\"DeleteOnRelease\\": true,\\n \\"SourceDestCheck\\": false\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribeNewProjectEipMonitorData' => [ 'summary' => 'Queries the monitoring data of an Elastic IP Address (EIP) associated with a new project.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'AllocationId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '60', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EipMonitorDatas' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'EipMonitorData' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'EipTX' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'EipPackets' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'EipBandwidth' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TimeStamp' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EipFlow' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'EipRX' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidStartTime.Malformed', 'errorMessage' => 'The specified parameter "StartTime" is not valid.', 'description' => 'The specified StartTime parameter does not conform to the specification.'], ['errorCode' => 'InvalidEndTime.Malformed', 'errorMessage' => 'The specified parameter "EndTime" is not valid.', 'description' => 'The specified EndTime parameter is invalid.'], ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter "Period" is not valid.', 'description' => ''], ['errorCode' => 'InvalidStartTime.TooEarly', 'errorMessage' => 'The specified parameter "StartTime" is too early.', 'description' => ''], ['errorCode' => 'InvalidAllocationId.NotFound', 'errorMessage' => 'Specified allocation id is not found.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'Specified value of "Period" is not valid', 'description' => ''], ['errorCode' => 'OperationDenied.TooManyDataQueried', 'errorMessage' => 'Specified operation is denied as too many data to return.', 'description' => 'The number of data entries queried exceeds the upper limit. Shorten the interval.'], ], 404 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidAllocationId.NotFound', 'errorMessage' => 'Specified allocation ID is not found', 'description' => 'The specified EIP does not exist. Check whether the parameter value is correct.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeEipMonitorData'], ], 'changeSet' => [ ['createdAt' => '2025-09-15T06:42:55.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeNewProjectEipMonitorData'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeNewProjectEipMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Address', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:eip/{#AllocationId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"EipMonitorDatas\\": {\\n \\"EipMonitorData\\": [\\n {\\n \\"EipTX\\": 0,\\n \\"EipPackets\\": 0,\\n \\"EipBandwidth\\": 0,\\n \\"TimeStamp\\": \\"\\",\\n \\"EipFlow\\": 0,\\n \\"EipRX\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeNewProjectEipMonitorData', ], 'DescribePhysicalConnections' => [ 'summary' => 'Queries physical connections.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Value' => [ 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PageNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'PageSize' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TotalCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'PhysicalConnectionSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PhysicalConnectionType' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'AdLocation' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'CreationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Status' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Type' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PortNumber' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'CircuitCode' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Spec' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Bandwidth' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''], 'Description' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PortType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'EnabledTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'BusinessStatus' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'LineOperator' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Name' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RedundantPhysicalConnectionId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PeerLocation' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'AccessPointId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PhysicalConnectionId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidFilterKey.ValueNotSupported', 'errorMessage' => 'Specified filter key is not supported: Filter.X.key', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribePhysicalConnections'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePhysicalConnections'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribePhysicalConnections', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"PageSize\\": 0,\\n \\"TotalCount\\": 0,\\n \\"PhysicalConnectionSet\\": {\\n \\"PhysicalConnectionType\\": [\\n {\\n \\"AdLocation\\": \\"\\",\\n \\"CreationTime\\": \\"\\",\\n \\"Status\\": \\"\\",\\n \\"Type\\": \\"\\",\\n \\"PortNumber\\": \\"\\",\\n \\"CircuitCode\\": \\"\\",\\n \\"Spec\\": \\"\\",\\n \\"Bandwidth\\": 0,\\n \\"Description\\": \\"\\",\\n \\"PortType\\": \\"\\",\\n \\"EnabledTime\\": \\"\\",\\n \\"BusinessStatus\\": \\"\\",\\n \\"LineOperator\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"RedundantPhysicalConnectionId\\": \\"\\",\\n \\"PeerLocation\\": \\"\\",\\n \\"AccessPointId\\": \\"\\",\\n \\"PhysicalConnectionId\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribePhysicalConnections', ], 'DescribePlanMaintenanceWindows' => [ 'path' => '', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '258466', 'abilityTreeNodes' => ['FEATUREecsET2ML7'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'Enable', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the window is enabled or disabled.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call DescribeRegions to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PlanWindowId', 'in' => 'query', 'schema' => ['description' => 'The ID of the O&M window.', 'type' => 'string', 'required' => false, 'example' => 'pw-bp1jarob1aup7yvlrdt6', 'title' => ''], ], [ 'name' => 'PlanWindowName', 'in' => 'query', 'schema' => ['description' => 'The name of the O&M window.', 'type' => 'string', 'required' => false, 'example' => 'WIndowName', 'title' => ''], ], [ 'name' => 'TargetResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the O&M window applies.', 'type' => 'string', 'required' => false, 'example' => 'rg-d85g5yocioezmdrll', 'title' => ''], ], [ 'name' => 'TargetResourceTags', 'in' => 'query', 'style' => 'json', 'schema' => [ 'description' => 'The tags to which the O&M window applies.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the tag to which the window applies.', 'type' => 'string', 'required' => false, 'example' => 'tagValue', 'title' => ''], 'Key' => ['description' => 'The key of the tag to which the window applies.', 'type' => 'string', 'required' => false, 'example' => 'tagKey', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for a paged query. Maximum value: 100. Default value: If the value is not specified or is less than 10, the default value is 10. If the value is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'TotalCount' => ['title' => '', 'description' => 'The total number of entries returned under the current query conditions. This parameter is optional and may not be returned by default.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'PlanMaintenanceWindowList' => [ 'description' => 'The creation time.', 'type' => 'array', 'items' => [ 'description' => 'The target type. Valid values:'."\n" .'- Tag'."\n" .'- ResourceGroup'."\n" .'- Instance'."\n" .'- AliUid.', 'type' => 'object', 'properties' => [ 'PlanWindowId' => ['description' => 'The ID of the O&M window.', 'type' => 'string', 'example' => 'pw-bp1bqkbjb7h4j8zqzwvp', 'title' => ''], 'PlanWindowName' => ['description' => 'The name of the O&M window.', 'type' => 'string', 'example' => 'WindowName', 'title' => ''], 'Enable' => ['description' => 'Indicates whether the O&M window is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SupportMaintenanceAction' => ['description' => 'The supported maintenance actions.', 'type' => 'string', 'example' => 'Reboot', 'title' => ''], 'CreateTime' => ['description' => 'The time when the O&M window was created.'."\n" ."\n" .'The time follows the ISO 8601 standard in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2025-04-11T02:20:41Z', 'title' => ''], 'ModifiedTime' => ['description' => 'The time when the O&M window was last modified.'."\n" ."\n" .'The time follows the ISO 8601 standard in UTC. Format: yyyy-MM-ddTHH:mm:ssZ.', 'type' => 'string', 'example' => '2025-02-22 10:14:28 +0800', 'title' => ''], 'TimePeriod' => [ 'description' => 'The recurrence cycle of the window.', 'type' => 'object', 'properties' => [ 'PeriodUnit' => ['description' => 'The type of the recurrence cycle. Valid values:'."\n" .'- Daily: daily recurrence.'."\n" .'- Weekly: weekly recurrence.', 'type' => 'string', 'example' => 'Year', 'title' => ''], 'RangeList' => [ 'description' => 'The time ranges within the recurrence cycle of the O&M window (in UTC).', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'StartTime' => ['description' => 'The start time of the maintenance time window.', 'type' => 'string', 'example' => 'Monday,22:00', 'title' => ''], 'EndTime' => ['description' => 'The end time of the maintenance time window.', 'type' => 'string', 'example' => 'Monday,22:00', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'TargetResource' => [ 'description' => 'The resources to which the O&M window applies.', 'type' => 'object', 'properties' => [ 'Scope' => ['description' => 'The type of resources for which the O&M window is configured.', 'type' => 'string', 'example' => 'Tag', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the O&M window applies.', 'type' => 'string', 'example' => 'rg-aek2qxeteo7fr6y', 'title' => ''], 'Tags' => [ 'description' => 'The tags to which the O&M window applies.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'tagKey', 'title' => ''], 'Value' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'tagValue', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'MinMaintenanceInterval' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'The query token returned by this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'MaxResults' => ['description' => 'The number of entries per page for a paged query. Maximum value: 100. Default value: If the value is not specified or is less than 10, the default value is 10. If the value is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'AccessForbidden', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'You are not authorized to use the specified resource.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'Internal error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query O&M windows', 'summary' => 'Queries O&M windows.', 'description' => 'Queries the configured maintenance policies. Each policy contains two maintenance attributes:'."\n" ."\n" .'- Maintenance time window: A time period you specify during which O&M operations are performed.'."\n" .'- Maintenance action: The instance downtime handling policy you specify.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribePlanMaintenanceWindows', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PlanMaintenanceWindowList\\": [\\n {\\n \\"PlanWindowId\\": \\"pw-bp1bqkbjb7h4j8zqzwvp\\",\\n \\"PlanWindowName\\": \\"WindowName\\",\\n \\"Enable\\": true,\\n \\"SupportMaintenanceAction\\": \\"Reboot\\",\\n \\"CreateTime\\": \\"2025-04-11T02:20:41Z\\",\\n \\"ModifiedTime\\": \\"2025-02-22 10:14:28 +0800\\",\\n \\"TimePeriod\\": {\\n \\"PeriodUnit\\": \\"Year\\",\\n \\"RangeList\\": [\\n {\\n \\"StartTime\\": \\"Monday,22:00\\",\\n \\"EndTime\\": \\"Monday,22:00\\"\\n }\\n ]\\n },\\n \\"TargetResource\\": {\\n \\"Scope\\": \\"Tag\\",\\n \\"ResourceGroupId\\": \\"rg-aek2qxeteo7fr6y\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"tagKey\\",\\n \\"Value\\": \\"tagValue\\"\\n }\\n ]\\n },\\n \\"MinMaintenanceInterval\\": 0\\n }\\n ],\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"MaxResults\\": 10\\n}","type":"json"}]', ], 'DescribePortRangeListAssociations' => [ 'summary' => 'Queries the resources that are associated with a port list, such as security groups.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '262566', 'abilityTreeNodes' => ['FEATUREecsJ5L925'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PortRangeListId', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The ID of the port list.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'prl-2ze9743****'], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the next request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of `NextToken`.', 'type' => 'string', 'required' => false, 'example' => 'AAAAARbaCuN6hiD08qrLdwJ9Fh15YZPnzqF7Vs2EB6Ix327v', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The data returned.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'NextToken' => ['description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If the return value is empty, no more data is returned.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'PortRangeListAssociations' => [ 'description' => 'The resources that are associated with the port list.', 'type' => 'array', 'items' => [ 'description' => 'The resource that is associated with the port list.', 'type' => 'object', 'properties' => [ 'ResourceId' => ['description' => 'The ID of the resource.', 'type' => 'string', 'example' => 'sg-2zefu72****', 'title' => ''], 'ResourceType' => ['description' => 'The type of the resource. Valid value: SecurityGroup.', 'type' => 'string', 'example' => 'SecurityGroup', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidPortRangeListId.NotFound', 'errorMessage' => 'The specified port range list was not found.', 'description' => 'The specified port list was not found.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is not valid.', 'description' => 'A specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => true, 'eventNames' => [], ], 'title' => 'DescribePortRangeListAssociations', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribePortRangeListAssociations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PortRangeList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:portrangelist/{#portRangeListId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"PortRangeListAssociations\\": [\\n {\\n \\"ResourceId\\": \\"sg-2zefu72****\\",\\n \\"ResourceType\\": \\"SecurityGroup\\"\\n }\\n ]\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribePortRangeListEntries' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '262565', 'abilityTreeNodes' => ['FEATUREecsJ5L925'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port range list. You can call [DescribeRegions](~~2679950~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the port range list. You can call [DescribeRegions](~~2679950~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PortRangeListId', 'in' => 'query', 'schema' => ['description' => 'The ID of the port range list.', 'type' => 'string', 'required' => true, 'example' => 'prl-2ze9743****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '882304EC-5CE2-5860-98ED-3FA1D8D74A0C'], 'Entries' => [ 'description' => 'The port range list entries.', 'type' => 'array', 'items' => [ 'description' => 'The port range list entry.', 'type' => 'object', 'properties' => [ 'PortRange' => ['description' => 'The port range.', 'type' => 'string', 'example' => '80/80', 'title' => ''], 'Description' => ['description' => 'The description of the port range.', 'type' => 'string', 'example' => 'Description information of PortRangeList'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidPortRangeListId.NotFound', 'errorMessage' => 'The specified port range list was not found.', 'description' => 'The specified port list was not found.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => true, 'eventNames' => [], ], 'title' => 'Query entries of a port range list', 'summary' => 'Queries the entries of a specified port range list.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribePortRangeListEntries', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PortRangeList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:portrangelist/{#portRangeListId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"882304EC-5CE2-5860-98ED-3FA1D8D74A0C\\",\\n \\"Entries\\": [\\n {\\n \\"PortRange\\": \\"80/80\\",\\n \\"Description\\": \\"Description information of PortRangeList\\\\n\\"\\n }\\n ]\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribePortRangeLists' => [ 'summary' => 'Queries the port lists.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '262261', 'abilityTreeNodes' => ['FEATUREecsJ5L925'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~2679950~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~2679950~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['description' => 'The pagination token that is used in the request to retrieve a new page of results. You do not need to specify this parameter for the first request. You must specify the token that is obtained from the previous query as the value of NextToken.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '727d41872117f2816343eeb432fbc5bfd21dc824589d2a4be0b5e8707e68181f'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page.'."\n" ."\n" .'- Maximum value: 100'."\n" ."\n" .'- Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'PortRangeListName', 'in' => 'query', 'schema' => ['description' => 'The name of the port list. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http\\://, https\\://, com.aliyun, or com.alibabacloud. The name can contain letters, digits, colons (:), underscores (\\_), periods (.), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'PortRangeListNameSample', 'title' => ''], ], [ 'name' => 'PortRangeListId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of the port list. Valid values of N: 0 to 100.', 'type' => 'array', 'items' => ['description' => 'The ID of the port list.', 'type' => 'string', 'required' => false, 'example' => 'prl-2ze9743****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. If you specify this parameter to query resources, up to 1,000 resources that belong to the specified resource group can be returned in the response. You can call the [ListResourceGroups](~~2716558~~) operation to query the most recent resource group list.'."\n" ."\n" .'> A default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags that are added to the port list.', 'type' => 'array', 'items' => [ 'description' => 'The tag (key-value pairs) that is added to the port list.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N. Valid values: 1 to 20.'."\n" ."\n" .'If you specify a single tag to query resources, up to 1,000 resources to which the tag is added are returned. If you specify multiple tags to query resources, up to 1,000 resources to which all specified tags are added are returned. To query more than 1,000 resources that have specified tags added, call the [ListTagResources](~~110425~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'key for PortRangeList'."\n", 'title' => ''], 'Value' => ['description' => 'The value of tag N.', 'type' => 'string', 'required' => false, 'example' => 'value for PortRangeList'."\n", 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'A pagination token. If the return value is empty, no more data is returned.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '6040AD98-11C3-5F78-9346-FCA8E9D8960F', 'title' => ''], 'PortRangeLists' => [ 'description' => 'Details of the port lists.', 'type' => 'array', 'items' => [ 'description' => 'Details of the port list.', 'type' => 'object', 'properties' => [ 'PortRangeListId' => ['description' => 'The ID of the port list.', 'type' => 'string', 'example' => 'prl-2ze9743****', 'title' => ''], 'PortRangeListName' => ['description' => 'The name of the port list.', 'type' => 'string', 'example' => 'PortRangeListNameSample', 'title' => ''], 'MaxEntries' => ['description' => 'The maximum number of entries in the port list.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'AssociationCount' => ['description' => 'The number of associated resources.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Description' => ['description' => 'The description of the port list.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'CreationTime' => ['description' => 'The time when the port list was created.', 'type' => 'string', 'example' => '2024-12-04T07:11Z', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which to assign the port list.', 'type' => 'string', 'example' => 'rg-2zeg82g****', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the port list.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the port list.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The key of tag N.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'TagValue' => ['description' => 'The value of tag N.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'LimitExceed.PortRangeListId', 'errorMessage' => 'The specified number of PortRangeListId exceeds the limit.', 'description' => 'The number of port list IDs specified exceeds the limit.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameter is not valid.', 'description' => 'A specified parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'eventInfo' => [ 'enable' => true, 'eventNames' => [], ], 'title' => 'DescribePortRangeLists', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribePortRangeLists', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PortRangeList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:portrangelist/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'PortRangeList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:portrangelist/{#portRangeListId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"RequestId\\": \\"6040AD98-11C3-5F78-9346-FCA8E9D8960F\\",\\n \\"PortRangeLists\\": [\\n {\\n \\"PortRangeListId\\": \\"prl-2ze9743****\\",\\n \\"PortRangeListName\\": \\"PortRangeListNameSample\\",\\n \\"MaxEntries\\": 20,\\n \\"AssociationCount\\": 1,\\n \\"Description\\": \\"This is description.\\",\\n \\"CreationTime\\": \\"2024-12-04T07:11Z\\",\\n \\"ResourceGroupId\\": \\"rg-2zeg82g****\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribePrefixListAssociations' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29288', 'abilityTreeNodes' => ['FEATUREecsQ7PR3V'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the prefix list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the prefix list. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'PrefixListId', 'in' => 'query', 'schema' => ['description' => 'The ID of the prefix list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set the value to the `NextToken` value returned in the previous call to the DescribePrefixListAssociations operation. Leave this parameter empty the first time you call this operation.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The query token that is returned in this call. If the return value is empty, no more data is returned.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '38793DB8-A4B2-4AEC-BFD3-111234E9188D', 'title' => ''], 'PrefixListAssociations' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PrefixListAssociation' => [ 'description' => 'Details about the resources that are associated with the prefix list.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceId' => ['description' => 'The ID of the resource.', 'type' => 'string', 'example' => 'sg-bp11ujym6xsff6l0****', 'title' => ''], 'ResourceType' => ['description' => 'The type of the resource.', 'type' => 'string', 'example' => 'securitygroup', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'NotSupported.ResourceType', 'errorMessage' => 'The specified resource type is not supported.', 'description' => 'The resource type is not supported.'], ], 404 => [ ['errorCode' => 'InvalidPrefixListId.NotFound', 'errorMessage' => 'The specified prefix list was not found.', 'description' => 'The prefix list does not exist.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribePrefixListAssociations', 'summary' => 'Queries information about resources that are associated with a prefix list, such as the resource IDs and types.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-11-13T03:17:46.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePrefixListAssociations'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribePrefixListAssociations', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PrefixList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:prefixlist/{#PrefixListId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"RequestId\\": \\"38793DB8-A4B2-4AEC-BFD3-111234E9188D\\",\\n \\"PrefixListAssociations\\": {\\n \\"PrefixListAssociation\\": [\\n {\\n \\"ResourceId\\": \\"sg-bp11ujym6xsff6l0****\\",\\n \\"ResourceType\\": \\"securitygroup\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribePrefixListAttributes' => [ 'summary' => 'Queries the details of a prefix list, including the name, address family, maximum number of entries, and details of the entries.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29289', 'abilityTreeNodes' => ['FEATUREecsQ7PR3V'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'PrefixListId', 'in' => 'query', 'schema' => ['description' => 'The ID of the prefix list.', 'type' => 'string', 'required' => true, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the prefix list was created.', 'type' => 'string', 'example' => '2021-02-20T07:11Z', 'title' => ''], 'MaxEntries' => ['description' => 'The maximum number of entries in the prefix list.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '38793DB8-A4B2-4AEC-BFD3-111234E9188D', 'title' => ''], 'Description' => ['description' => 'The description of the prefix list.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'AddressFamily' => ['description' => 'The IP address family of the prefix list. Valid values:'."\n" ."\n" .'- IPv4'."\n" ."\n" .'- IPv6', 'type' => 'string', 'example' => 'IPv4', 'title' => ''], 'PrefixListName' => ['description' => 'The name of the prefix list.', 'type' => 'string', 'example' => 'PrefixListNameSample', 'title' => ''], 'PrefixListId' => ['description' => 'The ID of the prefix list.', 'type' => 'string', 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], 'Entries' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Entry' => [ 'description' => 'Details about the entries in the prefix list.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description in entry N.', 'type' => 'string', 'example' => 'Description Sample 01', 'title' => ''], 'Cidr' => ['description' => 'The CIDR block in entry N.', 'type' => 'string', 'example' => '192.168.1.0/24', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidPrefixListId.NotFound', 'errorMessage' => 'The specified prefix list was not found.', 'description' => 'The prefix list does not exist.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribePrefixListAttributes', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-11-13T03:17:46.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePrefixListAttributes'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribePrefixListAttributes', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PrefixList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:prefixlist/{#PrefixListId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"CreationTime\\": \\"2021-02-20T07:11Z\\",\\n \\"MaxEntries\\": 10,\\n \\"RequestId\\": \\"38793DB8-A4B2-4AEC-BFD3-111234E9188D\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"AddressFamily\\": \\"IPv4\\",\\n \\"PrefixListName\\": \\"PrefixListNameSample\\",\\n \\"PrefixListId\\": \\"pl-x1j1k5ykzqlixdcy****\\",\\n \\"Entries\\": {\\n \\"Entry\\": [\\n {\\n \\"Description\\": \\"Description Sample 01\\",\\n \\"Cidr\\": \\"192.168.1.0/24\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribePrefixLists' => [ 'summary' => 'Queries the information of prefix lists.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29290', 'abilityTreeNodes' => ['FEATUREecsQ7PR3V'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-chengdu', 'title' => ''], ], [ 'name' => 'PrefixListName', 'in' => 'query', 'schema' => ['description' => 'The name of the prefix list.', 'type' => 'string', 'required' => false, 'example' => 'PrefixListNameSample', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that is used in the request to retrieve a new page of results. Set the value to the `NextToken` value returned in the last call to this operation. Leave this parameter empty the first time you call this operation.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'AddressFamily', 'in' => 'query', 'schema' => ['description' => 'The IP address family. Valid values:'."\n" ."\n" .'- IPv4'."\n" ."\n" .'- IPv6'."\n" ."\n" .'This parameter is empty by default, which indicates that all prefix lists are queried.', 'type' => 'string', 'required' => false, 'example' => 'IPv4', 'title' => ''], ], [ 'name' => 'PrefixListId', 'in' => 'query', 'allowEmptyValue' => true, 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of prefix lists. Valid values of N: 0 to 100.', 'type' => 'array', 'items' => ['description' => 'The ID of prefix list N. Valid values of N: 0 to 100.', 'type' => 'string', 'required' => false, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], 'required' => false, 'example' => 'pl-x1j1k5ykzqlixdcy****', 'maxItems' => 101, 'title' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the prefix list belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the prefix list.', 'type' => 'array', 'items' => [ 'description' => 'Tag N of the prefix list.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the prefix list. Valid values of N: 1 to 20. The tag key cannot be an empty string. 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' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the prefix list. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http:// or https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The query token that is returned in this call. If the return value is empty, no more data is returned.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '38793DB8-A4B2-4AEC-BFD3-111234E9188D', 'title' => ''], 'PrefixLists' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'PrefixList' => [ 'description' => 'Details about the prefix lists.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the prefix list was created.', 'type' => 'string', 'example' => '2021-02-20T07:11Z', 'title' => ''], 'AssociationCount' => ['description' => 'The number of associated resources.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'MaxEntries' => ['description' => 'The maximum number of entries that the prefix list can contain.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Description' => ['description' => 'The description of the prefix list.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'AddressFamily' => ['description' => 'The IP address family of the prefix list. Valid values:'."\n" ."\n" .'- IPv4'."\n" ."\n" .'- IPv6', 'type' => 'string', 'example' => 'IPv4', 'title' => ''], 'PrefixListName' => ['description' => 'The name of the prefix list.', 'type' => 'string', 'example' => 'PrefixListNameSample', 'title' => ''], 'PrefixListId' => ['description' => 'The ID of the prefix list.', 'type' => 'string', 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the prefix list.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the prefix list.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag key. A prefix list can have 1 to 20 tags. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `acs:` or `aliyun`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'TagKey' => ['description' => 'The tag value. A prefix list can have 1 to 20 tags. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http:// or https://`.', 'type' => 'string', 'example' => 'TestValue'."\n", 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the prefix list belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****'."\n", 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'LimitExceed.PrefixListId', 'errorMessage' => 'The specified number of PrefixListId exceeds the limit.', 'description' => 'The number of specified prefix list IDs exceeds the upper limit.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribePrefixLists', 'description' => 'You can specify the `AddressFamily`, `PrefixListId.N`, and `PrefixListName` request parameters in the request. Specified parameters have logical AND relations. Only the parameters that you set are included in the filter conditions.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-04-21T06:02:35.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2025-01-02T01:35:17.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-11-13T03:17:46.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePrefixLists'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribePrefixLists', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PrefixList', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:prefixlist/{#PrefixListId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"RequestId\\": \\"38793DB8-A4B2-4AEC-BFD3-111234E9188D\\",\\n \\"PrefixLists\\": {\\n \\"PrefixList\\": [\\n {\\n \\"CreationTime\\": \\"2021-02-20T07:11Z\\",\\n \\"AssociationCount\\": 1,\\n \\"MaxEntries\\": 20,\\n \\"Description\\": \\"This is description.\\",\\n \\"AddressFamily\\": \\"IPv4\\",\\n \\"PrefixListName\\": \\"PrefixListNameSample\\",\\n \\"PrefixListId\\": \\"pl-x1j1k5ykzqlixdcy****\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestKey\\",\\n \\"TagKey\\": \\"TestValue\\\\n\\"\\n }\\n ]\\n },\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\\\n\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribePrice' => [ 'summary' => 'Queries the latest prices of specified resources. You can query the latest prices of ECS instances, disks, dedicated hosts, elasticity assurance services, and capacity reservation services based on resource type. The response includes promotion rules, prices, and discounts.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28981', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource. Valid values:'."\n" .'- instance: queries the latest price list of ECS instances. When this parameter is set to `instance`, you must also specify `InstanceType`.'."\n" .'- disk: queries the latest price list of disks. When this parameter is set to `disk`, you must also specify `DataDisk.1.Category` and `DataDisk.1.Size`.'."\n" .'- diskperformance: queries the latest price list of provisioned performance for ESSD AutoPL disks. You must also specify `DataDisk.1.Category` and `DataDisk.1.ProvisionedIops`.'."\n" .'- bandwidth: queries the latest price list of bandwidth.'."\n" .'- ddh: queries the latest price list of dedicated hosts.'."\n" .'- ElasticityAssurance: queries the price of the elasticity assurance service. When this parameter is set to `ElasticityAssurance`, you must also specify `InstanceType`.'."\n" .'- CapacityReservation: queries the price of the capacity reservation service. When this parameter is set to `CapacityReservation`, you must also specify `InstanceType`.'."\n" ."\n" .'Default value: instance.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'This parameter takes effect only when ResourceType is set to instance.'."\n" ."\n" .'The image ID, which specifies the runtime environment to load when the instance starts. You can call [DescribeImages](~~25534~~) to query available image resources. If you do not specify this parameter, the price of a Linux image is queried by default.', 'type' => 'string', 'required' => false, 'example' => 'centos_7_05_64_20G_alibase_20181212.vhd', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type. You must specify this parameter when `ResourceType` is set to `instance`. For more details, see [Instance family](~~25378~~). You can also invoke [DescribeInstanceTypes](~~25620~~) to query the most recent instance type list.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g6.large', 'title' => ''], ], [ 'name' => 'DedicatedHostType', 'in' => 'query', 'schema' => ['description' => 'The dedicated host type. You can call [DescribeDedicatedHostTypes](~~134240~~) to query the most recent list of dedicated host types.', 'type' => 'string', 'required' => false, 'example' => 'ddh.c5', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the queried instance is an I/O optimized instance. Valid values:'."\n" ."\n" .'- none: non-I/O optimization.'."\n" .'- optimized: I/O optimized.'."\n" ."\n" .'If InstanceType is a [Series I](~~55263~~) instance type, the default value is none.'."\n" ."\n" .'If InstanceType is not a [Series I](~~55263~~) instance type, the default value is optimized.', 'type' => 'string', 'required' => false, 'example' => 'optimized', 'title' => ''], ], [ 'name' => 'InstanceNetworkType', 'in' => 'query', 'schema' => ['description' => 'The network type of the instance. Valid values:'."\n" ."\n" .'- vpc: Virtual Private Cloud (VPC).'."\n" .'- classic: classic network. The classic network is no longer available. For more information, see [Retirement notice](~~2833134~~).'."\n" ."\n" .'Default value: vpc.', 'type' => 'string', 'required' => false, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'InternetChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method for network bandwidth. Valid values:'."\n" ."\n" .'- PayByBandwidth: pay-by-bandwidth.'."\n" .'- PayByTraffic: pay-by-traffic.'."\n" ."\n" .'Default value: PayByTraffic.', 'type' => 'string', 'required' => false, 'example' => 'PayByTraffic', 'title' => ''], ], [ 'name' => 'InternetMaxBandwidthOut', 'in' => 'query', 'schema' => ['description' => 'The maximum outbound public bandwidth, in Mbit/s. Valid values: 0 to 100.'."\n" ."\n" .'Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'SystemDisk.Category', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. You must also specify `ImageId` when querying the system disk price. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- ephemeral_ssd: local SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .''."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .''."\n" ."\n" .'Default value description:'."\n" ."\n" .'- If InstanceType is a retired instance type and `IoOptimized` is set to `none`, the default value is `cloud`.'."\n" .'- In other cases, the default value is `cloud_efficiency`.After January 30, 2026, for instance types that support only cloud_essd, the default value is changed from cloud_efficiency to cloud_essd PL0. For more information, see [Change notice](https://www.aliyun.com/notice/117844).', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'SystemDisk.Size', 'in' => 'query', 'schema' => ['description' => 'The size of the system disk, in GiB. Valid values:'."\n" ."\n" .'- Basic disk: 20 to 500.'."\n" .'- ESSD:'."\n" .' - PL0: 1 to 2048.'."\n" .' - PL1: 20 to 2048.'."\n" .' - PL2: 461 to 2048.'."\n" .' - PL3: 1261 to 2048.'."\n" .'- ESSD AutoPL disk: 1 to 2048.'."\n" .'- Other disk categories: 20 to 2048.'."\n" ."\n" .'Default value: max{20, image size of the specified ImageId parameter}.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80', 'title' => ''], ], [ 'name' => 'SystemDisk.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the system disk when the disk type is ESSD. This parameter is valid only when `SystemDiskCategory=cloud_essd`. Valid values:'."\n" ."\n" .'PL0.'."\n" .'PL1 (default).'."\n" .'PL2.'."\n" .'PL3.', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'DataDisk.1.Size', 'in' => 'query', 'schema' => ['description' => 'The capacity of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Size` parameter for better scalability.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2000', 'title' => ''], ], [ 'name' => 'DataDisk.1.Category', 'in' => 'query', 'schema' => [ 'description' => 'The disk type.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Category` parameter for better scalability.', 'enumValueTitles' => ['cloud' => 'Basic disk.', 'cloud_efficiency' => 'Ultra disk.', 'cloud_ssd' => 'Standard SSD.', 'cloud_auto' => 'ESSD AutoPL disk.', 'cloud_regional_disk_auto' => 'Regional ESSD.', 'cloud_essd' => 'Enterprise SSD.', 'elastic_ephemeral_disk_standard' => 'Elastic ephemeral disk - Standard.', 'cloud_essd_entry' => 'ESSD Entry disk.', 'elastic_ephemeral_disk_premium' => 'Elastic ephemeral disk - Premium.'], 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => '', ], ], [ 'name' => 'DataDisk.1.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.PerformanceLevel` parameter for better scalability.', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'DataDisk.2.Size', 'in' => 'query', 'schema' => ['description' => 'The capacity of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Size` parameter for better scalability.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '200', 'title' => ''], ], [ 'name' => 'DataDisk.2.Category', 'in' => 'query', 'schema' => [ 'description' => 'The disk type.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Category` parameter for better scalability.', 'enumValueTitles' => ['cloud' => 'Basic disk.', 'cloud_efficiency' => 'Ultra disk.', 'cloud_ssd' => 'Standard SSD.', 'cloud_auto' => 'ESSD AutoPL disk.', 'cloud_regional_disk_auto' => 'Regional ESSD.', 'cloud_essd' => 'Enterprise SSD.', 'elastic_ephemeral_disk_standard' => 'Elastic ephemeral disk - Standard.', 'cloud_essd_entry' => 'ESSD Entry disk.', 'elastic_ephemeral_disk_premium' => 'Elastic ephemeral disk - Premium.'], 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => '', ], ], [ 'name' => 'DataDisk.2.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.PerformanceLevel` parameter for better scalability.', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'DataDisk.3.Size', 'in' => 'query', 'schema' => ['description' => 'The capacity of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Size` parameter for better scalability.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2000', 'title' => ''], ], [ 'name' => 'DataDisk.3.Category', 'in' => 'query', 'schema' => [ 'description' => 'The disk type.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Category` parameter for better scalability.', 'enumValueTitles' => ['cloud' => 'Basic disk.', 'cloud_efficiency' => 'Ultra disk.', 'cloud_ssd' => 'Standard SSD.', 'cloud_auto' => 'ESSD AutoPL disk.', 'cloud_regional_disk_auto' => 'Regional ESSD.', 'cloud_essd' => 'Enterprise SSD.', 'elastic_ephemeral_disk_standard' => 'Elastic ephemeral disk - Standard.', 'cloud_essd_entry' => 'ESSD Entry disk.', 'elastic_ephemeral_disk_premium' => 'Elastic ephemeral disk - Premium.'], 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => '', ], ], [ 'name' => 'DataDisk.3.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.PerformanceLevel` parameter for better scalability.', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'DataDisk.4.Size', 'in' => 'query', 'schema' => ['description' => 'The capacity of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Size` parameter for better scalability.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2000', 'title' => ''], ], [ 'name' => 'DataDisk.4.Category', 'in' => 'query', 'schema' => [ 'description' => 'The disk type.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.Category` parameter for better scalability.', 'enumValueTitles' => ['cloud' => 'Basic disk.', 'cloud_efficiency' => 'Ultra disk.', 'cloud_ssd' => 'Standard SSD.', 'cloud_auto' => 'ESSD AutoPL disk.', 'cloud_regional_disk_auto' => 'Regional ESSD.', 'cloud_essd' => 'Enterprise SSD.', 'elastic_ephemeral_disk_standard' => 'Elastic ephemeral disk - Standard.', 'cloud_essd_entry' => 'ESSD Entry disk.', 'elastic_ephemeral_disk_premium' => 'Elastic ephemeral disk - Premium.'], 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => '', ], ], [ 'name' => 'DataDisk.4.PerformanceLevel', 'in' => 'query', 'schema' => ['description' => 'The performance level of the data disk.'."\n" ."\n" .'We recommend that you use the `DataDisk.N.PerformanceLevel` parameter for better scalability.', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The billing duration of Elastic Compute Service (ECS). Valid values:'."\n" ."\n" .''."\n" .'- If the PriceUnit parameter is set to Month: 1 to 9.'."\n" .'- If the PriceUnit parameter is set to Year: 1 to 5.'."\n" .'- If the PriceUnit parameter is set to Hour: 1.'."\n" .'- If the PriceUnit parameter is set to Week: 1 to 4.'."\n" ."\n" .''."\n" ."\n" .''."\n" .'- If the PriceUnit parameter is set to Month: 1 to 9.'."\n" .'- If the PriceUnit parameter is set to Year: 1 to 5.'."\n" .'- If the PriceUnit parameter is set to Hour: 1.'."\n" ."\n" .''."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PriceUnit', 'in' => 'query', 'schema' => ['description' => 'The pricing unit for querying Elastic Compute Service (ECS) prices across different billing cycles. Valid values:'."\n" ."\n" .''."\n" .'- Month: monthly pricing unit.'."\n" .'- Year: yearly pricing unit.'."\n" .'- Hour (default): hourly pricing unit.'."\n" .'- Week: weekly pricing unit.'."\n" ."\n" .''."\n" ."\n" .''."\n" .'- Month: monthly pricing unit.'."\n" .'- Year: yearly pricing unit.'."\n" .'- Hour (default): hourly pricing unit.'."\n" ."\n" .'', 'type' => 'string', 'required' => false, 'example' => 'Year', 'title' => ''], ], [ 'name' => 'Amount', 'in' => 'query', 'schema' => ['description' => 'The number of Elastic Compute Service (ECS) instances that you want to purchase in batch. You can use this parameter to query the price of batch purchasing instances of a specific configuration. Valid values: 1 to 1000.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'OfferingType', 'in' => 'query', 'schema' => ['description' => 'The payment option of the reserved instance. Valid values:'."\n" ."\n" .'- No Upfront: no upfront.'."\n" .'- Partial Upfront: partial upfront.'."\n" .'- All Upfront: all upfront.', 'type' => 'string', 'required' => false, 'example' => 'All Upfront', 'title' => ''], ], [ 'name' => 'InstanceAmount', 'in' => 'query', 'schema' => ['description' => 'The total number of instances to reserve within an instance type.'."\n" ."\n" .'Valid values: 1 to 1000.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100', 'title' => ''], ], [ 'name' => 'Scope', 'in' => 'query', 'schema' => ['description' => 'The scope of the reserved instance. Valid values: '."\n" .' '."\n" .'- Region: regional. '."\n" .'- Zone: zonal.'."\n" ."\n" .'Default value: Region.', 'type' => 'string', 'required' => false, 'example' => 'Zone', 'title' => ''], ], [ 'name' => 'Platform', 'in' => 'query', 'schema' => ['description' => 'The operating system type of the image used by the instance. Valid values: '."\n" .'- Windows: Windows Server operating system.'."\n" .'- Linux: Linux and Unix-like operating systems.', 'type' => 'string', 'required' => false, 'example' => 'Linux', 'title' => ''], ], [ 'name' => 'Capacity', 'in' => 'query', 'schema' => ['description' => 'The capacity, in GiB.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1024', 'title' => ''], ], [ 'name' => 'AssuranceTimes', 'in' => 'query', 'schema' => ['description' => 'The total number of times that the elasticity assurance can be applied. Set the value to Unlimited. Only the unlimited mode within the service effective period is supported.'."\n" ."\n" .'Default value: Unlimited.', 'type' => 'string', 'required' => false, 'example' => 'Unlimited', 'title' => ''], ], [ 'name' => 'InstanceCpuCoreCount', 'in' => 'query', 'schema' => ['description' => 'The total number of vCPUs supported by the elasticity assurance. When you call this operation, the system calculates the number of instances required by the elasticity assurance based on the specified InstanceType (rounded up).'."\n" ."\n" .'> When you call this operation to query the price of an elasticity assurance, you can specify only one of InstanceCoreCpuCount and InstanceAmount.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1024', 'title' => ''], ], [ 'name' => 'Isp', 'in' => 'query', 'schema' => ['description' => 'The Internet Service Provider (ISP). Valid values: '."\n" .'- cmcc: China Mobile.'."\n" .'- telecom: China Telecom.'."\n" .'- unicom: China Unicom.'."\n" .'- multiCarrier: multi-ISP.', 'type' => 'string', 'required' => false, 'example' => 'cmcc', 'title' => ''], ], [ 'name' => 'InstanceTypeList', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance type. Only a single instance type can be specified for the unlimited elasticity assurance service.', 'type' => 'array', 'items' => ['description' => 'The instance type. Only a single instance type can be specified for the unlimited elasticity assurance service.', 'type' => 'string', 'required' => false, 'example' => 'ecs.c6.xlarge', 'title' => ''], 'required' => false, 'example' => 'ecs.g6.xlarge', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => [ 'description' => 'The bidding policy for pay-as-you-go instances. Valid values:'."\n" .'- NoSpot: a regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: a spot instance with a maximum price limit.'."\n" .'- SpotAsPriceGo: a spot instance priced at the market price with the pay-as-you-go price as the upper limit.'."\n" ."\n" .'Default value: NoSpot.'."\n" ."\n" .'> This parameter takes effect only when `PriceUnit=Hour` and `Period=1`. Because the default value of `PriceUnit` is `Hour` and the default value of `Period` is `1`, you do not need to set `PriceUnit` or `Period` when you specify this parameter.', 'type' => 'string', 'default' => 'NoSpot', 'enum' => ['NoSpot', 'SpotWithPriceLimit', 'SpotAsPriceGo'], 'required' => false, 'example' => 'NoSpot', 'title' => '', ], ], [ 'name' => 'SpotDuration', 'in' => 'query', 'schema' => ['description' => 'The protection period of the spot instance, in hours. Default value: 1. Valid values:'."\n" .'- 1: After a spot instance is created, Alibaba Cloud ensures that the instance is not automatically released for 1 hour. After 1 hour, the system automatically compares the bid price with the market price and checks resource availability to determine whether to retain automatic release the instance.'."\n" .'- 0: After a spot instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system automatically compares the bid price with the market price and checks resource availability to determine whether to retain automatic release the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. Select an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'> This parameter takes effect only when SpotStrategy is set to SpotWithPriceLimit or SpotAsPriceGo.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID.'."\n" ."\n" .'> Spot instance prices may vary across zones. When you query spot instance prices, specify ZoneId to query the price in a specific zone.', 'type' => 'string', 'required' => false, 'example' => 'cn-hagzhou-i', 'title' => ''], ], [ 'name' => 'DataDisk', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of data disks.', 'type' => 'array', 'items' => [ 'description' => 'The list of data disks.', 'type' => 'object', 'properties' => [ 'Category' => ['description' => 'The category of data disk N. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- ephemeral_ssd: local SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud_auto: ESSD AutoPL disk.'."\n" .''."\n" .'- cloud_essd_entry: ESSD Entry disk.'."\n" .''."\n" ."\n" .'Valid values of N: 1 to 16.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], 'Size' => ['description' => 'The size of data disk N, in GiB. Valid values:'."\n" ."\n" .'- cloud: 5 to 2000.'."\n" .'- cloud_efficiency: 20 to 32768.'."\n" .'- cloud_ssd: 20 to 32768.'."\n" .'- cloud_auto: 1 to 32768.'."\n" .''."\n" .'- cloud_essd_entry: 10 to 32768.'."\n" .''."\n" .'- cloud_essd: The valid values depend on the value of `DataDisk.N.PerformanceLevel`. '."\n" .' - PL0: 1 to 32768.'."\n" .' - PL1: 20 to 32768.'."\n" .' - PL2: 461 to 32768.'."\n" .' - PL3: 1261 to 32768.'."\n" .'- ephemeral_ssd: 5 to 800.'."\n" ."\n" .'Valid values of N: 1 to 16.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '2000', 'title' => ''], 'PerformanceLevel' => ['description' => 'The performance level of data disk N when the disk type is ESSD. This parameter is valid only when `DataDisk.N.Category=cloud_essd`. Valid values:'."\n" ."\n" .'- PL0.'."\n" .'- PL1 (default).'."\n" .'- PL2.'."\n" .'- PL3.'."\n" ."\n" .'Valid values of N: 1 to 16.', 'type' => 'string', 'required' => false, 'example' => 'PL1', 'title' => ''], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL disk. Valid values: 0 to min{50,000, 1000 × capacity - baseline performance}.'."\n" ."\n" .'Baseline performance = min{1,800 + 50 × capacity, 50000}.'."\n" ."\n" .'> This parameter is supported only when `DiskCategory` is set to `cloud_auto`. For more information, see [ESSD AutoPL disk](~~368372~~).', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '40000', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 64, 'title' => '', 'example' => '', ], ], [ 'name' => 'SchedulerOptions.DedicatedHostId', 'in' => 'query', 'schema' => ['description' => 'This parameter takes effect only when ResourceType is set to instance.'."\n" ."\n" .'The dedicated host ID. You can call [DescribeDedicatedHosts](~~134242~~) to query the list of dedicated host IDs.', 'type' => 'string', 'required' => false, 'example' => 'dh-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The effective period when the time-sharing elasticity assurance takes effect. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC+0. For more information, see [ISO 8601](~~25696~~).', 'type' => 'string', 'required' => false, 'example' => '2020-10-30T06:32:00Z', 'title' => ''], ], [ 'name' => 'RecurrenceRules', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of recurrence rules for the time-sharing elasticity assurance.'."\n" ."\n" .''."\n" ."\n" .'> The time-sharing elasticity assurance feature is available only in specific regions and for specific users. To use this feature, [submit a ticket](https://selfservice.console.aliyun.com/ticket/createIndex).'."\n" ."\n" .''."\n" ."\n" .''."\n" ."\n" .'> The time-sharing elasticity assurance feature is available only in specific regions and for specific users. To use this feature, [submit a ticket](https://smartservice.console.aliyun.com/service/create-ticket-intl).'."\n" ."\n" .'', 'type' => 'array', 'items' => [ 'description' => 'The recurrence rule for the time-sharing elasticity assurance.'."\n" ."\n\n" .'> - When you modify a recurrence rule, **the total assurance duration before and after the modification must be the same**. For more modification examples, see [Modify recurrence rules](~~2867405~~).'."\n" .'> - The modified recurrence rule takes effect the next day.', 'type' => 'object', 'properties' => [ 'StartHour' => ['description' => 'The effective period start hour of the time-sharing assurance. The value must be a whole hour.'."\n" ."\n" .'> You must specify both StartHour and EndHour, and the difference between them must be at least 4 hours.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '4', 'title' => ''], 'RecurrenceType' => ['description' => 'The type of the recurrence rule. Valid values:'."\n" .'- Daily: daily recurrence.'."\n" .'- Weekly: weekly recurrence.'."\n" .'- Monthly: monthly recurrence.'."\n" ."\n" .'> You must specify both `RecurrenceType` and `RecurrenceValue`.', 'type' => 'string', 'required' => false, 'example' => 'Daily', 'title' => ''], 'EndHour' => ['description' => 'The end hour of the time-sharing assurance. The value must be a whole hour.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], 'RecurrenceValue' => ['description' => 'The value of the recurrence rule.'."\n" ."\n" .'- If `RecurrenceType` is set to `Daily`, you can specify only one value. Valid values: 1 to 31. This value indicates the interval in days between recurrences.'."\n" .'- If `RecurrenceType` is set to `Weekly`, you can specify multiple values separated by commas (,). The values for Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday are 0, 1, 2, 3, 4, 5, and 6. For example, `1,2` indicates Monday and Tuesday.'."\n" .'- If `RecurrenceType` is set to `Monthly`, the format is `A-B`. Valid values of A and B: 1 to 31. B must be greater than or equal to A. For example, `1-5` indicates the 1st through 5th day of each month.'."\n" ."\n" .'> You must specify both `RecurrenceType` and `RecurrenceValue`.', 'type' => 'string', 'required' => false, 'example' => '5', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'SchedulerOptions.DeploymentSetStrategy', 'in' => 'query', 'schema' => ['description' => 'The deployment set strategy. Valid values:'."\n" .'- Availability: high availability.'."\n" .'- AvailabilityGroup: deployment set group high availability.'."\n" .'- LowLatency: low network latency.'."\n" .'- ProximityLooseDispersion: proximity loose dispersion.'."\n" ."\n" .'> Only when the strategy is set to ProximityLooseDispersion does the API response include the price details for "Resource": "deploymentSet". Other deployment set strategies are free of charge, so the API response does not include price information for "Resource": "deploymentSet".', 'type' => 'string', 'required' => false, 'example' => 'ProximityLooseDispersion', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PriceInfo' => [ 'description' => 'The price information, including the price and promotion rules.', 'type' => 'object', 'properties' => [ 'Rules' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Rule' => [ 'description' => 'The promotion rule.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description of the promotion rule.', 'type' => 'string', 'example' => '买满1年,立享官网价格8.5折优惠。', 'title' => ''], 'RuleId' => ['description' => 'The ID of the promotion rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '587', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Price' => [ 'description' => 'The price.', 'type' => 'object', 'properties' => [ 'OriginalPrice' => ['description' => 'The original price.', 'type' => 'number', 'format' => 'float', 'example' => '4368', 'title' => ''], 'ReservedInstanceHourPrice' => ['description' => 'The hourly price of a reserved instance with the no upfront or partial upfront payment option.', 'type' => 'number', 'format' => 'float', 'example' => '1', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount.', 'type' => 'number', 'format' => 'float', 'example' => '655.2', 'title' => ''], 'Currency' => ['description' => 'The currency unit.'."\n" ."\n" .'China site: CNY.'."\n" ."\n" .'International site: USD.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TradePrice' => ['description' => 'The transaction price, which is the original price minus the discount.', 'type' => 'number', 'format' => 'float', 'example' => '3712.8', 'title' => ''], 'DetailInfos' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DetailInfo' => [ 'description' => 'The price details of each configuration.'."\n" ."\n" .'> This parameter is returned only when ResourceType is set to instance.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'OriginalPrice' => ['description' => 'The original price.', 'type' => 'number', 'format' => 'float', 'example' => '4368', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount price.', 'type' => 'number', 'format' => 'float', 'example' => '655.2', 'title' => ''], 'Resource' => ['description' => 'The configuration name. Valid values:'."\n" ."\n" .'- instanceType: instance.'."\n" .'- bandwidth: bandwidth.'."\n" .'- image: image.'."\n" .'- systemDisk: system disk.'."\n" .'- dataDisk: data disk.', 'type' => 'string', 'example' => 'instanceType', 'title' => ''], 'SubRules' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Rule' => [ 'description' => 'The subset of pricing rules.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description of the pricing rule subset.', 'type' => 'string', 'example' => '买满1年,立享官网价格8.5折优惠', 'title' => ''], 'RuleId' => ['description' => 'The ID of the promotion rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '587', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'TradePrice' => ['description' => 'The transaction price.', 'type' => 'number', 'format' => 'float', 'example' => '3712.8', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'RelatedPrice' => [ 'description' => 'The related price.', 'type' => 'object', 'properties' => [ 'MarketplaceImagePrice' => [ 'description' => 'The Alibaba Cloud Marketplace image price.', 'type' => 'object', 'properties' => [ 'Currency' => ['description' => 'The currency unit.'."\n" ."\n" .'China site: CNY.'."\n" ."\n" .'International site: USD.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'OriginalPrice' => ['description' => 'The original price.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount.', 'type' => 'number', 'format' => 'float', 'example' => '0', 'title' => ''], 'TradePrice' => ['description' => 'The transaction price, which is the original price minus the discount.', 'type' => 'number', 'format' => 'float', 'example' => '100', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.RecurrenceRules', 'errorMessage' => 'The specified parameter RecurrenceRules is invalid.', 'description' => 'The specified parameter "RecurrenceRules" is invalid.'], ['errorCode' => 'InvalidRecurrenceRules.CountLimitExceeded', 'errorMessage' => 'The count of RecurrenceRules exceeds the limit.', 'description' => 'The number of parameter RecurrenceRules exceeds the limit value.'], ['errorCode' => 'InvalidRecurrenceRulesStartHourEndHour.TooShort', 'errorMessage' => 'The recurrence hour between RecurrenceRules.StartHour and RecurrenceRules.EndHour is too short.', 'description' => 'The effective time between parameter RecurrenceRules.StartHour and RecurrenceRules.EndHour is less than the minimum requirement.'."\n"], ['errorCode' => 'InvalidParameter.RecurrenceRulesStartHourEndHour', 'errorMessage' => 'The specified parameter RecurrenceRules.StartHour or RecurrenceRules.EndHour is invalid.', 'description' => 'The parameter RecurrenceRules.StartHour or RecurrenceRules.EndHour specified for the RecurrenceRules does not conform to the specification.'], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceValueMonthly', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceValue for Monthly is invalid.', 'description' => 'The parameter RecurrenceRules.RecurrenceValue specified for the RecurrenceRules.RecurrenceType = Monthly does not conform to the specification.'."\n"], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceValueWeekly', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceValue for Weekly is invalid.', 'description' => 'The parameter RecurrenceRules.RecurrenceType specified for RecurrenceRules.RecurrenceValue = Weekly is out of specification.'], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceValueDaily', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceValue for Daily is invalid.', 'description' => 'The parameter RecurrenceRules.RecurrenceType specified for RecurrenceRules.RecurrenceValue = Daily does not conform to the specification.'], ['errorCode' => 'InvalidParameter.RecurrenceRulesRecurrenceType', 'errorMessage' => 'The specified parameter RecurrenceRules.RecurrenceType is invalid.', 'description' => 'The specified parameter RecurrenceRules.RecurrenceType does not conform to specification.'], ['errorCode' => 'InvalidStartTime.NotSupported', 'errorMessage' => 'The StartTime of TimeDivisionElasticityAssurance cannot between any of active time ranges.', 'description' => ''], ['errorCode' => 'InvalidSpotAuthorized', 'errorMessage' => 'The specified Spot param is unauthorized.', 'description' => 'You are not authorized to set the SpotDuration parameter.'], ['errorCode' => 'Invalid.ZoneId', 'errorMessage' => 'The specified ZoneId is not valid.', 'description' => 'The specified ZoneId is invalid.'], ['errorCode' => 'InvalidInstanceType.ValueUnauthorized', 'errorMessage' => 'The specified InstanceType is not authorized.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => 'The specified instance type does not exist or you are not authorized to manage instances of this instance type.'], ['errorCode' => 'InvalidInternetChargeType.ValueNotSupported', 'errorMessage' => 'The specified InternetChargeType is not valid.', 'description' => 'The specified InternetChargeType parameter is invalid.'], ['errorCode' => 'InvalidInternetMaxBandwidthOut.ValueNotSupported', 'errorMessage' => 'The specified parameter "InternetMaxBandwidthOut" is not valid.', 'description' => ''], ['errorCode' => 'AccountForbidden.ProductCreationLimited', 'errorMessage' => 'The commodity must be officially operated by Aliyun and in pay-as-you-go billing method.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "SystemDisk.Category" is not valid.', 'description' => 'The specified parameter system disk specification is invalid.'], ['errorCode' => 'InvalidDataDiskSize.ValueNotSupported', 'errorMessage' => 'The specified DataDisk.n.Size beyond the permitted range, or the capacity of snapshot exceeds the size limit of the specified disk category.', 'description' => 'The specified DataDisk.N.Size parameter is invalid or the snapshot size exceeds the maximum capacity allowed for the specified disk category.'], ['errorCode' => 'InvalidDataDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DataDisk.n.Category" is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified image does not support the specified instance type.', 'description' => 'The specified image cannot be used for instances of the specified instance type.'], ['errorCode' => 'InvalidNetworkType.Mismatch', 'errorMessage' => 'Specified parameter "InternetChargeType" conflict with instance network type.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.Mismatch', 'errorMessage' => 'The specified disk categories\' combination is not supported.', 'description' => ''], ['errorCode' => 'InvalidIoOptimizedValue.ValueNotSupported', 'errorMessage' => 'IoOptimized value not supported.', 'description' => 'The specified IoOptimized value is not supported.'], ['errorCode' => 'InvalidPeriod', 'errorMessage' => 'The specified period is not valid.', 'description' => 'The specified period is invalid.'], ['errorCode' => 'InstanceDiskCategoryLimitExceed', 'errorMessage' => 'The specified DataDisk.n.Size beyond the permitted range, or the capacity of snapshot exceeds the size limit of the specified disk category.', 'description' => 'The specified DataDisk.N.Size parameter is invalid or the snapshot size exceeds the maximum capacity allowed for the specified disk category.'], ['errorCode' => 'InstanceDiskNumber.LimitExceed', 'errorMessage' => 'The total number of specified disk in an instance exceeds.', 'description' => 'The number of disks on an instance exceeds the upper limit.'], ['errorCode' => 'InvalidSystemDiskSize.LessThanImageSize', 'errorMessage' => 'The specified parameter "SystemDisk.Size" is less than the image size.', 'description' => ''], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ['errorCode' => 'PriceNotFound', 'errorMessage' => 'The price of your queried resource is not available now, please try other resources.', 'description' => 'The price of the specified resource does not exist. Modify the parameter value and try again later.'], ['errorCode' => 'InvalidResourceType.ValueNotSupported', 'errorMessage' => 'The specified parameter ResourceType is not valid.', 'description' => 'The specified resource type is not supported.'], ['errorCode' => 'InvalidPriceUnit.ValueNotSupported', 'errorMessage' => 'The specified parameter PriceUnit is not valid.', 'description' => 'The specified PriceUnit parameter is invalid.'], ['errorCode' => 'IncorrectImageStatus', 'errorMessage' => 'The specified image is an Alibaba Cloud Marketplace image. The sale of this image has ended. For more information, contact the image service provider.', 'description' => 'The specified image is an Alibaba Cloud Marketplace image that is no longer sold. For more information about the image, contact the image provider.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The current operation is not supported due to unfinished Temporary Upgrade.', 'description' => ''], ['errorCode' => 'InvalidPerformanceLevel.Malformed', 'errorMessage' => 'The specified parameter DataDisk.n.PerformanceLevel is not valid.', 'description' => ''], ['errorCode' => 'InvalidCapacity.ValueNotSupported', 'errorMessage' => 'The specified parameter Capacity is not valid.', 'description' => ''], ['errorCode' => 'InvalidActivity.NotSupported', 'errorMessage' => 'The specified discount activity is not supported.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchEncryptAlgorithm', 'errorMessage' => 'The specified parameter Encrypted must be true when EncryptAlgorithm is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchKmsKeyId', 'errorMessage' => 'The specified parameter Encrypted must be true when KmsKeyId is not empty.', 'description' => ''], ['errorCode' => 'InvalidEncrypted.NotMatchSnapshot', 'errorMessage' => 'The specified parameter Encrypted is different from the Encrypted of the snapshot.', 'description' => 'When creating a disk from an encrypted snapshot, you must set the Encrypted parameter to true.'], ['errorCode' => 'InvalidEncryptAlgorithm.NotMatchSnapshot', 'errorMessage' => 'The specified parameter EncryptAlgorithm is different from the encrypt algorithm of the snapshot.', 'description' => ''], ['errorCode' => 'InvalidKmsKeyId.NotMatchSnapshot', 'errorMessage' => 'The specified parameter KmsKeyId is different from the KmsKeyId of the snapshot.', 'description' => ''], ['errorCode' => 'InvalidEncryptAlgorithm', 'errorMessage' => 'The specified parameter EncryptAlgorithm is not valid.', 'description' => ''], ['errorCode' => 'InvalidAssuranceTimes.NotSupported', 'errorMessage' => 'The value of AssuranceTimes is not supported.', 'description' => 'The specified AssuranceTimes parameter is invalid.'], ['errorCode' => 'InvalidParameter.Platform', 'errorMessage' => 'The specified parameter Platform is invalid.', 'description' => ''], ['errorCode' => 'InvalidOperation.InstanceRenewWithDowngradeInPlan', 'errorMessage' => 'The operation is denied due to the specified instance has renew with downgrade record in plan.', 'description' => 'There are renewal downgrade orders that have not yet taken effect. This operation is not allowed before the order takes effect.'], ['errorCode' => 'OperationDenied.TestAccountRetricted', 'errorMessage' => 'Test-account for testing has been prohibited from creating instance in this region. Please contact 400181.', 'description' => 'Test accounts are not allowed to create instances in the local region. Please contact Cost and Resource Center @ Gao Chong (400181)'], ['errorCode' => 'UnsupportedIspNetworkChargeType', 'errorMessage' => 'The network charge type is not supported when specifying ISP.', 'description' => 'The network charge type is not supported when specifying ISP.'], ['errorCode' => 'EncryptedOption.Conflict', 'errorMessage' => 'Disk encryption attributes conflict.', 'description' => 'Disk encryption attributes conflict.'], ['errorCode' => 'InvalidSystemDiskSize.ValueNotSupported', 'errorMessage' => 'The specified parameter SystemDisk.Size is invalid', 'description' => 'The specified SystemDisk.Size parameter is invalid.'], ['errorCode' => 'UnsupportedIspChargeType', 'errorMessage' => 'The specified Isp does not support the charge type.', 'description' => 'The specified Isp does not support the charge type.'], ['errorCode' => 'InvalidInstanceType.NotSupported', 'errorMessage' => 'The specified instanceType is not supported by the image architecture.', 'description' => 'The specified image schema does not support this instance type.'], ['errorCode' => 'InvalidDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter "DiskCategory" is not valid.', 'description' => 'The specified cloud disk type DiskCategory is invalid.'], ['errorCode' => 'InvalidMarketImage.NotAuthorized', 'errorMessage' => 'The specified marketplace image is not authorized for your channel, please use other image.', 'description' => 'The specified marketplace image is not authorized for your channel, please use other image.'], ], 403 => [ ['errorCode' => 'ImageNotSubscribed', 'errorMessage' => 'The specified image has not be subscribed.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified Image is disabled or is deleted.', 'description' => 'The specified image is disabled or deleted.'], ['errorCode' => 'InvalidSystemDiskCategory.ValueUnauthorized', 'errorMessage' => 'The disk category is not authorized.', 'description' => 'You are not authorized to use the specified disk category.'], ['errorCode' => 'InstanceDiskCategoryLimitExceed', 'errorMessage' => 'The total size of specified disk category in an instance exceeds.', 'description' => 'The total size of disks of the specified category exceeds the maximum capacity allowed for an instance.'], ['errorCode' => 'ImageRemovedInMarket', 'errorMessage' => 'The specified market image is not available, Or the specified user defined image includes product code because it is based on an image subscribed from marketplace, and that image in marketplace includeing exact the same product code has been removed.', 'description' => 'The specified Alibaba Cloud Marketplace image is unavailable, or the specified custom image contains the product code of the Alibaba Cloud Marketplace image from which the custom image is derived and the Alibaba Cloud Marketplace image was removed from Alibaba Cloud Marketplace.'], ['errorCode' => 'QuotaExceed.PortableCloudDisk', 'errorMessage' => 'The quota of portable cloud disk exceeds.', 'description' => ''], ['errorCode' => 'Forbbiden', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'You are not authorized to operate the specified resource.'], ['errorCode' => 'InstanceDiskNumLimitExceed', 'errorMessage' => 'The number of specified disk in an instance exceeds.', 'description' => 'The number of specified disks exceeds the upper limit for an instance.'], ['errorCode' => 'IoOptimized.NotSupported', 'errorMessage' => 'The specified image is not support IoOptimized Instance.', 'description' => ''], ['errorCode' => 'ImageNotSupportInstanceType', 'errorMessage' => 'The specified image don\'t support the InstanceType instance.', 'description' => 'The specified image does not support the selected instance type.'], ['errorCode' => 'InvalidDiskSize.TooSmall', 'errorMessage' => 'Specified disk size is less than the size of snapshot.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.Mismatch', 'errorMessage' => 'The specified disk categories combination is not supported.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.NotSupported', 'errorMessage' => 'The specified disk category is not support the specified instance type.', 'description' => ''], ['errorCode' => 'QuotaExceed.BuyImage', 'errorMessage' => 'The specified image is from the image market, you have not bought it or your quota has been exceeded.', 'description' => ''], ['errorCode' => 'InvalidParameter.ResourceOwnerAccount', 'errorMessage' => 'ResourceOwnerAccount is Invalid.', 'description' => 'The specified ResourceOwnerAccount parameter is invalid.'], ['errorCode' => 'RegionUnauthorized', 'errorMessage' => 'There is no authority to create instance in the specified region.', 'description' => 'You are not authorized to create instances in the specified region.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => ''], ['errorCode' => 'InvalidAmount.Malformed', 'errorMessage' => 'The specified parameter Amount is not valid.', 'description' => 'The specified Amount parameter is invalid.'], ['errorCode' => 'InvalidChargeType.MarketImage', 'errorMessage' => 'The specified chargeType of marketplace image is invalid.', 'description' => ''], ['errorCode' => 'InvalidDiskIds.NotFound', 'errorMessage' => 'Some of the specified disks do not exist.', 'description' => ''], ['errorCode' => 'PrePaidInstance.Expired', 'errorMessage' => 'The prePaid instance has expired.', 'description' => ''], ['errorCode' => 'OperationDenied.PerformanceLevelNotMatch', 'errorMessage' => 'The specified DataDisk.n.PerformanceLevel and DataDisk.n.Size do not match.', 'description' => ''], ['errorCode' => 'InvalidAction.Unauthorized', 'errorMessage' => 'The specified action is not valid.', 'description' => 'The specified operation is invalid.'], ['errorCode' => 'InvalidRegionId.NotSupportEncryptAlgorithm', 'errorMessage' => 'The current region does not support creating encrypted disks with EncryptAlgorithm.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NotSupportDiskCategory', 'errorMessage' => 'The instanceType of the specified instance does not support this disk category.', 'description' => 'The instance type does not support the current disk category. Try another instance type. For information about the disk categories supported by instance types, see the instance family documentation.'], ['errorCode' => 'InvalidOperation.PublicIpAddressNoStock', 'errorMessage' => 'The public IP address for the specified Region or ChargeType of the instance is out of stock. Please try another Region or ChargeType.', 'description' => 'Under the conditions of the specified region or payment type, the public IP address inventory of the instance is insufficient. Please try another region or payment type.'], ['errorCode' => 'UnsupportedIspRegion', 'errorMessage' => 'The specified region does not support Isp.', 'description' => 'The specified region does not support Isp'], ['errorCode' => 'InvalidIspBandwidthOut', 'errorMessage' => 'The specified parameter InternetMaxBandwidthOut should be larger than 0 when specifying parameter Isp.', 'description' => 'The specified parameter InternetMaxBandwidthOut should be larger than 0 when specifying parameter Isp. '], ['errorCode' => 'InstanceType.Offline', 'errorMessage' => 'The specified InstanceType has been offline', 'description' => 'The specified instance type is retired. Select another instance type.'], ['errorCode' => 'InvalidIspUID', 'errorMessage' => 'The current account does not have permission to specify the Isp parameter.', 'description' => 'The current account does not have permission to specify the Isp parameter.'], ['errorCode' => 'UnsupportedIspClassicNetwork', 'errorMessage' => 'The Isp parameter is not supported in the classic network.', 'description' => 'The Isp parameter is not supported in the classic network.'], ['errorCode' => 'InvalidIspType.ValueNotSupported', 'errorMessage' => 'The specified parameter Isp is invalid.', 'description' => 'The specified parameter Isp is invalid'], ['errorCode' => 'InvalidSystemDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified parameter SystemDisk.Category is not valid.', 'description' => 'The specified SystemDisk.Category value is not supported.'], ['errorCode' => 'InvalidDataDiskCategory.ValueNotSupported', 'errorMessage' => 'The specified Category of Data Disk is not valid.', 'description' => 'The specified data disk type is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified Image is disabled or is deleted.', 'description' => ''], ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified ImageId does not exist.', 'description' => 'The specified image does not exist in this account. Check whether the image ID is correct.'], ['errorCode' => 'IoOptimized.NotSupported', 'errorMessage' => 'The specified instancetype is not support IoOptimized instance.', 'description' => ''], ['errorCode' => 'InvalidInstanceChargeType.NotFound', 'errorMessage' => 'The InstanceChargeType does not exist in our records.', 'description' => ''], ['errorCode' => 'DependencyViolation.IoOptimized', 'errorMessage' => 'The specified instancetype must be IoOptimized instance.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.LessThanImageSize', 'errorMessage' => 'The specified parameter SystemDisk.Size is less than the image size.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.LessThanMinSize', 'errorMessage' => 'The specified parameter SystemDisk.Size is less than the minimum size.', 'description' => 'The specified SystemDisk.Size value is smaller than the lower limit.'], ['errorCode' => 'InvalidSystemDiskSize.MoreThanMaxSize', 'errorMessage' => 'The specified parameter SystemDisk.Size is more than the maximum size.', 'description' => ''], ['errorCode' => 'InvalidInternetMaxBandwidthOut.ValueNotSupported', 'errorMessage' => 'The specified vm bandwidth is not valid.', 'description' => ''], ['errorCode' => 'InvalidSystemDiskSize.ValueNotSupported', 'errorMessage' => 'The specified parameter SystemDisk.Size is invalid.', 'description' => 'The specified SystemDisk.Size parameter is invalid.'], ['errorCode' => 'InvalidInstanceType.Missing', 'errorMessage' => 'The InstanceType parameter that is mandatory for processing the request is not provided.', 'description' => 'The InstanceType parameter is required.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => 'The specified InstanceType does not exist or beyond the permitted range.', 'description' => ''], ['errorCode' => 'InvalidNetworkType.ValueNotSupported', 'errorMessage' => 'The specified parameter NetworkType is not valid.', 'description' => 'The specified NetworkType parameter is invalid.'], ['errorCode' => 'InvalidDiskCategory.Missing', 'errorMessage' => 'The DataDisk.1.Category parameter that is mandatory for processing the request is not provided.', 'description' => ''], ['errorCode' => 'Invalid.InstanceId.NotFound', 'errorMessage' => 'The Instance provided does not exist.', 'description' => ''], ['errorCode' => 'InvalidMarketImage.NotFound', 'errorMessage' => 'The specified marketplace image does not exist, please change the imageId and try again.', 'description' => 'The specified Alibaba Cloud Marketplace image does not exist. Modify the ImageId parameter and try again.'], ['errorCode' => 'InvalidDiskIds.NotPortable', 'errorMessage' => 'The specified DiskId is not portable.', 'description' => ''], ['errorCode' => 'InvalidSystemDisk.NotFound', 'errorMessage' => 'The specified system disk does not exist.', 'description' => 'The specified system disk does not exist.'], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ['errorCode' => 'InvalidDedicatedHostType.Missing', 'errorMessage' => 'The dedicatedHostType parameter that is mandatory for processing the request is not provided.', 'description' => ''], ['errorCode' => 'InvalidDedicatedHostId.NotFound', 'errorMessage' => 'The specified SchedulerOptions.DedicatedHostId does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PriceInfo\\": {\\n \\"Rules\\": {\\n \\"Rule\\": [\\n {\\n \\"Description\\": \\"买满1年,立享官网价格8.5折优惠。\\",\\n \\"RuleId\\": 587\\n }\\n ]\\n },\\n \\"Price\\": {\\n \\"OriginalPrice\\": 4368,\\n \\"ReservedInstanceHourPrice\\": 1,\\n \\"DiscountPrice\\": 655.2,\\n \\"Currency\\": \\"CNY\\",\\n \\"TradePrice\\": 3712.8,\\n \\"DetailInfos\\": {\\n \\"DetailInfo\\": [\\n {\\n \\"OriginalPrice\\": 4368,\\n \\"DiscountPrice\\": 655.2,\\n \\"Resource\\": \\"instanceType\\",\\n \\"SubRules\\": {\\n \\"Rule\\": [\\n {\\n \\"Description\\": \\"买满1年,立享官网价格8.5折优惠\\",\\n \\"RuleId\\": 587\\n }\\n ]\\n },\\n \\"TradePrice\\": 3712.8\\n }\\n ]\\n }\\n },\\n \\"RelatedPrice\\": {\\n \\"MarketplaceImagePrice\\": {\\n \\"Currency\\": \\"CNY\\",\\n \\"OriginalPrice\\": 100,\\n \\"DiscountPrice\\": 0,\\n \\"TradePrice\\": 100\\n }\\n }\\n }\\n}","type":"json"}]', 'title' => 'Query price', 'description' => 'The parameter settings vary based on the resource type:'."\n" .' - When `ResourceType=instance`, you must also specify `InstanceType`.'."\n" .' By default, the price of the pay-as-you-go (`PostPaid`) billing method (`ChargeType`) is queried. You can specify the `PriceUnit` parameter to query Elastic Compute Service (ECS) prices for different billing cycles.'."\n" .' - When `ResourceType=disk`, you must also specify `DataDisk.1.Category` and `DataDisk.1.Size`. When you query the price of `disk` resources, only the pay-as-you-go price of disks is returned. This means that the `PriceUnit` parameter can only be set to `Hour`.'."\n" .'- When `ResourceType=diskperformance`, you must also specify `DataDisk.1.Category` and `DataDisk.1.ProvisionedIops`.'."\n" .' - When `ResourceType=ddh`, you must also specify `DedicatedHostType`.'."\n" .' - When `ResourceType=ElasticityAssurance`, you must also specify `InstanceType`.'."\n" .' - When `ResourceType=CapacityReservation`, you must also specify `InstanceType`.'."\n" .'- When `ResourceType=bandwidth`, only the pay-by-traffic (`PayByTraffic`) price is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-24T12:49:22.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-07-30T02:32:46.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-07-29T08:57:56.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-05-28T05:36:40.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-19T07:59:29.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2025-01-08T03:21:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-26T01:50:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-19T01:55:07.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-06-14T02:00:25.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-01-30T05:34:58.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-10-18T07:44:49.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-05-08T02:14:22.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-27T05:59:03.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-09-21T11:07:57.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribePrice'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribePrice', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeRecommendInstanceType' => [ 'summary' => '(Beta) Queries one or more alternative instance types based on a specified instance type. For instance types that have been or will be retired, DescribeRecommendInstanceType lists all instance types that can serve as replacements.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28982', 'abilityTreeNodes' => ['FEATUREecs2UXJI2'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'Cores', 'in' => 'query', 'schema' => ['description' => 'The number of vCPUs of the ECS instance.'."\n" ."\n" .'>If you specify both the Cores and Memory parameters, the system matches all instance types that meet the specified vCPU and memory requirements.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'Memory', 'in' => 'query', 'schema' => ['description' => 'The memory size of the ECS instance. Unit: GiB.'."\n" ."\n" .'>If you specify both the Cores and Memory parameters, the system matches all instance types that meet the specified vCPU and memory requirements.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '8.0', 'title' => ''], ], [ 'name' => 'InstanceFamilyLevel', 'in' => 'query', 'schema' => ['description' => 'The level of the instance family. Valid values:'."\n" ."\n" .'- EntryLevel: entry level.'."\n" .'- EnterpriseLevel: enterprise level.'."\n" .'- CreditEntryLevel: credit-based entry level. For details, see [Burstable instances](~~59977~~).', 'type' => 'string', 'required' => false, 'example' => 'EnterpriseLevel', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The specified instance type. For details, see [Instance families](~~25378~~). You can also call the [DescribeInstanceTypes](~~25620~~) operation to query the most recent instance type list.'."\n" ."\n" .'> If you specify InstanceType, you cannot specify Cores or Memory.', 'type' => 'string', 'required' => false, 'example' => 'ecs.hfg6.large', 'title' => ''], ], [ 'name' => 'NetworkType', 'in' => 'query', 'schema' => ['description' => 'The network type of the ECS instance. Valid values:'."\n" ."\n" .'- vpc: virtual private cloud (VPC).'."\n" .'- classic: classic network. The classic network is no longer available. For more information, see [Discontinuation notice](~~2833134~~).'."\n" ."\n" .'Default value: vpc.', 'type' => 'string', 'required' => true, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the ECS instance. For details, see [Billing overview](~~25398~~). Valid values:'."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .'Default value: PostPaid.', 'type' => 'string', 'required' => false, 'default' => 'PostPaid', 'example' => 'PostPaid', 'title' => ''], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => ['description' => 'The bidding policy for the spot instance. Valid values:'."\n" ."\n" .'- NoSpot: a pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: a spot instance with a maximum hourly price.'."\n" .'- SpotAsPriceGo: a spot instance for which the system automatically bids at up to the pay-as-you-go price.'."\n" ."\n" .'> When you use SpotStrategy, set InstanceChargerType to PostPaid.'."\n" ."\n" .'Default value: NoSpot.', 'type' => 'string', 'required' => false, 'default' => 'NoSpot', 'example' => 'NoSpot', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the instance is I/O optimized. If the instance type supports only non-I/O optimized instances, you cannot set the IoOptimized parameter. Valid values:'."\n" ."\n" .'- optimized: I/O optimized.'."\n" .'- none: non-I/O optimized.'."\n" ."\n" .'Default value: optimized.'."\n" ."\n" .'If you specify a retired instance type, the default value is none.', 'type' => 'string', 'required' => false, 'example' => 'optimized', 'title' => ''], ], [ 'name' => 'PriorityStrategy', 'in' => 'query', 'schema' => ['description' => 'The priority-based recommendation strategy. Valid values:'."\n" ."\n" .'- InventoryFirst: inventory first.'."\n" .'- PriceFirst: price first. Instance types are sorted by the hourly vCPU unit price in ascending order.'."\n" .'- NewProductFirst: newest product first.'."\n" ."\n" .'Default value: InventoryFirst.', 'type' => 'string', 'required' => false, 'default' => 'InventoryFirst', 'example' => 'PriceFirst', 'title' => ''], ], [ 'name' => 'MaxPrice', 'in' => 'query', 'schema' => ['description' => 'The maximum acceptable hourly price for pay-as-you-go or spot instances.'."\n" ."\n" .'>To set the maximum hourly price for a spot instance, set SpotStrategy to SpotWithPriceLimit.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '10.0', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID. You can call [DescribeZones](~~25610~~) to query the most recent zone list.'."\n" ."\n" .'Set ZoneMatchMode to Include (default value) to preferentially recommend instance types in the zone specified by ZoneId and also list instance types in other zones within the same region.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-f', 'title' => ''], ], [ 'name' => 'SystemDiskCategory', 'in' => 'query', 'schema' => ['description' => 'The category of the system disk. Valid values:'."\n" ."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD (ESSD).'."\n" .'- cloud: basic disk.'."\n" ."\n" .'Default value for non-I/O optimized instances: cloud.'."\n" ."\n" .'Default value for I/O optimized instances: cloud_efficiency.', 'type' => 'string', 'required' => false, 'example' => 'cloud_ssd', 'title' => ''], ], [ 'name' => 'ZoneMatchMode', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to recommend only instance types in the zone specified by ZoneId. Valid values:'."\n" ."\n" .'- Strict: recommends only instance types in the zone specified by ZoneId.'."\n" ."\n" .'- Include: recommends instance types in other zones within the same region.'."\n" ."\n\n" .'When ZoneId is specified, the default value of this parameter is Strict, which indicates that only instance types in the zone specified by ZoneId are recommended.', 'type' => 'string', 'required' => false, 'example' => 'Strict', 'title' => ''], ], [ 'name' => 'Scene', 'in' => 'query', 'schema' => ['description' => 'The scenario in which instance types are recommended. Valid values:'."\n" ."\n" .'- UPGRADE: upgrade or downgrade an instance type.'."\n" .'- CREATE: create an instance.'."\n" ."\n" .'Default value: CREATE.', 'type' => 'string', 'required' => false, 'default' => 'CREATE', 'example' => 'CREATE', 'title' => ''], ], [ 'name' => 'InstanceTypeFamily', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'Settings for the collection of alternative instance families from which alternative instance types are selected. You can specify up to 10 instance families.', 'type' => 'array', 'items' => ['description' => 'The instance family. For valid values of instance types, see [Instance families](~~25378~~). You can also call [DescribeInstanceTypeFamilys](~~25620~~) to query the instance family list.', 'type' => 'string', 'required' => false, 'example' => 'ecs.hfg6', 'title' => ''], 'required' => false, 'example' => 'ecs.hfg6', 'maxItems' => 20, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'Data' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RecommendInstanceType' => [ 'description' => 'The recommended instance types.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CommodityCode' => ['description' => 'The commodity code of the instance type.', 'type' => 'string', 'example' => 'ecs', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the instance type.', 'type' => 'string', 'example' => 'cn-hangzhou-h', 'title' => ''], 'Priority' => ['description' => 'The priority for sorting.', 'type' => 'integer', 'format' => 'int32', 'example' => '2', 'title' => ''], 'NetworkType' => ['description' => 'The network type of the ECS instance.', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'Scene' => ['description' => 'The scenario in which the instance type is recommended.', 'type' => 'string', 'example' => 'CREATE', 'title' => ''], 'SpotStrategy' => ['description' => 'The bidding policy for the spot instance.', 'type' => 'string', 'example' => 'NoSpot', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the instance type.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'InstanceChargeType' => ['description' => 'The billing method of the instance.', 'type' => 'string', 'example' => 'PostPaid', 'title' => ''], 'Zones' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'zone' => [ 'description' => 'The zones in which the instance type is available.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ZoneNo' => ['description' => 'The zone ID of the instance type.', 'type' => 'string', 'example' => 'cn-hangzhou-h', 'title' => ''], 'NetworkTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'NetworkType' => [ 'description' => 'The network types supported by the instance type.', 'type' => 'array', 'items' => ['description' => 'The network type of the instance type.', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceType' => [ 'description' => 'The name of the instance type.', 'type' => 'object', 'properties' => [ 'SupportIoOptimized' => ['description' => 'Indicates whether the instance type supports I/O optimization.', 'type' => 'string', 'example' => 'optimized', 'title' => ''], 'Cores' => ['description' => 'The number of vCPUs of the instance type.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Memory' => ['description' => 'The memory size of the instance type. Unit: MB.', 'type' => 'integer', 'format' => 'int32', 'example' => '8192', 'title' => ''], 'InstanceType' => ['description' => 'The name of the instance type.', 'type' => 'string', 'example' => 'ecs.hfg6.large', 'title' => ''], 'InstanceTypeFamily' => ['description' => 'The instance family of the instance type.', 'type' => 'string', 'example' => 'ecs.hfg6', 'title' => ''], 'Generation' => ['description' => 'The generation of the instance family.', 'type' => 'string', 'example' => 'ecs-4', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RecommendEmpty.InstanceTypeNotAuthorized', 'errorMessage' => 'The recommend instanceTypes are not authorized.', 'description' => 'No instance types can be recommended because no appropriate alternative instance types are available in the specified region or zone.'], ['errorCode' => 'RecommendEmpty.InstanceTypeSoldOut', 'errorMessage' => 'The recommend instanceTypes are out of usage.', 'description' => 'No instance types can be recommended because the specified instance type is sold out and no appropriate alternative instance types are available within the specified region or zone.'], ['errorCode' => 'RecommendEmpty.DiskCategoryNotRecommended', 'errorMessage' => 'The specified disk category is not available for recommended.', 'description' => 'The specified disk category is out of stock.'], ['errorCode' => 'InvalidNetworkType.ValueNotSupported', 'errorMessage' => 'The specified parameter NetworkType is not valid.', 'description' => ''], ['errorCode' => 'InvalidSpotStrategy.ValueNotSupported', 'errorMessage' => 'The specified parameter SpotStrategy is not valid.', 'description' => ''], ['errorCode' => 'InvalidInstanceChargeType.NotFound', 'errorMessage' => 'The specified parameter InstanceChargeType is not valid.', 'description' => ''], ['errorCode' => 'InvalidPriorityStrategy.ValueNotSupported', 'errorMessage' => 'The specified parameter PriorityStrategy is not supported.', 'description' => ''], ['errorCode' => 'InvalidParam.TypeAndCpuMem.Conflict', 'errorMessage' => 'The specified parameters InstanceType and Cores,Memory should not be blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidIoOptimized.NotFound', 'errorMessage' => 'The specified parameter IoOptimized is not valid.', 'description' => 'The specified IO optimization parameter IoOptimized is invalid.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidDiskCategory.NotFound', 'errorMessage' => 'The specified parameter SystemDiskCategory is not supported.', 'description' => 'The specified disk type DiskCategory not supported.'], ['errorCode' => 'InvalidInstanceTypeFamily.NotFound', 'errorMessage' => 'The specified InstanceTypeFamily is not valid.', 'description' => ''], ['errorCode' => 'InvalidMaxPrice.NotSupported', 'errorMessage' => 'The specified MaxPrice is not valid.', 'description' => 'The specified MaxPrice parameter is invalid. This parameter takes effect only for Spot instances and must be set to a value greater than 0.'], ['errorCode' => 'InvalidZoneId.MalFormed', 'errorMessage' => 'The specified ZoneId is not valid when Cores and Memory is not null.', 'description' => ''], ['errorCode' => 'InvalidInstanceType.NotSupported', 'errorMessage' => 'The specified InstanceType is not valid.', 'description' => ''], ['errorCode' => 'InvalidZoneId.ValueNotSupported', 'errorMessage' => 'The specified ZoneId is not valid.', 'description' => 'The specified ZoneId parameter is invalid.'], ['errorCode' => 'InvalidCoreAndMemory.ValueNotSupported', 'errorMessage' => 'The specified Cores/Memory does not match instance type.', 'description' => 'The specified number of CPU cores and memory configuration do not match the specified specification (family).'], ['errorCode' => 'QuotaExceed.AfterpayInstance', 'errorMessage' => 'Living afterpay instances quota exceeded.', 'description' => 'The maximum number of pay-as-you-go instances has been reached.'], ['errorCode' => 'RecommendEmpty.PerformanceNotSatisfied', 'errorMessage' => 'The performance of recommend instanceType is not satisfied.', 'description' => ''], ['errorCode' => 'RecommendEmpty.PriceNotSatisfied', 'errorMessage' => 'The current price of recommend instanceTypes above user max price.', 'description' => 'No instance types can be recommended because no instance types that meet the price requirements are available within the specified region or zone.'], ['errorCode' => 'RecommendEmpty.QuotaNotSatisfied', 'errorMessage' => 'The quota of recommend instanceTypes are out of usage.', 'description' => 'No instance types can be recommended because none are available within the specified region or zone due to limited quotas.'], ['errorCode' => 'RecommendEmpty.IzNotMatched', 'errorMessage' => 'The iz of recommend instanceTypes are not match.', 'description' => ''], ['errorCode' => 'RecommendEmpty.InstanceTypeNotMatched', 'errorMessage' => 'The recommend instanceTypes are not match.', 'description' => ''], ['errorCode' => 'InvalidScene.ValueNotSupported', 'errorMessage' => 'The specified Scene is invalid.', 'description' => ''], ['errorCode' => 'RecommendEmpty.InstanceTypeFamilyNotMatched', 'errorMessage' => 'The recommend instanceTypeFamily are not match.', 'description' => 'No instance types can be recommended because no instance types that meet the requirements for the array of instance types are available within the specified region or zone.'], ['errorCode' => 'RecommendEmpty.GenerationNotMatch', 'errorMessage' => 'The recommend instanceType generation are not match.', 'description' => ''], ['errorCode' => 'RecommendEmpty.NetworkTypeNotSupported', 'errorMessage' => 'The recommend instanceType networkType are not match.', 'description' => ''], ['errorCode' => 'InvalidInstanceFamilyLevel.NotSupported', 'errorMessage' => 'The specified InstanceFamilyLevel is not valid.', 'description' => 'The specified InstanceFamilyLevel parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Data\\": {\\n \\"RecommendInstanceType\\": [\\n {\\n \\"CommodityCode\\": \\"ecs\\",\\n \\"ZoneId\\": \\"cn-hangzhou-h\\",\\n \\"Priority\\": 2,\\n \\"NetworkType\\": \\"vpc\\",\\n \\"Scene\\": \\"CREATE\\",\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"InstanceChargeType\\": \\"PostPaid\\",\\n \\"Zones\\": {\\n \\"zone\\": [\\n {\\n \\"ZoneNo\\": \\"cn-hangzhou-h\\",\\n \\"NetworkTypes\\": {\\n \\"NetworkType\\": [\\n \\"vpc\\"\\n ]\\n }\\n }\\n ]\\n },\\n \\"InstanceType\\": {\\n \\"SupportIoOptimized\\": \\"optimized\\",\\n \\"Cores\\": 1,\\n \\"Memory\\": 8192,\\n \\"InstanceType\\": \\"ecs.hfg6.large\\",\\n \\"InstanceTypeFamily\\": \\"ecs.hfg6\\",\\n \\"Generation\\": \\"ecs-4\\"\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query alternative instance types', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-12-07T03:34:57.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '100', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRecommendInstanceType'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], ], 'DescribeRegions' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28984', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the instance. For more information, see [Billing overview](~~25398~~).'."\n" .'Valid values:'."\n" ."\n" .'- PrePaid: subscription. If you set this parameter to PrePaid, make sure that you have sufficient balance or credits in your account. Otherwise, the InvalidPayMethod error code is returned.'."\n" ."\n" .'- PostPaid: pay-as-you-go.'."\n" .' SpotWithPriceLimit: spot instance for which a maximum hourly price is specified.'."\n" ."\n" .'- SpotAsPriceGo: spot instance for which the market price at the time of purchase is automatically used as the bid price. The market price can be up to the pay-as-you-go price.'."\n" ."\n" .'Default value: PostPaid.', 'type' => 'string', 'required' => false, 'example' => 'PrePaid', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of resource. Valid values:'."\n" ."\n" .'- instance: Elastic Compute Service (ECS) instance'."\n" ."\n" .'- disk: disk'."\n" ."\n" .'- reservedinstance: reserved instance'."\n" ."\n" .'- scu: storage capacity unit (SCU)'."\n" ."\n" .'Default value: instance.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'AcceptLanguage', 'in' => 'query', 'schema' => [ 'description' => 'The natural language that is used to filter responses. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231). Valid values:'."\n" ."\n" .'- zh-CN: Simplified Chinese'."\n" ."\n" .'- zh\\_TW: Traditional Chinese'."\n" ."\n" .'- en-US: English'."\n" ."\n" .'- ja: Japanese'."\n" ."\n" .'- fr: French'."\n" ."\n" .'- de: German'."\n" ."\n" .'- ko: Korean'."\n" ."\n" .'Default value: zh-CN.', 'enumValueTitles' => ['de' => 'German', 'en-US' => 'English', 'ko' => 'Korean', 'zh-TW' => 'Traditional Chinese', 'ja' => 'Japanese', 'fr' => 'French', 'zh-CN' => 'Simplified Chinese'], 'type' => 'string', 'required' => false, 'example' => 'zh-CN', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'Regions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Region' => [ 'description' => 'The information of the regions.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'Indicates whether clusters are sold out.'."\n" .'Valid values:'."\n" ."\n" .'- available'."\n" ."\n" .'- soldOut', 'type' => 'string', 'example' => 'available', 'title' => ''], 'RegionEndpoint' => ['description' => 'The endpoint of the region.', 'type' => 'string', 'example' => 'ecs.cn-qingdao.aliyuncs.com', 'title' => ''], 'LocalName' => ['description' => 'The name of the region.', 'type' => 'string', 'example' => '华北1(青岛)', 'title' => ''], 'RegionId' => ['description' => 'The ID of the region.', 'type' => 'string', 'example' => 'cn-qingdao', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'Unauthorized.EmptyRegion', 'errorMessage' => 'The specified account has no access authority to any region.', 'description' => ''], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The specified instanceChargeType is not valid.', 'description' => ''], ], [ ['errorCode' => 'InvalidAcceptLanguage.NotFound', 'errorMessage' => 'Only Chinese (zh-CN), English (en-US), and Japanese (ja) are allowed.', 'description' => 'Your selected language is invalid. Only Chinese, English, and Japanese are supported.'], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => 'The specified resource type does not exist.'], ], ], 'title' => 'DescribeRegions', 'summary' => 'Queries Alibaba Cloud regions. When you call this operation, you can specify parameters, such as InstanceChargeType and ResourceType, in the request.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRegions'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"Status\\": \\"available\\",\\n \\"RegionEndpoint\\": \\"ecs.cn-qingdao.aliyuncs.com\\",\\n \\"LocalName\\": \\"华北1(青岛)\\",\\n \\"RegionId\\": \\"cn-qingdao\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeRenewalPrice' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28985', 'abilityTreeNodes' => ['FEATUREecsSX5FCF'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of the resource whose renewal price you want to query. Valid values: instance.'."\n" ."\n" .'Default value: instance.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource whose renewal price you want to query. When `ResourceType` is set to `instance`, `ResourceId` is equivalent to `InstanceId`.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1f2o4ldh8l29zv****', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The renewal duration. Valid values:'."\n" ."\n" .'- When `PriceUnit` is set to `Month`: 1 to 9.'."\n" .'- When `PriceUnit` is set to `Year`: 1 to 3.'."\n" ."\n" .'Default value: 1.'."\n" ."\n" .'> The renewal duration parameters (`Period` and `PeriodUnit`) and the unified expiration date parameter (`ExpectedRenewDay`) cannot be set at the same time.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PriceUnit', 'in' => 'query', 'schema' => ['description' => 'The unit of the renewal duration. Valid values:'."\n" ."\n" .'- Month: the renewal duration is measured in months.'."\n" .'- Year: the renewal duration is measured in years.'."\n" ."\n" .'Default value: Month.', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], ], [ 'name' => 'ExpectedRenewDay', 'in' => 'query', 'schema' => ['description' => 'The unified expiration date. After you specify this parameter, the price for renewing the instance to the unified expiration date is returned. Valid values: 1 to 28.'."\n" ."\n" .'For more information about the unified expiration date feature, see [Settings for instance expires](~~108486~~).'."\n" ."\n" .'> The renewal duration parameters (`Period` and `PeriodUnit`) and the unified expiration date parameter (`ExpectedRenewDay`) cannot be set at the same time.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'PriceInfo' => [ 'description' => 'The price information, including the price and discount rule details.', 'type' => 'object', 'properties' => [ 'Rules' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Rule' => [ 'description' => 'The promotion rule.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description of the promotion rule.', 'type' => 'string', 'example' => '买满1年,立享官网价格8.5折优惠。', 'title' => ''], 'RuleId' => ['description' => 'The promotion ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Price' => [ 'description' => 'The price.', 'type' => 'object', 'properties' => [ 'OriginalPrice' => ['description' => 'The original price.', 'type' => 'number', 'format' => 'float', 'example' => '4368', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount.', 'type' => 'number', 'format' => 'float', 'example' => '655.2', 'title' => ''], 'Currency' => ['description' => 'The currency unit.'."\n" ."\n" .'China site: CNY.'."\n" ."\n" .'International site: USD.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'TradePrice' => ['description' => 'The transaction price, which is equal to the original price minus the discount.', 'type' => 'number', 'format' => 'float', 'example' => '3712.8', 'title' => ''], 'DetailInfos' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DetailInfo' => [ 'description' => 'The resource pricing details.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Resource' => ['description' => 'The name of the resource that corresponds to the price.', 'type' => 'string', 'example' => 'instance', 'title' => ''], 'OriginalPrice' => ['description' => 'The original price.', 'type' => 'number', 'format' => 'float', 'example' => '4368', 'title' => ''], 'DiscountPrice' => ['description' => 'The discount price.', 'type' => 'number', 'format' => 'float', 'example' => '655.2', 'title' => ''], 'TradePrice' => ['description' => 'The transaction price.', 'type' => 'number', 'format' => 'float', 'example' => '3712.8', 'title' => ''], 'SubRules' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Rule' => [ 'description' => 'The subset of pricing rules.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Description' => ['description' => 'The description of the pricing rule.', 'type' => 'string', 'example' => '买满1年,立享官网价格8.5折优惠。', 'title' => ''], 'RuleId' => ['description' => 'The ID of the pricing rule.', 'type' => 'integer', 'format' => 'int64', 'example' => '1234567890', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'RelatedPrice' => [ 'type' => 'object', 'properties' => [ 'MarketplaceImagePrice' => [ 'type' => 'object', 'properties' => [ 'Currency' => ['type' => 'string', 'example' => 'CNY', 'description' => '', 'title' => ''], 'OriginalPrice' => ['type' => 'number', 'format' => 'float', 'example' => '200', 'description' => '', 'title' => ''], 'DiscountPrice' => ['type' => 'number', 'format' => 'float', 'example' => '0', 'description' => '', 'title' => ''], 'TradePrice' => ['type' => 'number', 'format' => 'float', 'example' => '200', 'description' => '', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidResourceType.ValueNotSupported', 'errorMessage' => 'The specified parameter ResourceType is not valid.', 'description' => 'The specified resource type is not supported.'], ['errorCode' => 'InvalidPeriod', 'errorMessage' => 'The specified period is not valid.', 'description' => 'The specified period is invalid.'], ['errorCode' => 'InvalidPriceUnit.ValueNotSupported', 'errorMessage' => 'The specified parameter PriceUnit is not valid.', 'description' => 'The specified PriceUnit parameter is invalid.'], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ['errorCode' => 'Throttling.User', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => 'An internal error has occurred. Try again later. '], ['errorCode' => 'InvalidPeriod.ExceededMaximumExpirationDate', 'errorMessage' => 'The specified renewal period cannot exceed the maximum expiration date. We recommend you try shortening the renewal period at next attempt.', 'description' => 'The specified renewal period exceeds the maximum allowed value. We recommend that you shorten the renewal period at your next attempt.'], ['errorCode' => 'InvalidExpectedRenewDay.Conflict', 'errorMessage' => 'The specified expectedRenewDay is in conflict with period.', 'description' => ''], ['errorCode' => 'InvalidExpectedRenewDay.ValueNotSupported', 'errorMessage' => 'The specified parameter ExpectedRenewDay is not valid.', 'description' => ''], ['errorCode' => 'InvalidPeriod.ExceededDedicatedHost', 'errorMessage' => 'Instance expired date can not exceed dedicated host expired date.', 'description' => 'The expiration date of the instance is later than that of the dedicated host.'], ['errorCode' => 'OperationRestricted.Renewal', 'errorMessage' => 'The renewal operation has been restricted because the zone is closed. %s', 'description' => ''], ], 403 => [ ['errorCode' => 'ChargeTypeViolation', 'errorMessage' => 'The operation is not permitted due to charge type of the instance.', 'description' => ''], ['errorCode' => 'InvalidAction.Unauthorized', 'errorMessage' => 'The specified action is not valid.', 'description' => 'The specified operation is invalid.'], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ], ], 'title' => 'Query resource renewal price', 'summary' => 'Queries the renewal price of Elastic Compute Service (ECS) resources. Only subscription resources are supported.', 'description' => '- Only the price for renewing a subscription ECS instance for a specified duration or renewing it to a unified expiration date is supported.'."\n" .'- Note the following when you set the parameters:'."\n" .' - If you set only the required parameters, the price for renewing the instance for one month is returned by default.'."\n" .' - You cannot query the renewal duration price and the unified expiration date price at the same time. The renewal duration parameters (`Period` and `PeriodUnit`) and the unified expiration date parameter (`ExpectedRenewDay`) cannot be set at the same time.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-11-27T03:28:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-11-04T06:37:38.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-10-30T11:54:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-13T09:50:11.000Z', 'description' => 'Response parameters changed, Response parameters changed'], ['createdAt' => '2025-01-08T07:08:57.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRenewalPrice'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeRenewalPrice', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'DedicatedHost', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:ddh/{#ddhId}'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"PriceInfo\\": {\\n \\"Rules\\": {\\n \\"Rule\\": [\\n {\\n \\"Description\\": \\"买满1年,立享官网价格8.5折优惠。\\",\\n \\"RuleId\\": 1234567890\\n }\\n ]\\n },\\n \\"Price\\": {\\n \\"OriginalPrice\\": 4368,\\n \\"DiscountPrice\\": 655.2,\\n \\"Currency\\": \\"CNY\\",\\n \\"TradePrice\\": 3712.8,\\n \\"DetailInfos\\": {\\n \\"DetailInfo\\": [\\n {\\n \\"Resource\\": \\"instance\\",\\n \\"OriginalPrice\\": 4368,\\n \\"DiscountPrice\\": 655.2,\\n \\"TradePrice\\": 3712.8,\\n \\"SubRules\\": {\\n \\"Rule\\": [\\n {\\n \\"Description\\": \\"买满1年,立享官网价格8.5折优惠。\\",\\n \\"RuleId\\": 1234567890\\n }\\n ]\\n }\\n }\\n ]\\n }\\n },\\n \\"RelatedPrice\\": {\\n \\"MarketplaceImagePrice\\": {\\n \\"Currency\\": \\"CNY\\",\\n \\"OriginalPrice\\": 200,\\n \\"DiscountPrice\\": 0,\\n \\"TradePrice\\": 200\\n }\\n }\\n }\\n}","type":"json"}]', ], 'DescribeReservedInstanceAutoRenewAttribute' => [ 'summary' => 'Queries the auto-renewal attributes of one or more reserved instances, including the auto-renewal duration and auto-renewal status.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '156251', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the reserved instance.'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ReservedInstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of reserved instances.', 'type' => 'array', 'items' => ['description' => 'The ID of the reserved instance. You can call the [DescribeReservedInstances](~~100065~~) operation to query the IDs of reserved instances that you purchased.'."\n" ."\n" .'You can specify the IDs of up to 100 reserved instances in a single request.', 'type' => 'string', 'required' => false, 'example' => 'ecsri-ajdfaj****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '04F0F334-1335-436C-A1D7-6C044FE7****', 'title' => ''], 'ReservedInstanceRenewAttributes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ReservedInstanceRenewAttribute' => [ 'description' => 'Details about the auto-renewal settings of the reserved instances.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PeriodUnit' => ['description' => 'The unit of the auto-renewal duration.'."\n" ."\n" .'Valid values: Year and Month.', 'type' => 'string', 'example' => 'Month', 'title' => ''], 'Duration' => ['description' => 'The auto-renewal duration.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'ReservedInstanceId' => ['description' => 'The ID of the reserved instance.', 'type' => 'string', 'example' => 'ecsri-ajdfaj****', 'title' => ''], 'RenewalStatus' => ['description' => 'The auto-renewal status of the reserved instance. Valid values:'."\n" ."\n" .'- AutoRenewal: automatically renews the reserved instance.'."\n" ."\n" .'- Normal: manually renews the reserved instances.', 'type' => 'string', 'example' => 'AutoRenewal', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'ChargeTypeViolation', 'errorMessage' => 'Pay-As-You-Go dedicated host do not support this operation.', 'description' => ''], ['errorCode' => 'MissingParamter.InstanceId', 'errorMessage' => 'ReservedInstanceId should not be null.', 'description' => ''], ['errorCode' => 'InvalidParameter.ToManyInstanceIds', 'errorMessage' => 'ReservedInstanceId should be less than 100.', 'description' => ''], ['errorCode' => 'InValidParameter', 'errorMessage' => 'Parameter invalid.%s', 'description' => ''], ['errorCode' => 'ResourceStatusViolation', 'errorMessage' => 'The operation is not permitted due to resource status of the instance.', 'description' => ''], ], ], 'title' => 'DescribeReservedInstanceAutoRenewAttribute', 'changeSet' => [ ['createdAt' => '2025-12-08T08:52:15.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-26T12:26:51.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeReservedInstanceAutoRenewAttribute'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeReservedInstanceAutoRenewAttribute', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'ReservedInstance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:reservedinstance/{#ReservedInstanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE7****\\",\\n \\"ReservedInstanceRenewAttributes\\": {\\n \\"ReservedInstanceRenewAttribute\\": [\\n {\\n \\"PeriodUnit\\": \\"Month\\",\\n \\"Duration\\": 1,\\n \\"ReservedInstanceId\\": \\"ecsri-ajdfaj****\\",\\n \\"RenewalStatus\\": \\"AutoRenewal\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeReservedInstances' => [ 'summary' => 'Queries the details of reserved instances that you have purchased in a specific region. You can query the details of reserved instances based on parameters, such as tags and reserved instance attributes.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '29291', 'abilityTreeNodes' => ['FEATUREecsMCS2C4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the reserved instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '50', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the reserved instance. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'Tag N of the reserved instance.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the reserved instance. The tag key cannot be empty and can be up to 128 characters in length. It cannot start with aliyun or acs: and cannot contain http\\:// or https\\://.'."\n" ."\n" .'> If you specify a single tag to query resources, up to 1,000 resources to which the tag is added are returned. If you specify multiple tags to query resources, up to 1,000 resources to which all specified tags are added are returned. To query more than 1,000 resources that have specified tags added, call the [ListTagResources](~~110425~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the reserved instance. The tag value cannot be empty and can be up to 128 characters in length. It cannot start with `acs:` and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the reserved instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the reserved instance. This parameter is valid and required if you set Scope to Zone. You can call the [DescribeZones](~~25610~~) operation to query the most recent zone list.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-z', 'title' => ''], ], [ 'name' => 'ReservedInstanceName', 'in' => 'query', 'schema' => ['description' => 'The name of the reserved instance.'."\n" ."\n" .'> Only exact search is supported.', 'type' => 'string', 'required' => false, 'example' => 'testReservedInstanceName', 'title' => ''], ], [ 'name' => 'LockReason', 'in' => 'query', 'schema' => ['description' => 'The reason why the reserved instance is locked. Valid values:'."\n" ."\n" .'- financial: The reserved instance is locked because the account has overdue payments or the service expires.'."\n" ."\n" .'- security: The reserved instance is locked due to security reasons.', 'type' => 'string', 'required' => false, 'example' => 'security', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type of the reserved instance. For information about the valid values, see [Overview of instance families](~~25378~~).'."\n" ."\n" .'> Specify the instance type that you selected when you purchased the reserved instance. If the reserved instance is a regional reserved instance, it can be used to offset the bills of instance types that belong to the same instance family as the specified instance type, regardless of instance specifications.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5.large', 'title' => ''], ], [ 'name' => 'InstanceTypeFamily', 'in' => 'query', 'schema' => ['description' => 'The instance family of the reserved instance. For information about the valid values, see [Overview of instance families](~~25378~~).', 'type' => 'string', 'required' => false, 'example' => 'ecs.g5', 'title' => ''], ], [ 'name' => 'Scope', 'in' => 'query', 'schema' => ['description' => 'The scope level of the reserved instance. Valid values:'."\n" ."\n" .'- Region: regional'."\n" ."\n" .'- Zone: zonal', 'type' => 'string', 'required' => false, 'example' => 'Region', 'title' => ''], ], [ 'name' => 'OfferingType', 'in' => 'query', 'schema' => ['description' => 'The payment option of the reserved instance. Valid values:'."\n" ."\n" .'- No Upfront'."\n" ."\n" .'- Partial Upfront'."\n" ."\n" .'- All Upfront', 'type' => 'string', 'required' => false, 'example' => 'All Upfront', 'title' => ''], ], [ 'name' => 'AllocationType', 'in' => 'query', 'schema' => ['description' => 'The allocation type of the reserved instances. Valid values:'."\n" ."\n" .'- Normal: queries all reserved instances that belong to the current account.'."\n" ."\n" .'- Shared: queries the reserved instances that are shared between the current main account and linked accounts.'."\n" ."\n" .'Default value: Normal.', 'type' => 'string', 'required' => false, 'example' => 'Normal', 'title' => ''], ], [ 'name' => 'ReservedInstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of reserved instances. You can specify up to 100 IDs of reserved instances.', 'type' => 'array', 'items' => ['description' => 'The ID of reserved instance N.', 'type' => 'string', 'required' => false, 'example' => 'ri-bpzhex2ulpzf53****', 'title' => ''], 'required' => false, 'example' => 'ri-bpzhex2ulpzf53****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'Status', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The status of the reserved instances.', 'type' => 'array', 'items' => ['description' => 'The status of reserved instance N. Valid values:'."\n" ."\n" .'- Creating: The reserved instance is being created.'."\n" ."\n" .'- Active: The reserved instance is active.'."\n" ."\n" .'- Retired: The reserved instance expired.'."\n" ."\n" .'- Updating: The attributes of the reserved instance are being modified.'."\n" ."\n" .'- Expired: The reserved instance has expired. The reserved instance becomes invalid immediately after it expires. This value is currently obsolete and will be removed in the future.', 'type' => 'string', 'required' => false, 'example' => 'Active', 'title' => ''], 'required' => false, 'example' => 'Active', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'E572643C-6A29-49D6-9D4E-6CFA4E063A3E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of reserved instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'ReservedInstances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ReservedInstance' => [ 'description' => 'Details about the reserved instances.', 'type' => 'array', 'items' => [ 'description' => 'Details about the reserved instance.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status.', 'type' => 'string', 'example' => 'Active', 'title' => ''], 'CreationTime' => ['description' => 'The creation time.', 'type' => 'string', 'example' => '2018-12-10T12:07Z', 'title' => ''], 'ReservedInstanceName' => ['description' => 'The name.', 'type' => 'string', 'example' => 'riZbpzhex2ulpzf53****', 'title' => ''], 'ReservedInstanceId' => ['description' => 'The reserved instance ID.', 'type' => 'string', 'example' => 'ri-bpzhex2ulpzf53****', 'title' => ''], 'InstanceType' => ['description' => 'The instance type of the pay-as-you-go instances that can be matched to the reserved instance.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'InstanceAmount' => ['description' => 'The number of pay-as-you-go instances that are of the same instance type as the reserved instance and can be matched to the reserved instance.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'OfferingType' => ['description' => 'The payment option.', 'type' => 'string', 'example' => 'All Upfront', 'title' => ''], 'StartTime' => ['description' => 'The effective time.', 'type' => 'string', 'example' => '2018-12-10T12:00Z', 'title' => ''], 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'AllocationStatus' => ['description' => 'Indicates the sharing status of the reserved instance when the AllocationType parameter is set to Shared. Valid values:'."\n" ."\n" .'- allocated: The reserved instance is allocated to another account.'."\n" ."\n" .'- beAllocated: The reserved instance is allocated by another account.', 'type' => 'string', 'example' => 'allocated', 'title' => ''], 'ExpiredTime' => ['description' => 'The expiration time.', 'type' => 'string', 'example' => '2019-12-10T12:07Z', 'title' => ''], 'ResourceGroupId' => ['description' => 'The resource group ID.', 'type' => 'string', 'example' => 'EcsDocTest', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-z', 'title' => ''], 'Platform' => ['description' => 'The operating system of the image used by the instance. Valid values:'."\n" ."\n" .'- Windows'."\n" ."\n" .'- Linux', 'type' => 'string', 'example' => 'Linux', 'title' => ''], 'Scope' => ['description' => 'The scope.', 'type' => 'string', 'example' => 'region', 'title' => ''], 'OperationLocks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'OperationLock' => [ 'description' => 'Details about the lock status of the reserved instance.', 'type' => 'array', 'items' => [ 'description' => 'Details about the lock status of the reserved instance.', 'type' => 'object', 'properties' => [ 'LockReason' => ['description' => 'The reason why the instance is locked.', 'type' => 'string', 'example' => 'security', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the reserved instance.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the reserved instance.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParamter.RegionId', 'errorMessage' => 'The regionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidRegion.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidZone.NotFound', 'errorMessage' => 'The specified parameter ZoneId is not valid.', 'description' => 'The specified ZoneId parameter is invalid.'], ['errorCode' => 'InvalidReservedInstanceOfferingType.ValueNotSupported', 'errorMessage' => 'the OfferingType is not supported', 'description' => ''], ['errorCode' => 'InvalidReservedInstanceOfferingClass.ValueNotSupported', 'errorMessage' => 'the OfferingClass is not supported', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified InstanceType or Zone is not authorized for current user.', 'description' => ''], ['errorCode' => 'InvalidEndTime.ValueNotSupported', 'errorMessage' => 'The specified endTime is out of the permitted range.', 'description' => 'The specified end time is invalid.'], ['errorCode' => 'InvalidReservedInstanceLockReason.ValueNotSupported', 'errorMessage' => 'The specified LockReason is not supported.', 'description' => ''], ['errorCode' => 'InvalidReservedInstanceStatus.ValueNotSupported', 'errorMessage' => 'The specified Status is not supported.', 'description' => ''], ['errorCode' => 'InvalidAllocationType.ValueNotSupported', 'errorMessage' => 'The specified AllocationType is not supported.', 'description' => 'The specified AllocationType parameter is invalid.'], ], 403 => [ ['errorCode' => 'RAM.ApiNotSupported', 'errorMessage' => 'This call is not supported from ram accessing.', 'description' => 'RAM users are not authorized to perform this operation.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist in our records.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], ], 'title' => 'DescribeReservedInstances', 'description' => '### [](#)Scenarios'."\n" ."\n" .'- Query all reserved instances in a specific region.'."\n" ."\n" .'- Query the details of a reserved instance based on the ID or name.'."\n" ."\n" .'- Query your purchased reserved instances based on the instance type or instance family.'."\n" ."\n" .'- Query your purchased reserved instances based on the scope or status of reserved instances.'."\n" ."\n" .'### [](#)Sample requests'."\n" ."\n" .'**Example: Query all purchased reserved instances in the China (Hangzhou) region**'."\n" ."\n" .'```'."\n" .'"RegionId":"cn-hangzhou", //The ID of the region.'."\n" .'```'."\n" ."\n" .'**Example: Query the details of the reserved instance whose ID is ecsri-bp129enntoynwwj5\\*\\*\\*\\* in the China (Hangzhou) region**'."\n" ."\n" .'```'."\n" .'"RegionId":"cn-hangzhou", //The ID of the region."ReservedInstanceId":"ecsri-bp129enntoynwwj5****" //The ID of the reserved instance.'."\n" .'```'."\n" ."\n" .'**Example: Query the reserved instances that can be used to offset the bills of ecs.c5.2xlarge instances in the China (Hangzhou) region**'."\n" ."\n" .'```'."\n" .'"RegionId":"cn-hangzhou", //The ID of the region."InstanceType":"ecs.c5.2xlarge", //The instance type.'."\n" .'```'."\n" ."\n" .'**Example: Query the regional reserved instances that are within the validity period in the China (Hangzhou) region**'."\n" ."\n" .'```'."\n" .'"RegionId":"cn-hangzhou", //The ID of the region."Scope":"Region", //Set the scope of the reserved instance to regional."Status":["Active"] //Set the status to Active, which indicates that the reserved instance is within the validity period.'."\n" .'```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-12-26T12:26:50.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeReservedInstances'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeReservedInstances', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'ReservedInstance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:reservedinstance/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'ReservedInstance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:reservedinstance/{#reservedinstanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 1,\\n \\"RequestId\\": \\"E572643C-6A29-49D6-9D4E-6CFA4E063A3E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"ReservedInstances\\": {\\n \\"ReservedInstance\\": [\\n {\\n \\"Status\\": \\"Active\\",\\n \\"CreationTime\\": \\"2018-12-10T12:07Z\\",\\n \\"ReservedInstanceName\\": \\"riZbpzhex2ulpzf53****\\",\\n \\"ReservedInstanceId\\": \\"ri-bpzhex2ulpzf53****\\",\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"InstanceAmount\\": 10,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"OfferingType\\": \\"All Upfront\\",\\n \\"StartTime\\": \\"2018-12-10T12:00Z\\",\\n \\"Description\\": \\"testDescription\\",\\n \\"AllocationStatus\\": \\"allocated\\",\\n \\"ExpiredTime\\": \\"2019-12-10T12:07Z\\",\\n \\"ResourceGroupId\\": \\"EcsDocTest\\",\\n \\"ZoneId\\": \\"cn-hangzhou-z\\",\\n \\"Platform\\": \\"Linux\\",\\n \\"Scope\\": \\"region\\",\\n \\"OperationLocks\\": {\\n \\"OperationLock\\": [\\n {\\n \\"LockReason\\": \\"security\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'manual', ], 'DescribeResourceByTags' => [ 'summary' => 'The DescribeResourceByTags operation retrieves resources by tag or resource type.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28987', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Maximum value: 100.'."\n" ."\n" .'Default value: 50.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '50', 'example' => '50', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return. The minimum value is 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- `instance`: ECS instance.'."\n" ."\n" .'- `disk`: disk.'."\n" ."\n" .'- `snapshot`: snapshot.'."\n" ."\n" .'- `image`: image.'."\n" ."\n" .'- `securitygroup`: security group.'."\n" ."\n" .'- `volume`: volume.'."\n" ."\n" .'- `eni`: elastic network interface.'."\n" ."\n" .'- `ddh`: dedicated host.'."\n" ."\n" .'- `keypair`: key pair.'."\n" ."\n" .'- `launchtemplate`: launch template.'."\n" ."\n" .'All values must be in lowercase.', 'type' => 'string', 'required' => false, 'example' => 'instance', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the resource is located. You can call [DescribeRegions](~~25609~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tag list.', 'type' => 'array', 'items' => [ 'description' => 'A tag object.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key.'."\n" ."\n" .'> For best compatibility, we recommend that you use the `Tag.N.Key` parameter.', 'type' => 'string', 'required' => false, 'example' => 'testkey', 'title' => ''], 'Key' => ['description' => 'The tag key.'."\n" ."\n" .'> For best compatibility, we recommend that you use the `Tag.N.Key` parameter.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value. An empty string is allowed. The value can be up to 128 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value. An empty string is allowed. The value can be up to 128 characters in length.', 'type' => 'string', 'required' => false, 'example' => 'testvalue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1C1E5359-71D7-44D8-8FAA-0327B549157X', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of resources.', 'type' => 'integer', 'format' => 'int32', 'example' => '8', 'title' => ''], 'Resources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Resource' => [ 'description' => 'The information about the resources to which the tags are added.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'instance', 'title' => ''], 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'i-bp16t2cgmiiy7t1c****', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => 'The specified resource type does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Tag::2018-08-28::ListResourcesByTag'], ], 'title' => 'DescribeResourceByTags', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeResourceByTags'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeResourceByTags', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1C1E5359-71D7-44D8-8FAA-0327B549157X\\",\\n \\"PageSize\\": 50,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 8,\\n \\"Resources\\": {\\n \\"Resource\\": [\\n {\\n \\"ResourceType\\": \\"instance\\",\\n \\"ResourceId\\": \\"i-bp16t2cgmiiy7t1c****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeResourcesModification' => [ 'summary' => 'Queries the inventory of instance types or system disk types in a zone before you change the instance type or system disk type of an instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '28988', 'abilityTreeNodes' => ['FEATUREecsY77CXF'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance whose configuration you want to change. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID (InstanceId) of the instance whose instance type or system disk type you want to change.', 'type' => 'string', 'required' => true, 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'MigrateAcrossZone', 'in' => 'query', 'schema' => ['description' => 'Specifies whether cross-cluster instance type changes are supported. Valid values: '."\n" .' '."\n" .'- true: Supported.'."\n" .'- false: Not supported.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'If the MigrateAcrossZone parameter is set to true and you upgrade or downgrade the Elastic Compute Service instance based on the returned information, take note of the following items: '."\n" .' '."\n" .'- VPC-type instances: For [retired instance types](~~55263~~), when a non-I/O optimized instance is changed to an I/O optimized instance, the disk device names and software authorization codes of the server are changed. For Linux instances, basic disks (cloud) are identified as xvda or xvdb. Ultra disks (cloud_efficiency) and standard SSDs (cloud_ssd) are identified as vda or vdb.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'DestinationResource', 'in' => 'query', 'schema' => ['description' => 'The type of the resource to be changed. Valid values: '."\n" .' '."\n" .'- InstanceType: instance type.'."\n" .'- SystemDisk: system disk type.'."\n" ."\n" .' If you set this parameter to SystemDisk, you must also specify the InstanceType parameter to indicate the disk type required by the target instance type.', 'type' => 'string', 'required' => true, 'example' => 'InstanceType', 'title' => ''], ], [ 'name' => 'OperationType', 'in' => 'query', 'schema' => ['description' => 'The type of the Upgrade/Downgrade operation.'."\n" ."\n" .'- Valid values for subscription resources: '."\n" ."\n" .' - Upgrade: upgrades resources.'."\n" .' - Downgrade: downgrades resources.'."\n" .' - RenewDowngrade: downgrades resources upon renewal.'."\n" .' - RenewModify: renewal with specification change for expired instances.'."\n" ."\n" .'- Valid value for pay-as-you-go resources: Upgrade.'."\n" ."\n" .'Default value: Upgrade.', 'type' => 'string', 'required' => false, 'example' => 'Upgrade', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The target instance type. For more information, see [Instance family](~~25378~~). You can also call [DescribeInstanceTypes](~~25620~~) to query the most recent instance type list.'."\n" ."\n" .'If DestinationResource is set to SystemDisk, you must also specify the InstanceType parameter to indicate the disk type required by the target instance type.', 'type' => 'string', 'required' => false, 'example' => 'ecs.g7.large', 'title' => ''], ], [ 'name' => 'Cores', 'in' => 'query', 'schema' => ['description' => 'The number of vCPU kernels of the target instance type. For valid values, see [Instance family](~~25378~~).'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to InstanceType.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'Memory', 'in' => 'query', 'schema' => ['description' => 'The memory size of the target instance type. Unit: GiB. For valid values, see [Instance family](~~25378~~).'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to InstanceType.', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '8.0', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the target zone.'."\n" ."\n" .'Specify this parameter when you want to change the instance type across zones.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-e', 'title' => ''], ], [ 'name' => 'Conditions', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of conditions.', 'type' => 'array', 'items' => [ 'description' => 'Only DiskCategory is supported, which indicates querying the instance types available after the disk type of the current instance is changed.'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to InstanceType.', 'type' => 'string', 'enum' => [], 'required' => false, 'example' => 'DiskCategory', 'title' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'AvailableZones' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableZone' => [ 'description' => 'The collection of AvailableZone objects that contain zone information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-e', 'title' => ''], 'Status' => ['description' => 'The resource status. Valid values: '."\n" .' '."\n" .'- Available: The resource is sufficient.'."\n" .'- SoldOut: The resource is sold out.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'StatusCategory' => ['description' => 'The resource category based on detailed inventory. Valid values:'."\n" ."\n" .'- WithStock: The inventory is sufficient.'."\n" .'- ClosedWithStock: The inventory is approaching the low watermark.'."\n" .'- WithoutStock: The inventory is depleted.', 'type' => 'string', 'example' => 'WithStock', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'AvailableResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableResource' => [ 'description' => 'The array of available resources that can be created.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Type' => ['description' => 'The resource type. Valid values: '."\n" .' '."\n" .'- InstanceType: instance type.'."\n" .'- SystemDisk: system disk type.', 'type' => 'string', 'example' => 'InstanceType', 'title' => ''], 'SupportedResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SupportedResource' => [ 'description' => 'The array of supported resources that can be created.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The resource status. Valid values:'."\n" .' '."\n" .'- Available: The resource is sufficient.'."\n" .'- SoldOut: The resource is sold out.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'Value' => ['description' => 'The resource value.', 'type' => 'string', 'example' => 'ecs.g7.large', 'title' => ''], 'Max' => ['description' => 'The maximum disk capacity.'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to SystemDisk.', 'type' => 'integer', 'format' => 'int32', 'example' => '2048', 'title' => ''], 'Unit' => ['description' => 'The unit of the disk capacity.'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to SystemDisk.', 'type' => 'string', 'example' => 'GiB', 'title' => ''], 'StatusCategory' => ['description' => 'The resource category based on detailed inventory. Valid values:'."\n" ."\n" .'- WithStock: The inventory is sufficient.'."\n" .'- ClosedWithStock: The inventory is approaching the low watermark.'."\n" .'- WithoutStock: The inventory is depleted.', 'type' => 'string', 'example' => 'WithStock', 'title' => ''], 'Min' => ['description' => 'The minimum disk capacity.'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to SystemDisk.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'ConditionSupportedResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ConditionSupportedResource' => [ 'description' => 'The list of conditionally supported resources that can be created.', 'type' => 'array', 'items' => [ 'description' => 'The conditionally supported resource that can be created. After the conditions are met, the current resource can be changed to a resource in this list.', 'type' => 'object', 'properties' => [ 'Conditions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Condition' => [ 'description' => 'The list of conditions.', 'type' => 'array', 'items' => [ 'description' => 'The list of conditions.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The condition name. Valid values:'."\n" ."\n" .'DiskCategory: the disk type does not meet the requirements.', 'type' => 'string', 'example' => 'DiskCategory', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Status' => ['description' => 'The inventory status of the resource. Valid values:'."\n" ."\n" .'- Available: The resource is sufficient.'."\n" .'- SoldOut: The resource is sold out.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'Value' => ['description' => 'The resource value.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'Max' => ['description' => 'The maximum disk capacity.'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to SystemDisk.', 'type' => 'integer', 'format' => 'int32', 'example' => '2048', 'title' => ''], 'Unit' => ['description' => 'The unit of the disk capacity.'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to SystemDisk.', 'type' => 'string', 'example' => 'GiB', 'title' => ''], 'StatusCategory' => ['description' => 'The resource category based on detailed inventory. Valid values:'."\n" ."\n" .'- WithStock: The inventory is sufficient.'."\n" .'- ClosedWithStock: The inventory is approaching the low watermark.'."\n" .'- WithoutStock: The inventory is depleted.', 'type' => 'string', 'example' => 'WithStock', 'title' => ''], 'Min' => ['description' => 'The minimum disk capacity.'."\n" ."\n" .'This parameter takes effect only when DestinationResource is set to SystemDisk.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Invalid.OperationType', 'errorMessage' => 'The specified operationType is not valid.', 'description' => 'The specified OperationType parameter is invalid.'], ['errorCode' => 'Invalid.Param', 'errorMessage' => 'The input parameter DestinationResource that is mandatory for processing this request is not supplied.', 'description' => 'The specified DestinationResource parameter is invalid.'], ['errorCode' => 'Invalid.InstanceChargeType', 'errorMessage' => 'The specified InstanceChargeType is not valid.', 'description' => 'The specified InstanceChargeType parameter is invalid.'], ['errorCode' => 'InvalidCondition.Malformed', 'errorMessage' => 'The specified Condition is not valid.', 'description' => ''], ], 403 => [ ['errorCode' => 'InvalidDedicatedHostId.NotFound', 'errorMessage' => 'The specified DedicatedHostId does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidParam.TypeAndCpuMem.Conflict', 'errorMessage' => 'The specified \'InstanceType\' and \'Cores\',\'Memory\' are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParam.Cores', 'errorMessage' => 'The specified parameter \'Cores\' should be empty.', 'description' => 'The specified parameter \'Cores\' should be empty.'], ['errorCode' => 'InvalidParam.Memory', 'errorMessage' => 'The specified parameter \'Memory\' should be empty.', 'description' => 'The specified parameter \'Memory\' should be empty.'], ['errorCode' => 'InvalidParameter.ResourceOwnerId', 'errorMessage' => 'The specified parameter ResourceOwnerId is not available anymore.', 'description' => ''], ], [ ['errorCode' => 'Invalid.RegionId', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'Unavailable.Regions', 'errorMessage' => 'The available regions does not exists.', 'description' => 'The available region does not exist.'], ['errorCode' => 'Invalid.ResourceType', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => 'The specified resource type is invalid.'], ['errorCode' => 'Invalid.DestinationResource', 'errorMessage' => 'The specified DestinationResource is not valid.', 'description' => 'The specified DestinationResource parameter is invalid.'], ['errorCode' => 'Invalid.IoOptimized', 'errorMessage' => 'The specified IoOptimized is not valid.', 'description' => 'The specified IoOptimized parameter is invalid.'], ['errorCode' => 'Invalid.NetworkCategory', 'errorMessage' => 'The specified NetworkCategory is not valid.', 'description' => 'The specified NetworkCategory parameter is invalid.'], ['errorCode' => 'Invalid.SpotStrategy', 'errorMessage' => 'The specified SpotStrategy is not valid.', 'description' => 'The specified SpotStrategy parameter is invalid.'], ['errorCode' => 'Invalid.ResourceId', 'errorMessage' => 'The specified ResourceId is not valid.', 'description' => 'The specified ResourceId parameter is invalid.'], ['errorCode' => 'Invalid.InstancePayType', 'errorMessage' => 'The specified InstancePayType is not valid.', 'description' => 'The specified InstanceChargeType parameter is invalid.'], ['errorCode' => 'Invalid.OperationType', 'errorMessage' => 'The specified OperationType is not valid.', 'description' => 'The specified parameter OperationType is invalid.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified operation is denied as this instanceType is not support.', 'description' => 'The instance type does not support this operation.'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId provided does not exist in our records.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceId is not found in our records.', 'description' => 'The specified resource does not exist. Check whether the resource ID is correct.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"AvailableZones\\": {\\n \\"AvailableZone\\": [\\n {\\n \\"ZoneId\\": \\"cn-hangzhou-e\\",\\n \\"Status\\": \\"Available\\",\\n \\"StatusCategory\\": \\"WithStock\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"AvailableResources\\": {\\n \\"AvailableResource\\": [\\n {\\n \\"Type\\": \\"InstanceType\\",\\n \\"SupportedResources\\": {\\n \\"SupportedResource\\": [\\n {\\n \\"Status\\": \\"Available\\",\\n \\"Value\\": \\"ecs.g7.large\\",\\n \\"Max\\": 2048,\\n \\"Unit\\": \\"GiB\\",\\n \\"StatusCategory\\": \\"WithStock\\",\\n \\"Min\\": 20\\n }\\n ]\\n },\\n \\"ConditionSupportedResources\\": {\\n \\"ConditionSupportedResource\\": [\\n {\\n \\"Conditions\\": {\\n \\"Condition\\": [\\n {\\n \\"Key\\": \\"DiskCategory\\"\\n }\\n ]\\n },\\n \\"Status\\": \\"Available\\",\\n \\"Value\\": \\"ecs.g5.large\\",\\n \\"Max\\": 2048,\\n \\"Unit\\": \\"GiB\\",\\n \\"StatusCategory\\": \\"WithStock\\",\\n \\"Min\\": 20\\n }\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query resource inventory before changing instance type or system disk type', 'description' => 'The following examples describe common change scenarios:'."\n" .'### Example 1: Query instance types to which the current instance can be changed'."\n" .'Query the instance types to which instance i-bp67acfmxazb4p**** can be changed, and the inventory of the corresponding instance types in the zone where the instance resides.'."\n" .'```'."\n" .'http(s)://ecs.aliyuncs.com/?Action=DescribeResourcesModification'."\n" .'&RegionId=ap-southeast-1'."\n" .'&ResourceId=i-bp67acfmxazb4p****'."\n" .'&DestinationResource=InstanceType'."\n" .'&OperationType=Upgrade'."\n" .'&Common request parameters'."\n" .'```'."\n" .'### Example 2: Query instance types available after changing the disk type of the current instance'."\n" .'Query the instance types to which instance i-bp67acfmxazb4p**** can be changed after the disk type is changed, and the inventory of the corresponding instance types in the zone where the instance resides.'."\n" .'```'."\n" .'http(s)://ecs.aliyuncs.com/?Action=DescribeResourcesModification'."\n" .'&RegionId=ap-southeast-1'."\n" .'&ResourceId=i-bp67acfmxazb4p****'."\n" .'&DestinationResource=InstanceType'."\n" .'&OperationType=Upgrade'."\n" .'&Conditions.0=DiskCategory'."\n" .'&Common request parameters'."\n" .'```'."\n" ."\n" .'### Example 3: Query the disk type required by the target instance type'."\n" .'Query the disk type required by the target instance type (for example, ecs.g7.large). The current instance i-bp67acfmxazb4p**** must be changed to this disk type before it can be changed to the target instance type. Also query the inventory of the disk type in the zone where the instance resides.'."\n" .'> The target instance type must be obtained by using Example 2.'."\n" .'```'."\n" .'http(s)://ecs.aliyuncs.com/?Action=DescribeResourcesModification'."\n" .'&RegionId=ap-southeast-1'."\n" .'&ResourceId=i-bp67acfmxazb4p****'."\n" .'&DestinationResource=SystemDisk'."\n" .'&OperationType=Upgrade'."\n" .'&InstanceType=ecs.g7.large'."\n" .'&Common request parameters'."\n" .'```', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-04-14T02:18:05.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2022-09-14T02:18:54.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2022-09-14T02:18:54.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeResourcesModification'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeResourcesModification', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'DescribeRouteTables' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'VRouterId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouteTableId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouterType', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouterId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'RouteTableName', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PageNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TotalCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'RouteTables' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RouteTable' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'VRouterId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RouteTableId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'ResourceGroupId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RouteTableType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RouteEntrys' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RouteEntry' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Type' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Status' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'NextHopType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'DestinationCidrBlock' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'InstanceId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RouteTableId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'NextHops' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'NextHop' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Weight' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'NextHopId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'NextHopType' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Enabled' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeRouteTableList'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRouteTables'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeRouteTables', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:VBR'], ['conditionKey' => 'vpc:VRouter'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouteTable', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routetable/{#RouteTableId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"RouteTables\\": {\\n \\"RouteTable\\": [\\n {\\n \\"CreationTime\\": \\"\\",\\n \\"VRouterId\\": \\"\\",\\n \\"RouteTableId\\": \\"\\",\\n \\"ResourceGroupId\\": \\"\\",\\n \\"RouteTableType\\": \\"\\",\\n \\"RouteEntrys\\": {\\n \\"RouteEntry\\": [\\n {\\n \\"Type\\": \\"\\",\\n \\"Status\\": \\"\\",\\n \\"NextHopType\\": \\"\\",\\n \\"DestinationCidrBlock\\": \\"\\",\\n \\"InstanceId\\": \\"\\",\\n \\"RouteTableId\\": \\"\\",\\n \\"NextHops\\": {\\n \\"NextHop\\": [\\n {\\n \\"Weight\\": 0,\\n \\"NextHopId\\": \\"\\",\\n \\"NextHopType\\": \\"\\",\\n \\"Enabled\\": 0\\n }\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeRouteTables', 'summary' => 'List route tables', ], 'DescribeRouterInterfaces' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. You can call the `DescribeRegions` operation to get the latest list of regions.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Page numbering starts from 1.'."\n" ."\n" .'Default: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'maxItems' => 5, 'description' => 'The filters.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The filter key. Supported values:'."\n" ."\n" .'- `RouterInterfaceId`: The ID of the router interface.'."\n" ."\n" .'- `RouterId`: The ID of the router that the router interface is attached to.'."\n" ."\n" .'- `RouterType`: The type of the router. Valid values: `VRouter` and `VBR`.'."\n" ."\n" .'- `Status`: The status of the router interface.'."\n" ."\n" .'- `Name`: The name of the router interface.'."\n" ."\n" .'- `Role`: The role of the router interface. Valid values: `InitiatingSide` and `AcceptingSide`.', 'type' => 'string', 'title' => '', 'example' => ''], 'Value' => [ 'maxItems' => 5, 'description' => 'The values for the filter key. You can specify a maximum of 20 values.', 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'required' => false, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RouterInterfaceSet' => [ 'itemNode' => true, 'description' => 'Details of the router interfaces.', 'type' => 'object', 'properties' => [ 'RouterInterfaceType' => [ 'description' => 'An array of router interfaces.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'HealthCheckTargetIp' => ['description' => 'The target IP address for the health check.', 'type' => 'string', 'title' => '', 'example' => ''], 'CreationTime' => ['description' => 'The time when the router interface was created. The time is in UTC and is formatted as `YYYY-MM-DDThh:mm:ssZ`.', 'type' => 'string', 'title' => '', 'example' => ''], 'Status' => ['description' => 'The status of the router interface. Valid values:'."\n" ."\n" .'- `Idle`'."\n" .'- `Activating`'."\n" .'- `Active`'."\n" .'- `Deactivating`'."\n" .'- `Inactive`'."\n" .'- `Deleting`', 'type' => 'string', 'title' => '', 'example' => ''], 'Spec' => ['description' => 'The specification of the router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeInterfaceId' => ['description' => 'The ID of the opposite router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'RouterInterfaceId' => ['description' => 'The ID of the router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'ChargeType' => ['description' => 'The billing method of the router interface. Valid values:'."\n" ."\n" .'- **PostPaid**: pay-as-you-go'."\n" .'- **PrePaid**: subscription', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeRouterType' => ['description' => 'The type of the opposite router. Valid values:'."\n" ."\n" .'- `VRouter`'."\n" .'- `VBR`', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeInterfaceOwnerId' => ['description' => 'The ID of the account that owns the opposite router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'Description' => ['description' => 'The description of the router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'Name' => ['description' => 'The name of the router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeRouterId' => ['description' => 'The ID of the opposite router.', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeInterfaceSpec' => ['description' => 'The specification of the opposite router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'RouterId' => ['description' => 'The ID of the router to which the router interface belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeInterfaceBusinessStatus' => ['description' => 'The business status of the opposite router interface. Valid values:'."\n" ."\n" .'- `Normal`'."\n" .'- `FinancialLocked`'."\n" .'- `SecurityLocked`', 'type' => 'string', 'title' => '', 'example' => ''], 'ConnectedTime' => ['description' => 'The time when the connection was established. The time is in UTC and is formatted as `YYYY-MM-DDThh:mm:ssZ`.', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeInterfaceStatus' => ['description' => 'The status of the opposite router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'HealthCheckSourceIp' => ['description' => 'The source IP address for the health check.', 'type' => 'string', 'title' => '', 'example' => ''], 'EndTime' => ['description' => 'The expiration time of the subscription-based router interface. This parameter is returned only if `ChargeType` is set to `PrePaid`. The time is in UTC and is formatted as `YYYY-MM-DDThh:mm:ssZ`.', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeRegionId' => ['description' => 'The region ID of the opposite router interface.', 'type' => 'string', 'title' => '', 'example' => ''], 'OppositeAccessPointId' => ['description' => 'The ID of the opposite access point.', 'type' => 'string', 'title' => '', 'example' => ''], 'BusinessStatus' => ['description' => 'The business status of the router interface. Valid values:'."\n" ."\n" .'- `Normal`'."\n" .'- `FinancialLocked`'."\n" .'- `SecurityLocked`', 'type' => 'string', 'title' => '', 'example' => ''], 'Role' => ['description' => 'The role of the router interface in the connection. Valid values:'."\n" ."\n" .'- `InitiatingSide`: initiator'."\n" .'- `AcceptingSide`: acceptor', 'type' => 'string', 'title' => '', 'example' => ''], 'RouterType' => ['description' => 'The type of the router to which the router interface belongs. Valid values:'."\n" ."\n" .'- `VRouter`'."\n" .'- `VBR`', 'type' => 'string', 'title' => '', 'example' => ''], 'AccessPointId' => ['description' => 'The ID of the access point.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParam.NotNull', 'errorMessage' => 'The parameter must not be null.', 'description' => 'The parameter is required.'], ['errorCode' => 'IllegalParam.AliUid', 'errorMessage' => 'Specified value of aliuid invalid.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidFilterKey.ValueNotSupported', 'errorMessage' => 'Specified filter key is not supported: Filter.X.key', 'description' => ''], ['errorCode' => 'InvalidOppositeRegionId.NotFound', 'errorMessage' => 'The oppositeRegionId provided does not exist in our records.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeRouterInterfaces'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeRouterInterfaces'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeRouterInterfaces', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'RouterInterface', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:routerinterface/{#RouterInterfaceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"PageSize\\": 0,\\n \\"TotalCount\\": 0,\\n \\"RouterInterfaceSet\\": {\\n \\"RouterInterfaceType\\": [\\n {\\n \\"HealthCheckTargetIp\\": \\"\\",\\n \\"CreationTime\\": \\"\\",\\n \\"Status\\": \\"\\",\\n \\"Spec\\": \\"\\",\\n \\"OppositeInterfaceId\\": \\"\\",\\n \\"RouterInterfaceId\\": \\"\\",\\n \\"ChargeType\\": \\"\\",\\n \\"OppositeRouterType\\": \\"\\",\\n \\"OppositeInterfaceOwnerId\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"OppositeRouterId\\": \\"\\",\\n \\"OppositeInterfaceSpec\\": \\"\\",\\n \\"RouterId\\": \\"\\",\\n \\"OppositeInterfaceBusinessStatus\\": \\"\\",\\n \\"ConnectedTime\\": \\"\\",\\n \\"OppositeInterfaceStatus\\": \\"\\",\\n \\"HealthCheckSourceIp\\": \\"\\",\\n \\"EndTime\\": \\"\\",\\n \\"OppositeRegionId\\": \\"\\",\\n \\"OppositeAccessPointId\\": \\"\\",\\n \\"BusinessStatus\\": \\"\\",\\n \\"Role\\": \\"\\",\\n \\"RouterType\\": \\"\\",\\n \\"AccessPointId\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeRouterInterfaces', 'summary' => 'DescribeRouterInterfaces', ], 'DescribeSecurityGroupAttribute' => [ 'summary' => 'Queries the details of a specified security group, including the list of security group rules.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28991', 'abilityTreeNodes' => ['FEATUREecsJPHSJM'], ], 'parameters' => [ [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => true, 'example' => 'sg-bp1gxw6bznjjvhu3****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NicType', 'in' => 'query', 'schema' => ['description' => 'The network type of the security group rule.'."\n" ."\n" .'- For security groups in a VPC, the only valid value is intranet (default), which indicates internal network.'."\n" .' > If you set this parameter to internet or leave it empty, the value is automatically set to intranet.'."\n" ."\n" .'- Valid values for security groups in the classic network:'."\n" .' - internet (default): Internet.'."\n" .' - intranet: internal network.'."\n" .' > The classic network feature has been offline. For details, see [Retirement announcement](~~2833134~~).', 'type' => 'string', 'required' => false, 'default' => 'internet', 'example' => 'intranet', 'title' => ''], ], [ 'name' => 'Direction', 'in' => 'query', 'schema' => ['description' => 'The direction of the security group rule. Valid values: '."\n" .' '."\n" .'- egress: outbound.'."\n" .'- ingress: inbound.'."\n" .'- all: both inbound and outbound.'."\n" ."\n" .'Default value: all.', 'type' => 'string', 'required' => false, 'default' => 'all', 'example' => 'all', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous call. You do not need to set this parameter for the first request.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'allowEmptyValue' => false, 'schema' => ['title' => '', 'description' => 'The maximum number of entries per page for a paged query.'."\n" ."\n" .'- Minimum value: 10.'."\n" .'- Maximum value: 1000.'."\n" ."\n" .'Default value: 500.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '1000', 'minimum' => '10', 'required' => false, 'example' => '500'], ], [ 'name' => 'Attribute', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The security group attribute. Valid values:'."\n" ."\n" .'- snapshotPolicyIds: queries the snapshot policies associated with the security group.', 'type' => 'string', 'required' => false, 'example' => 'snapshotPolicyIds'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'VpcId' => ['description' => 'The VPC ID. If a VPC ID is returned, the network type of the security group is VPC. Otherwise, the security group belongs to the classic network.'."\n" ."\n" .'> The classic network feature has been offline. For details, see [Retirement announcement](~~2833134~~).', 'type' => 'string', 'example' => 'vpc-bp1opxu1zkhn00gzv****', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'InnerAccessPolicy' => ['description' => 'The internal network connectivity policy of the security group. Valid values: '."\n" .' '."\n" .'- Accept: service interconnection.'."\n" .'- Drop: internal isolation.', 'type' => 'string', 'example' => 'Accept', 'title' => ''], 'Description' => ['description' => 'The description of the security group.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'SecurityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'example' => 'sg-bp1gxw6bznjjvhu3****', 'title' => ''], 'SecurityGroupName' => ['description' => 'The name of the security group.', 'type' => 'string', 'example' => 'SecurityGroupName Sample', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Permissions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Permission' => [ 'description' => 'The collection of security group rules.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'SecurityGroupRuleId' => ['description' => 'The security group rule ID.', 'type' => 'string', 'example' => 'sgr-bp12kewq32dfwrdi****', 'title' => ''], 'Direction' => ['description' => 'The authorization direction.', 'type' => 'string', 'example' => 'ingress', 'title' => ''], 'SourceGroupId' => ['description' => 'The source security group, used for inbound authorization.', 'type' => 'string', 'example' => 'sg-bp12kc4rqohaf2js****', 'title' => ''], 'DestGroupOwnerAccount' => ['description' => 'The Alibaba Cloud account ID of the destination security group.', 'type' => 'string', 'example' => '1234567890', 'title' => ''], 'DestPrefixListId' => ['description' => 'The ID of the destination prefix list, used for outbound authorization.', 'type' => 'string', 'example' => 'pl-x1j1k5ykzqlixabc****', 'title' => ''], 'DestPrefixListName' => ['description' => 'The name of the destination prefix list.', 'type' => 'string', 'example' => 'DestPrefixListName Sample', 'title' => ''], 'SourceCidrIp' => ['description' => 'The source CIDR block, used for inbound authorization.', 'type' => 'string', 'example' => '0.0.0.0/0', 'title' => ''], 'Ipv6DestCidrIp' => ['description' => 'The destination IPv6 CIDR block.', 'type' => 'string', 'example' => '2001:db8:1233:1a00::***', 'title' => ''], 'CreateTime' => ['description' => 'The creation time in UTC.', 'type' => 'string', 'example' => '2018-12-12T07:28:38Z', 'title' => ''], 'Ipv6SourceCidrIp' => ['description' => 'The source IPv6 CIDR block.', 'type' => 'string', 'example' => '2001:db8:1234:1a00::***', 'title' => ''], 'DestGroupId' => ['description' => 'The destination security group, used for outbound authorization.', 'type' => 'string', 'example' => 'sg-bp1czdx84jd88i7v****', 'title' => ''], 'DestCidrIp' => ['description' => 'The destination CIDR block, used for outbound authorization.', 'type' => 'string', 'example' => '0.0.0.0/0', 'title' => ''], 'IpProtocol' => ['description' => 'The IP protocol.', 'type' => 'string', 'example' => 'TCP', 'title' => ''], 'Priority' => ['description' => 'The rule priority.', 'type' => 'string', 'example' => '1', 'title' => ''], 'DestGroupName' => ['description' => 'The name of the destination security group.', 'type' => 'string', 'example' => 'testDestGroupName', 'title' => ''], 'NicType' => ['description' => 'The network type.', 'type' => 'string', 'example' => 'intranet', 'title' => ''], 'Policy' => ['description' => 'The authorization policy.', 'type' => 'string', 'example' => 'Accept', 'title' => ''], 'Description' => ['description' => 'The description of the security group.', 'type' => 'string', 'example' => 'Description Sample 01', 'title' => ''], 'PortRange' => ['description' => 'The port range.', 'type' => 'string', 'example' => '80/80', 'title' => ''], 'SourcePrefixListName' => ['description' => 'The name of the source prefix list.', 'type' => 'string', 'example' => 'SourcePrefixListName Sample', 'title' => ''], 'SourcePrefixListId' => ['description' => 'The ID of the source prefix list, used for inbound authorization.', 'type' => 'string', 'example' => 'pl-x1j1k5ykzqlixdcy****', 'title' => ''], 'SourceGroupOwnerAccount' => ['description' => 'The Alibaba Cloud account ID of the source security group.', 'type' => 'string', 'example' => '1234567890', 'title' => ''], 'SourceGroupName' => ['description' => 'The name of the source security group.', 'type' => 'string', 'example' => 'testSourceGroupName1', 'title' => ''], 'SourcePortRange' => ['description' => 'The source port range.', 'type' => 'string', 'example' => '80/80', 'title' => ''], 'PortRangeListId' => ['description' => 'The port address book ID.', 'type' => 'string', 'example' => 'prl-2ze9743****', 'title' => ''], 'PortRangeListName' => ['description' => 'The name of the port address book.', 'type' => 'string', 'example' => 'PortRangeListNameSample', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'The paging token returned in this call. When you use `MaxResults` and `NextToken` for paging query, if this value is empty, no more data is available.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'SnapshotPolicyIds' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SnapshotPolicyId' => [ 'title' => '', 'description' => 'The list of snapshot policy IDs associated with the security group.', 'type' => 'array', 'items' => ['description' => 'The snapshot policy ID associated with the security group.', 'type' => 'string', 'example' => 'sgsp-mj74****', 'title' => ''], 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidNicType.ValueNotSupported', 'errorMessage' => 'The specified NicType does not exist.', 'description' => 'The specified NicType parameter does not exist.'], ['errorCode' => 'InvalidParamter', 'errorMessage' => 'Invalid Parameter.', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidSecurityGroupId.Malformed', 'errorMessage' => 'The specified parameter "SecurityGroupId" is not valid.', 'description' => 'The specified parameter SecurityGroupId is illegal.'], ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The parameter RegionId is missing.', 'description' => ''], ['errorCode' => 'InvalidParameter.AttributeNotSupported', 'errorMessage' => 'The specified value for parameter Attribute is not supported. Valid values: snapshotPolicyIds.', 'description' => 'The specified value for the parameter Attribute is not supported. Valid values are: snapshotPolicyIds.'."\n"], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => 'The specified SecurityGroupId does not exist.', 'description' => 'The specified security group does not exist in this account. Check whether the security group ID is correct.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ['errorCode' => 'ServiceUnavailable', 'errorMessage' => 'The service is unavailable, please try again later.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"VpcId\\": \\"vpc-bp1opxu1zkhn00gzv****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"InnerAccessPolicy\\": \\"Accept\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"SecurityGroupId\\": \\"sg-bp1gxw6bznjjvhu3****\\",\\n \\"SecurityGroupName\\": \\"SecurityGroupName Sample\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Permissions\\": {\\n \\"Permission\\": [\\n {\\n \\"SecurityGroupRuleId\\": \\"sgr-bp12kewq32dfwrdi****\\",\\n \\"Direction\\": \\"ingress\\",\\n \\"SourceGroupId\\": \\"sg-bp12kc4rqohaf2js****\\",\\n \\"DestGroupOwnerAccount\\": \\"1234567890\\",\\n \\"DestPrefixListId\\": \\"pl-x1j1k5ykzqlixabc****\\",\\n \\"DestPrefixListName\\": \\"DestPrefixListName Sample\\",\\n \\"SourceCidrIp\\": \\"0.0.0.0/0\\",\\n \\"Ipv6DestCidrIp\\": \\"2001:db8:1233:1a00::***\\",\\n \\"CreateTime\\": \\"2018-12-12T07:28:38Z\\",\\n \\"Ipv6SourceCidrIp\\": \\"2001:db8:1234:1a00::***\\",\\n \\"DestGroupId\\": \\"sg-bp1czdx84jd88i7v****\\",\\n \\"DestCidrIp\\": \\"0.0.0.0/0\\",\\n \\"IpProtocol\\": \\"TCP\\",\\n \\"Priority\\": \\"1\\",\\n \\"DestGroupName\\": \\"testDestGroupName\\",\\n \\"NicType\\": \\"intranet\\",\\n \\"Policy\\": \\"Accept\\",\\n \\"Description\\": \\"Description Sample 01\\",\\n \\"PortRange\\": \\"80/80\\",\\n \\"SourcePrefixListName\\": \\"SourcePrefixListName Sample\\",\\n \\"SourcePrefixListId\\": \\"pl-x1j1k5ykzqlixdcy****\\",\\n \\"SourceGroupOwnerAccount\\": \\"1234567890\\",\\n \\"SourceGroupName\\": \\"testSourceGroupName1\\",\\n \\"SourcePortRange\\": \\"80/80\\",\\n \\"PortRangeListId\\": \\"prl-2ze9743****\\",\\n \\"PortRangeListName\\": \\"PortRangeListNameSample\\"\\n }\\n ]\\n },\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"SnapshotPolicyIds\\": {\\n \\"SnapshotPolicyId\\": [\\n \\"sgsp-mj74****\\"\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query security group and rule information', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-08-19T10:05:10.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2025-04-01T08:24:57.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2024-05-21T08:02:56.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2023-01-05T11:53:05.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '2000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSecurityGroupAttribute'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSecurityGroupAttribute', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'ecs:tag', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'SecurityGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:securitygroup/{#securitygroupId}'], ], ], ], ], ], 'DescribeSecurityGroupReferences' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28992', 'abilityTreeNodes' => ['FEATUREecsO3Q7NU'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the security group. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The array of security group IDs. Array length: 0 to 10.', 'type' => 'array', 'items' => ['description' => 'The security group ID.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp14vtedjtobkvi****', 'title' => ''], 'required' => true, 'example' => 'sg-bp14vtedjtobkvi****', 'maxItems' => 10, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'SecurityGroupReferences' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroupReference' => [ 'description' => 'The collection of security groups and their authorized security group information.', 'type' => 'array', 'items' => [ 'description' => 'The security group and its authorized security group information.', 'type' => 'object', 'properties' => [ 'SecurityGroupId' => ['description' => 'The security group ID.', 'type' => 'string', 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'ReferencingSecurityGroups' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ReferencingSecurityGroup' => [ 'description' => 'The collection of other security groups that are authorizing this security group.', 'type' => 'array', 'items' => [ 'description' => 'The information about another security group that is authorizing this security group.', 'type' => 'object', 'properties' => [ 'SecurityGroupId' => ['description' => 'The ID of the other security group.', 'type' => 'string', 'example' => 'sg-bp67acfmxazb4j****', 'title' => ''], 'AliUid' => ['description' => 'The ID of the user to which the other security group belongs.', 'type' => 'string', 'example' => '123456****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidSecurityGroupId.Malformed', 'errorMessage' => 'The specified parameter SecurityGroupId is essential and size should less than 10', 'description' => 'The SecurityGroupId.N parameter is required and the value of N cannot exceed 10.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => 'The SecurityGroupId provided does not exist in our records.', 'description' => 'The specified security group does not exist in this account. Check whether the security group ID is correct.'], ], ], 'title' => 'Query authorized security group list', 'summary' => 'Queries the list of other security groups that have been authorized by one or more specified security groups.', 'description' => '- If you cannot delete a security group ([DeleteSecurityGroup](~~25558~~)), you can call this operation to check whether the specified security group has been authorized by other security groups. If the specified security group has been authorized, you can call [RevokeSecurityGroup](~~2679855~~) and [RevokeSecurityGroupEgress](~~2679856~~) to delete the corresponding security group rules to revoke the authorization.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSecurityGroupReferences'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSecurityGroupReferences', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'SecurityGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:securitygroup/{#securitygroupId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"SecurityGroupReferences\\": {\\n \\"SecurityGroupReference\\": [\\n {\\n \\"SecurityGroupId\\": \\"sg-bp67acfmxazb4p****\\",\\n \\"ReferencingSecurityGroups\\": {\\n \\"ReferencingSecurityGroup\\": [\\n {\\n \\"SecurityGroupId\\": \\"sg-bp67acfmxazb4j****\\",\\n \\"AliUid\\": \\"123456****\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeSecurityGroups' => [ 'summary' => 'Queries the basic information about security groups. You can filter results by region, security group ID, security group type, and other parameters through parameter query.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28993', 'abilityTreeNodes' => ['FEATUREecsO3Q7NU'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SecurityGroupIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of security groups. You can specify up to 100 security group IDs. Separate multiple IDs with commas (,) in a JSON array format.', 'type' => 'string', 'required' => false, 'example' => '["sg-bp67acfmxazb4p****", "sg-bp67acfmxazb4p****", "sg-bp67acfmxazb4p****",....]', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the virtual private cloud (VPC) to which the security group belongs.', 'type' => 'string', 'required' => false, 'example' => 'vpc-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SecurityGroupType', 'in' => 'query', 'schema' => ['description' => 'The type of the security group. Valid values:'."\n" .'- normal: basic security group.'."\n" .'- enterprise: advanced security group.'."\n" ."\n" .'> If you do not specify this parameter, security groups of all types are queried.', 'type' => 'string', 'required' => false, 'example' => 'normal', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous request. You do not need to set this parameter for the first request.', 'type' => 'string', 'required' => false, 'example' => 'e71d8a535bd9cc11', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for paging query. If you set this parameter, the `MaxResults` and `NextToken` paging method is used.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NetworkType', 'in' => 'query', 'schema' => ['description' => 'The network type of the security group. Valid values:'."\n" ."\n" .'- vpc: VPC.'."\n" .'- classic: classic network. The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'string', 'required' => false, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'SecurityGroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the security group.', 'type' => 'string', 'required' => false, 'example' => 'SGTestName', 'title' => ''], ], [ 'name' => 'IsQueryEcsCount', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to query the capacity information of the security group. If you set this parameter to True, the `EcsCount` and `AvailableInstanceAmount` values in the response are valid.'."\n" .'> This parameter is deprecated.', 'type' => 'boolean', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the security group belongs. When you use this parameter to filter resources, the resource count cannot exceed 1,000. You can invoke [ListResourceGroups](~~158855~~) to query resource groups.'."\n" ."\n" .'> Filtering by the default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the security group.'."\n" ."\n" .'> For better compatibility, use the Tag.N.Key parameter.', 'type' => 'string', 'required' => false, 'example' => 'testkey', 'title' => ''], 'Key' => ['description' => 'The tag key of the security group. Valid values of N: 1 to 20.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the specified tag cannot exceed 1,000. If you use multiple tags to filter resources, the resource count that have all specified tags attached cannot exceed 1,000. If the resource count exceeds 1,000, call [ListTagResources](~~110425~~) to query resources.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the security group. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the security group.'."\n" ."\n" .'> For better compatibility, use the Tag.N.Value parameter.', 'type' => 'string', 'required' => false, 'example' => 'testvalue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run. Valid values:'."\n" .' '."\n" .'- true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized Resource Access Management (RAM) users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes the dry run, the DryRunOperation error code is returned.'."\n" .'- false: performs a dry run and sends the Normal request. If the request passes the dry run, a 2xx HTTP status code is returned and the authorization is verified.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'SecurityGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the security group.', 'type' => 'string', 'required' => false, 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'FuzzyQuery', 'in' => 'query', 'schema' => ['description' => '> This parameter is deprecated.', 'type' => 'boolean', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter will be offline. Use NextToken and MaxResults for paging.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter will be offline. Use NextToken and MaxResults for paging.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'ServiceManaged', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'Specifies whether managed security group is managed. Valid values:'."\n" ."\n" .'- true: Managed security group is managed.'."\n" .'- false: Managed security group is not managed.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the security group.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'NextToken' => ['description' => 'The pagination token returned in this call. If this value is empty when you use MaxResults and NextToken for paging, no more data is available.', 'type' => 'string', 'example' => 'e71d8a535bd9cc11', 'title' => ''], 'SecurityGroups' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SecurityGroup' => [ 'description' => 'The collection of security group information.', 'type' => 'array', 'items' => [ 'description' => 'The security group information.', 'type' => 'object', 'properties' => [ 'SecurityGroupId' => ['description' => 'The ID of the security group.', 'type' => 'string', 'example' => 'sg-bp67acfmxazb4p****', 'title' => ''], 'SecurityGroupName' => ['description' => 'The name of the security group.', 'type' => 'string', 'example' => 'SGTestName', 'title' => ''], 'Description' => ['description' => 'The description of the security group.', 'type' => 'string', 'example' => 'TestDescription', 'title' => ''], 'SecurityGroupType' => ['description' => 'The type of the security group. Valid values:'."\n" ."\n" .'- normal: basic security group.'."\n" .'- enterprise: advanced security group.', 'type' => 'string', 'example' => 'normal', 'title' => ''], 'VpcId' => ['description' => 'The ID of the VPC to which the security group belongs.', 'type' => 'string', 'example' => 'vpc-bp67acfmxazb4p****', 'title' => ''], 'CreationTime' => ['description' => 'The time when the security group was created. The time follows the [ISO 8601](~~25696~~) standard in UTC. Format: yyyy-MM-ddThh:mmZ.', 'type' => 'string', 'example' => '2021-08-31T03:12:29Z', 'title' => ''], 'EcsCount' => ['description' => 'The number of private IP addresses in the security group. For more information, see [Security group capacity](~~605897#section-kj9-e46-6v5~~).'."\n" ."\n" .'This parameter is valid only when the IsQueryEcsCount request parameter is set to True.'."\n" ."\n" .'> This parameter is deprecated. The returned value is for reference only and may not reflect real-time data.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'AvailableInstanceAmount' => ['description' => 'The number of private IP addresses that can be added to the security group. For more information, see [Security group capacity](~~605897#section-kj9-e46-6v5~~).'."\n" ."\n" .'This parameter is valid only when the IsQueryEcsCount request parameter is set to True.'."\n" ."\n" .'> This parameter is deprecated. The returned value is for reference only and may not reflect real-time data.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the security group belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'ServiceManaged' => ['description' => 'Indicates whether the security group is used by a cloud service or a Virtual Network Operator (VNO).', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'ServiceID' => ['description' => 'The ID of the VNO associated with the security group.', 'type' => 'integer', 'format' => 'int64', 'example' => '12345678910', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The collection of tags for the security group.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the security group.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the security group.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the security group.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'RuleCount' => ['description' => 'The number of rules in the security group.', 'type' => 'integer', 'format' => 'int32', 'example' => '100', 'title' => ''], 'GroupToGroupRuleCount' => ['description' => 'The number of rules that authorize access from other security groups.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'TotalCount' => ['description' => 'The total number of security groups. This parameter is not returned when you use `MaxResults` and `NextToken` for parameter query.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'PageNumber' => ['description' => 'The current page number.'."\n" ."\n" .'> This parameter will be offline. Use NextToken and MaxResults for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page.'."\n" ."\n" .'> This parameter will be offline. Use NextToken and MaxResults for paging.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'NotSupported.PageNumberAndPageSize', 'errorMessage' => 'The parameters PageNumber and PageSize are currently not supported, please use NextToken and MaxResults instead.', 'description' => ''], ['errorCode' => 'InValidParameter.NextToken', 'errorMessage' => 'The parameter NextToken is invalid.', 'description' => 'The specified NextToken parameter is invalid.'], ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The input parameter RegionId that is mandatory for processing this request is not supplied.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.SecurityGroupType', 'errorMessage' => 'The specified SecurityGroupType is not valid.', 'description' => 'The specified SecurityGroupType parameter is invalid.'], ['errorCode' => 'InvalidSecurityGroupId.Malformed', 'errorMessage' => 'The specified parameter SecurityGroupId is not valid.', 'description' => 'The specified SecurityGroupId parameter is invalid.'], ['errorCode' => 'InvalidSecurityGroupName.Malformed', 'errorMessage' => 'The specified parameter SecurityGroupName is not valid.', 'description' => 'The specified SecurityGroupName parameter is not valid. This parameter is empty by default. If you specify a security group name, the name must be 2 to 128 characters in length and start with a letter. It can contain letters, digits, periods (.), underscores (_), and hyphens (-) and cannot start with http:// or https. The security group name is displayed in the ECS console.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"NextToken\\": \\"e71d8a535bd9cc11\\",\\n \\"SecurityGroups\\": {\\n \\"SecurityGroup\\": [\\n {\\n \\"SecurityGroupId\\": \\"sg-bp67acfmxazb4p****\\",\\n \\"SecurityGroupName\\": \\"SGTestName\\",\\n \\"Description\\": \\"TestDescription\\",\\n \\"SecurityGroupType\\": \\"normal\\",\\n \\"VpcId\\": \\"vpc-bp67acfmxazb4p****\\",\\n \\"CreationTime\\": \\"2021-08-31T03:12:29Z\\",\\n \\"EcsCount\\": 0,\\n \\"AvailableInstanceAmount\\": 0,\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"ServiceManaged\\": false,\\n \\"ServiceID\\": 12345678910,\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"RuleCount\\": 100,\\n \\"GroupToGroupRuleCount\\": 5\\n }\\n ]\\n },\\n \\"TotalCount\\": 20,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10\\n}","type":"json"}]', 'title' => 'Query basic information about security groups', 'description' => '- **Paging query**: Use `MaxResults` and `NextToken` for paging query.'."\n" .' - If `NextToken` is not returned, the current page is the last page.'."\n" .' - For the first page, set only `MaxResults` to limit the number of entries to return. The `NextToken` value in the response is used to query subsequent pages.'."\n" .' - For subsequent pages, set `NextToken` to the `NextToken` value returned in the previous response and set `MaxResults` to limit the number of entries to return.'."\n" .'- When you invoke an API operation by using Cloud Assistant CLI, specify request parameters in the required format. For more information, see [Parameter format of CLI commands](~~110340~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-09-23T11:16:15.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2023-11-14T05:29:03.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-04-07T05:09:07.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-12-05T04:19:08.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-10-12T06:30:07.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSecurityGroups'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSecurityGroups', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'ecs:tag', 'validationType' => 'always'], ['conditionKey' => 'ecs:tag', 'validationType' => 'always'], ['conditionKey' => 'ecs:tag', 'validationType' => 'always'], ['conditionKey' => 'ecs:tag', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'SecurityGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:securitygroup/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'SecurityGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:securitygroup/{#securitygroupId}'], ], ], ], ], ], 'DescribeSendFileResults' => [ 'summary' => 'Queries the list and status of files sent by Cloud Assistant by calling DescribeSendFileResults.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29292', 'abilityTreeNodes' => ['FEATUREecsPW0L5N'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the ECS instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the file sending task belongs. After you specify this parameter, you must also specify ResourceGroupId when sending the file. This parameter allows you to filter file sending results by resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InvokeId', 'in' => 'query', 'schema' => ['description' => 'The execution ID.', 'type' => 'string', 'required' => false, 'example' => 'f-hz0jdfwd9f****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the file. If you specify this parameter, all sending records of the file with the specified name are queried.', 'type' => 'string', 'required' => false, 'example' => 'test.txt', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. If you specify this parameter, all file sending records of the specified instance are queried.', 'type' => 'string', 'required' => false, 'example' => 'i-hz0jdfwd9f****', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults to complete paging operations.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults to complete paging operations.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for a paged query.'."\n" ."\n" .'Maximum value: 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2', 'title' => ''], ], [ 'name' => 'InvocationStatus', 'in' => 'query', 'schema' => ['description' => 'The overall sending status of the file. The overall status depends on the combined execution status of all instances in the sending task. Valid values:'."\n" ."\n" .'- Pending: The system is validating or sending the file. The overall status is Pending if the file sending status of at least one instance is Pending.'."\n" .'- Running: The file is being sent to instances. The overall status is Running if the file sending status of at least one instance is Running.'."\n" .'- Success: The file is sent. The overall status is Success if the file sending status of all instances is Success.'."\n" .'- Failed: The file failed to be sent. The overall status is Failed if the file sending status of all instances is Failed.'."\n" .'- PartialFailed: The file is sent to some instances but failed on others. The overall status is PartialFailed if the file sending status of all instances is Success or Failed.', 'type' => 'string', 'required' => false, 'example' => 'Success', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the file sending task. Valid values of N: 1 to 20. The tag key cannot be an empty string.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the specified tag cannot exceed 1000. If you use multiple tags to filter resources, the resource count of resources that attach all specified tags cannot exceed 1000. If the resource count exceeds 1000, call the [ListTagResources](~~110425~~) operation.'."\n" ."\n" .'The tag key can be up to 64 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the file sending task. Valid values of N: 1 to 20. The tag value can be an empty string.'."\n" ."\n" .'The tag value can be up to 128 characters in length and cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the query result.', 'type' => 'integer', 'format' => 'int64', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of scripts.', 'type' => 'integer', 'format' => 'int64', 'example' => '2', 'title' => ''], 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'Invocations' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Invocation' => [ 'description' => 'The file sending records.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the file sending task was created.', 'type' => 'string', 'example' => '2019-12-20T06:15:54Z', 'title' => ''], 'InvocationStatus' => ['description' => 'The overall sending status of the file. The overall status depends on the combined execution status of all instances in the sending task. Valid values:'."\n" ."\n" .'- Pending: The system is validating or sending the file. The overall status is Pending if the file sending status of at least one instance is Pending.'."\n" .'- Running: The file is being sent to instances. The overall status is Running if the file sending status of at least one instance is Running.'."\n" .'- Success: The overall status is Success if the file sending status of all instances is Success.'."\n" .'- Failed: The overall status is Failed if the file sending status of all instances is Failed. The status is Failed if one or more of the following statuses apply to the instance:'."\n" .' - The specified file parameters are invalid and validation failed (Invalid).'."\n" .' - The file failed to be sent to the instance (Aborted).'."\n" .' - The file failed to be created on the instance (Failed).'."\n" .' - The file sending timed out (Timeout).'."\n" .' - An exception occurred during file sending and the process cannot continue (Error).'."\n" .'- PartialFailed: The file is sent to some instances but failed on others. The overall status is PartialFailed if the file sending status of all instances is Success or Failed.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'ContentType' => ['description' => 'The content type of the file. Valid values:'."\n" .'- PlainText: plain text.'."\n" .'- Base64: Base64 encoding.', 'type' => 'string', 'example' => 'PlainText', 'title' => ''], 'TargetDir' => ['description' => 'The destination path.', 'type' => 'string', 'example' => '/home/user', 'title' => ''], 'FileOwner' => ['description' => 'The owner of the file.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'Description' => ['description' => 'The description.', 'type' => 'string', 'example' => 'This is a test file.', 'title' => ''], 'VmCount' => ['description' => 'The number of instances to which the file was sent.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'FileMode' => ['description' => 'The permissions on the file.', 'type' => 'string', 'example' => '777', 'title' => ''], 'FileGroup' => ['description' => 'The user group of the file.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'InvokeId' => ['description' => 'The execution ID.', 'type' => 'string', 'example' => 'f-hz0jdfwd9f****', 'title' => ''], 'Name' => ['description' => 'The name of the file.', 'type' => 'string', 'example' => 'test.txt', 'title' => ''], 'Content' => ['description' => 'The content of the file.', 'type' => 'string', 'example' => '#!/bin/bash echo "Current User is :" echo $(ps | grep "$$" | awk \'{print $2}\')', 'title' => ''], 'Overwrite' => ['description' => 'Indicates whether overwriting is allowed.', 'type' => 'string', 'example' => 'false', 'title' => ''], 'InvokeInstances' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InvokeInstance' => [ 'description' => 'The target instances for file sending.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the file sending task was created.', 'type' => 'string', 'example' => '2019-12-20T06:15:54Z', 'title' => ''], 'StartTime' => ['description' => 'The time when the sending task started to run on the instance.', 'type' => 'string', 'example' => '2019-12-20T06:15:54Z', 'title' => ''], 'InvocationStatus' => ['description' => 'The sending status of the file on a single instance. Valid values:'."\n" .'- Pending: The system is validating or sending the file.'."\n" .'- Invalid: The specified file parameters are invalid and validation failed.'."\n" .'- Running: The file is being sent to the instance.'."\n" .'- Aborted: The file failed to be sent to the instance.'."\n" .'- Success: The file is sent.'."\n" .'- Failed: The file failed to be created on the instance.'."\n" .'- Error: An exception occurred during file sending and the process cannot continue.'."\n" .'- Timeout: The file sending timed out.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'FinishTime' => ['description' => 'The time when the sending task ended.', 'type' => 'string', 'example' => '2019-12-20T06:15:54Z', 'title' => ''], 'UpdateTime' => ['description' => 'The time when the task status was updated.', 'type' => 'string', 'example' => '2019-12-20T06:15:54Z', 'title' => ''], 'ErrorInfo' => ['description' => 'The details of the file sending failure or execution failure. Valid values:'."\n" ."\n" .'- Empty: The file is sent.'."\n" .'- the specified instance does not exists: The specified instance does not exist or has been released.'."\n" .'- the specified instance has been released.: The instance was released during file sending.'."\n" .'- the instance is not running when create task: The instance was not in the Running state when the file sending task was created.'."\n" .'- the specified account does not exists: The specified account does not exist.'."\n" .'- the aliyun service is not running on the instance: Cloud Assistant Agent is not running.'."\n" .'- the aliyun service in the instance does not response: Cloud Assistant Agent is not responding.'."\n" .'- the aliyun service in the instance is upgrading now: Cloud Assistant Agent is being upgraded.'."\n" .'- the aliyun service in the instance need upgrade: Cloud Assistant Agent needs to be upgraded.'."\n" .'- the command delivery has been timeout: The file sending timed out.'."\n" .'- the file creation is failed due to unknown error: The file failed to be created.'."\n" .'- the authority of file is invalid: The file permissions are invalid.'."\n" .'- File content is empty: The file content is empty.'."\n" .'- the content of file is invalid: The file content is invalid.'."\n" .'- File already exists: A file with the same name exists in the same path.'."\n" .'- File name is invalid: The file name is invalid.'."\n" .'- File path is invalid: The file path is invalid.'."\n" .'- Owner not exists: The specified user does not exist.'."\n" .'- Group not exists: The specified user group does not exist.'."\n" .'- Mode is invalid: The file permission settings are invalid.', 'type' => 'string', 'example' => 'the instance is not running when create task', 'title' => ''], 'ErrorCode' => ['description' => 'The error code for the file sending failure. Valid values:'."\n" ."\n" .'- Empty: The file is sent.'."\n" .'- InstanceNotExists: The specified instance does not exist or has been released.'."\n" .'- InstanceReleased: The instance was released during file sending.'."\n" .'- InstanceNotRunning: The instance was not in the Running state when the file sending task was created.'."\n" .'- AccountNotExists: The specified account does not exist.'."\n" .'- ClientNotRunning: Cloud Assistant Agent is not running.'."\n" .'- ClientNotResponse: Cloud Assistant Agent is not responding.'."\n" .'- ClientIsUpgrading: Cloud Assistant Agent is being upgraded.'."\n" .'- ClientNeedUpgrade: Cloud Assistant Agent needs to be upgraded.'."\n" .'- DeliveryTimeout: The file sending timed out.'."\n" .'- FileCreateFail: The file failed to be created.'."\n" .'- FileAlreadyExists: A file with the same name exists in the same path.'."\n" .'- FileContentInvalid: The file content is invalid.'."\n" .'- FileNameInvalid: The file name is invalid.'."\n" .'- FilePathInvalid: The file path is invalid.'."\n" .'- FileAuthorityInvalid: The file permissions are invalid.'."\n" .'- UserGroupNotExists: The user group specified during file sending does not exist.', 'type' => 'string', 'example' => 'InstanceNotExists', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-uf614fhehhz****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tag information of the file sending task.', 'type' => 'array', 'items' => [ 'description' => 'The tag information of the file sending task.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key of the file sending task.', 'type' => 'string', 'example' => 'owner', 'title' => ''], 'TagValue' => ['description' => 'The tag value of the file sending task.', 'type' => 'string', 'example' => 'zhangsan', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'The Tags parameter number is exceed.', 'description' => 'The number of tags exceeds the maximum limit.'], ['errorCode' => 'MissingParameter.TagKey', 'errorMessage' => 'You must specify Tag.N.Key.', 'description' => 'The tag key is not specified.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The specified Tag.n.Key is not valid.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The specified Tag.n.Value is not valid.', 'description' => 'The specified tag value is invalid.'], ['errorCode' => 'InvalidParam.PageNumber', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParam.PageSize', 'errorMessage' => 'The specified parameter is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"Invocations\\": {\\n \\"Invocation\\": [\\n {\\n \\"CreationTime\\": \\"2019-12-20T06:15:54Z\\",\\n \\"InvocationStatus\\": \\"Success\\",\\n \\"ContentType\\": \\"PlainText\\",\\n \\"TargetDir\\": \\"/home/user\\",\\n \\"FileOwner\\": \\"test\\",\\n \\"Description\\": \\"This is a test file.\\",\\n \\"VmCount\\": 1,\\n \\"FileMode\\": \\"777\\",\\n \\"FileGroup\\": \\"test\\",\\n \\"InvokeId\\": \\"f-hz0jdfwd9f****\\",\\n \\"Name\\": \\"test.txt\\",\\n \\"Content\\": \\"#!/bin/bash echo \\\\\\"Current User is :\\\\\\" echo $(ps | grep \\\\\\"$$\\\\\\" | awk \'{print $2}\')\\",\\n \\"Overwrite\\": \\"false\\",\\n \\"InvokeInstances\\": {\\n \\"InvokeInstance\\": [\\n {\\n \\"CreationTime\\": \\"2019-12-20T06:15:54Z\\",\\n \\"StartTime\\": \\"2019-12-20T06:15:54Z\\",\\n \\"InvocationStatus\\": \\"Success\\",\\n \\"FinishTime\\": \\"2019-12-20T06:15:54Z\\",\\n \\"UpdateTime\\": \\"2019-12-20T06:15:54Z\\",\\n \\"ErrorInfo\\": \\"the instance is not running when create task\\",\\n \\"ErrorCode\\": \\"InstanceNotExists\\",\\n \\"InstanceId\\": \\"i-uf614fhehhz****\\"\\n }\\n ]\\n },\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagKey\\": \\"owner\\",\\n \\"TagValue\\": \\"zhangsan\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query Cloud assistant file sending results', 'description' => '## Operation description:'."\n" .'- After you send a file, the file is not necessarily sent. You must check the actual sending result based on the return value of this operation.'."\n" .'- You can query execution information from the last 30 days. A maximum of 10,000 entries of execution information can be retained.'."\n" .'- When paged query the first page, set only MaxResults to limit the number of entries to return. The NextToken value returned in the result serves as the token for querying subsequent pages. When paged query subsequent pages, set NextToken to the value obtained from the previous response and set MaxResults to limit the number of entries to return.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-12-21T01:35:08.000Z', 'description' => 'Error codes changed, Request parameters changed, Response parameters changed'], ['createdAt' => '2023-09-19T05:57:14.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-05-12T05:58:06.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2022-10-28T04:41:59.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-02-25T07:27:48.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSendFileResults'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSendFileResults', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'DescribeSnapshotGroups' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28995', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the snapshot-consistent group. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => false, 'example' => 'i-j6ca469urv8ei629****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the snapshot-consistent group.', 'type' => 'string', 'required' => false, 'example' => 'testName', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The token that determines the start point of the next query. Set the value to the NextToken value that is returned from the last call.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '500', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'SnapshotGroupId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of snapshot-consistent group N. Valid values of N: 1 to 10.', 'type' => 'array', 'items' => ['description' => 'The ID of snapshot-consistent group N. Valid values of N: 1 to 10.', 'type' => 'string', 'required' => false, 'example' => 'ssg-j6ciyh3k52qp7ovm****', 'title' => ''], 'required' => false, 'example' => 'ssg-j6ciyh3k52qp7ovm****', 'maxItems' => 10, 'title' => '', ], ], [ 'name' => 'Status', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The state of snapshot-consistent group N. Valid values of the second N: 1, 2, and 3. Valid values:'."\n" ."\n" .'- progressing: The snapshot-consistent group is being created.'."\n" ."\n" .'- accomplished: The snapshot-consistent group is created.'."\n" ."\n" .'- failed: The snapshot-consistent group fails to be created.', 'type' => 'array', 'items' => ['description' => 'The state of snapshot-consistent group N. Valid values of the second N: 1, 2, and 3. Valid values:'."\n" ."\n" .'- progressing: The snapshot-consistent group is being created.'."\n" ."\n" .'- accomplished: The snapshot-consistent group is created.'."\n" ."\n" .'- failed: The snapshot-consistent group fails to be created.', 'type' => 'string', 'required' => false, 'example' => 'accomplished', 'title' => ''], 'required' => false, 'example' => 'accomplished', 'maxItems' => 10, 'title' => '', ], ], [ 'name' => 'AdditionalAttributes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'This parameter is not publicly available.', 'type' => 'array', 'items' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'required' => false, 'example' => 'hide', 'maxItems' => 5, 'title' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the snapshot-consistent group.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the snapshot-consistent group.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the snapshot-consistent group. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the snapshot-consistent group. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 16, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the snapshot-consistent group belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The token used to start the next query.'."\n" ."\n" .'> If the return value is empty, no more data exists.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '3F9A4CC4-362F-469A-B9EF-B3204EF8AA3A', 'title' => ''], 'SnapshotGroups' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SnapshotGroup' => [ 'description' => 'The information about the snapshot-consistent groups.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The state of the snapshot-consistent group. Valid values:'."\n" ."\n" .'- progressing: The snapshot-consistent group was being created.'."\n" ."\n" .'- accomplished: The snapshot-consistent group was created.'."\n" ."\n" .'- failed: The snapshot-consistent group failed to be created.', 'type' => 'string', 'example' => 'accomplished', 'title' => ''], 'CreationTime' => ['description' => 'The creation time. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2021-03-23T10:58:48Z', 'title' => ''], 'Description' => ['description' => 'The description of the snapshot-consistent group.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'ProgressStatus' => ['description' => '> This parameter is not publicly available.', 'type' => 'string', 'example' => 'null', 'title' => ''], 'SnapshotGroupId' => ['description' => 'The ID of the snapshot-consistent group.', 'type' => 'string', 'example' => 'ssg-j6ciyh3k52qp7ovm****', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the instance to which the snapshot-consistent group belongs. This parameter has a value only when all disk snapshots in the snapshot-consistent group belong to the same instance. If disk snapshots in the snapshot-consistent group belong to different instances, you can check the response parameters that start with `Snapshots.Snapshot.Tags.` to determine the ID of the instance to which each snapshot in the snapshot-consistent group belongs.', 'type' => 'string', 'example' => 'i-j6ca469urv8ei629****', 'title' => ''], 'Name' => ['description' => 'The name of the snapshot-consistent group.', 'type' => 'string', 'example' => 'testName', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the snapshot-consistent group belongs.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the snapshot-consistent group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the snapshot-consistent group.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the snapshot-consistent group.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'Snapshots' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Snapshot' => [ 'description' => 'The information about the snapshots in the snapshot-consistent group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'SourceDiskId' => ['description' => 'The ID of the source disk. This parameter is retained even after the source disk of the snapshot is released.', 'type' => 'string', 'example' => 'd-j6c3ogynmvpi6wy7****', 'title' => ''], 'Progress' => ['description' => 'The progress of the snapshot creation task. Unit: percent (%).', 'type' => 'string', 'example' => '100%', 'title' => ''], 'Available' => ['description' => 'Indicates whether the snapshot can be shared and be used to create or roll back a disk. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'InstantAccessRetentionDays' => ['description' => 'The validity period of the instant access feature. When the validity period ends, the instant access snapshot is automatically released.'."\n" ."\n" .'> This parameter is no longer used. By default, standard snapshots of ESSDs are upgraded to instant access snapshots free of charge without the need for additional configurations. For more information, see [Use the instant access feature](~~193667~~).', 'type' => 'integer', 'format' => 'int32', 'example' => '3', 'title' => ''], 'SnapshotId' => ['description' => 'The ID of the snapshot.', 'type' => 'string', 'example' => 's-j6cbzmrlbf09w72q****', 'title' => ''], 'InstantAccess' => ['description' => 'Indicates whether the instant access feature is enabled. Valid values:'."\n" ."\n" .'- true: The instant access feature is enabled. By default, the instant access feature is enabled for ESSDs.'."\n" ."\n" .'- false: The instant access feature is disabled. The snapshot is a standard snapshot for which the instant access feature is disabled.'."\n" ."\n" .'> This parameter is no longer used. By default, standard snapshots of ESSDs are upgraded to instant access snapshots free of charge without the need for additional configurations. For more information, see [Use the instant access feature](~~193667~~).', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SourceDiskType' => ['description' => 'The type of the source disk. Valid values:'."\n" ."\n" .'- system: system disk'."\n" ."\n" .'- data: data disk', 'type' => 'string', 'example' => 'system', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags of the snapshot. The default values contain snapshot source information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the snapshot. The default values of Key and Value contain snapshot source information.', 'type' => 'string', 'example' => 'acs:ecs:createFrom', 'title' => ''], 'Value' => ['description' => 'The tag value of the snapshot. The default values of Key and Value contain snapshot source information.', 'type' => 'string', 'example' => 'i-bp11qm0o3dk4iuc****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => 'The specified tag key already exists. Tag keys must be unique.'], ], 403 => [ ['errorCode' => 'InvalidSnapshotGroupId.MustBeOne', 'errorMessage' => 'The size of SnapshotGroupIds must be one when AdditionalAttributes has SNAPSHOT_GROUP_PROGRESS_STATUS.', 'description' => ''], ['errorCode' => 'InvalidStatus.ValueNotSupported', 'errorMessage' => 'The specified parameter status is not valid. The expected status is progressing, accomplished or failed.', 'description' => 'The specified status parameter is invalid. The expected status is progressing, accomplished, or failed.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ], ], 'title' => 'DescribeSnapshotGroups', 'summary' => 'Queries the information of one or more snapshot-consistent groups, such as the status of the groups, IDs of the instances associated with the groups, and snapshot creation progress.', 'description' => 'You can specify multiple request parameters to be queried, such as `InstanceId`, `SnapshotGroupId.N`, and `Status.N`. Specified parameters have logical AND relations. Only the specified parameters are included in the filter conditions.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-02-26T02:16:08.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-02-06T06:24:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-17T07:39:10.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-09-18T05:33:55.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2021-09-07T11:34:55.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSnapshotGroups'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSnapshotGroups', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'SnapshotGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotgroup/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'SnapshotGroup', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshotgroup/{#snapshotgroupId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"RequestId\\": \\"3F9A4CC4-362F-469A-B9EF-B3204EF8AA3A\\",\\n \\"SnapshotGroups\\": {\\n \\"SnapshotGroup\\": [\\n {\\n \\"Status\\": \\"accomplished\\",\\n \\"CreationTime\\": \\"2021-03-23T10:58:48Z\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"ProgressStatus\\": \\"null\\",\\n \\"SnapshotGroupId\\": \\"ssg-j6ciyh3k52qp7ovm****\\",\\n \\"InstanceId\\": \\"i-j6ca469urv8ei629****\\",\\n \\"Name\\": \\"testName\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"TestKey\\",\\n \\"Value\\": \\"TestValue\\"\\n }\\n ]\\n },\\n \\"Snapshots\\": {\\n \\"Snapshot\\": [\\n {\\n \\"SourceDiskId\\": \\"d-j6c3ogynmvpi6wy7****\\",\\n \\"Progress\\": \\"100%\\",\\n \\"Available\\": false,\\n \\"InstantAccessRetentionDays\\": 3,\\n \\"SnapshotId\\": \\"s-j6cbzmrlbf09w72q****\\",\\n \\"InstantAccess\\": true,\\n \\"SourceDiskType\\": \\"system\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"acs:ecs:createFrom\\",\\n \\"Value\\": \\"i-bp11qm0o3dk4iuc****\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeSnapshotLinks' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28996', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the disk. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1h6jmbefj2cyqs****', 'title' => ''], ], [ 'name' => 'DiskIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of disks. You can specify up to 100 disk IDs at a time. The DiskIds parameter is a JSON array. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["d-bp1d6tsvznfghy7y****", "d-bp1ippxbaql9zet7****", … "d-bp1ib7bcz07lcxa9****"]', 'title' => ''], ], [ 'name' => 'SnapshotLinkIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of snapshot chains. You can specify up to 100 snapshot chain IDs at a time. The SnapshotLinkIds parameter is a JSON array. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["sl-bp1grgphbcc9brb5****", "sl-bp1c4izumvq0i5bs****", … "sl-bp1akk7isz866dds****"]', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the disk status list. Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for a paged query. Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '50', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for a paged query. Maximum value: 100.'."\n" .'Default value:'."\n" .'- If this parameter is not specified or is set to a value less than 10, the default value is 10.'."\n" .'- If this parameter is set to a value greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '0', 'default' => '10', 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page as specified in the request.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the snapshot chain list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of snapshot chains.'."\n" .'> When you use the `MaxResults` and `NextToken` parameters for a paged query, the returned `TotalCount` value is invalid. For paging, use `MaxResults` and `NextToken` instead.', 'type' => 'integer', 'format' => 'int32', 'example' => '9', 'title' => ''], 'SnapshotLinks' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SnapshotLink' => [ 'description' => 'The collection of snapshot chain information.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InstantAccess' => ['description' => 'Indicates whether the snapshot instant access feature is enabled. Valid values:'."\n" ."\n" .'- true: The feature is enabled. Only ESSD disks support this feature.'."\n" .'- false: The feature is disabled. The snapshot is a standard snapshot for which the snapshot instant access feature is not enabled.'."\n" ."\n" .'>This parameter is deprecated. Standard snapshots of ESSD disks have been upgraded to [instant access by default](~~193667~~). No additional configuration or cost is required.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'TotalSize' => ['description' => 'The total size of all snapshots in the snapshot chain. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '2097152', 'title' => ''], 'SourceDiskName' => ['description' => 'The name of the source disk.', 'type' => 'string', 'example' => 'testSourceDiskName', 'title' => ''], 'SourceDiskSize' => ['description' => 'The capacity of the source disk. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '40', 'title' => ''], 'SourceDiskType' => ['description' => 'The type of the source disk. Valid values:'."\n" ."\n" .'- system: system disk.'."\n" .'- data: data disk.', 'type' => 'string', 'example' => 'data', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1h6jmbefj2cyqs****', 'title' => ''], 'SnapshotLinkId' => ['description' => 'The ID of the snapshot chain.', 'type' => 'string', 'example' => 'sl-2ze0y1jwzpb1geqx****', 'title' => ''], 'TotalCount' => ['description' => 'The total number of snapshots.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the source disk of the snapshot chain.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'SourceDiskId' => ['description' => 'The ID of the source disk. This field is retained even if the source disk of the snapshot has been deleted.', 'type' => 'string', 'example' => 'd-bp1d6tsvznfghy7y****', 'title' => ''], 'InstanceName' => ['description' => 'Instance name', 'type' => 'string', 'example' => 'testInstanceName', 'title' => ''], 'Category' => ['description' => 'The type of the snapshot chain. Valid values:'."\n" ."\n" .'- standard: standard snapshot chain.'."\n" .'- archive: archive snapshot chain.'."\n" .'- flash: instant access snapshot chain.', 'type' => 'string', 'example' => 'standard', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified instanceId is not exists. ', 'description' => ''], ['errorCode' => 'InvalidRegionId', 'errorMessage' => 'The specified regionId is invalid.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidSnapshotLinkIds', 'errorMessage' => 'The specified snapshotLinkIds is invalid.', 'description' => 'The specified SnapshotLinkId parameter is invalid.'], ['errorCode' => 'InvalidDiskIds', 'errorMessage' => 'The specified diskIds is invalid.', 'description' => 'The specified DiskIds parameter is invalid.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query disk snapshot chains', 'summary' => 'Queries snapshot chains of disks. A snapshot chain consists of all snapshots of a disk. Each disk corresponds to one snapshot chain.', 'description' => '## Operation description'."\n" .'When you call this operation, take note of the following items:'."\n" ."\n" .'- The request parameters such as `RegionId`, `DiskIds`, and `InstanceId` act as filters. Logical AND is used between these parameters. '."\n" ."\n" .'- If you do not specify any parameters, the filters do not take effect. If `DiskIds` and `SnapshotLinkIds` are both empty arrays, the filters are considered valid, but the response is empty.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-05-16T08:52:34.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSnapshotLinks'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSnapshotLinks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"PageSize\\": 50,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 9,\\n \\"SnapshotLinks\\": {\\n \\"SnapshotLink\\": [\\n {\\n \\"InstantAccess\\": false,\\n \\"TotalSize\\": 2097152,\\n \\"SourceDiskName\\": \\"testSourceDiskName\\",\\n \\"SourceDiskSize\\": 40,\\n \\"SourceDiskType\\": \\"data\\",\\n \\"InstanceId\\": \\"i-bp1h6jmbefj2cyqs****\\",\\n \\"SnapshotLinkId\\": \\"sl-2ze0y1jwzpb1geqx****\\",\\n \\"TotalCount\\": 1,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"SourceDiskId\\": \\"d-bp1d6tsvznfghy7y****\\",\\n \\"InstanceName\\": \\"testInstanceName\\",\\n \\"Category\\": \\"standard\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeSnapshotMonitorData' => [ 'summary' => 'Queries the monitoring data of snapshot sizes in a region within the last 30 days.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28997', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (ss) is not 00, the time is rounded up to the next minute.', 'type' => 'string', 'required' => true, 'example' => '2019-05-10T00:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC. If the value of seconds (ss) is not 00, the time is rounded up to the next minute.', 'type' => 'string', 'required' => true, 'example' => '2019-05-10T03:00:00Z', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => [ 'description' => 'The interval at which to query the monitoring data of snapshot sizes. Unit: seconds. Valid values:'."\n" ."\n" .'- 60'."\n" ."\n" .'- 600'."\n" ."\n" .'- 3600'."\n" ."\n" .'Default value: 60.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'enum' => ['60', '600', '3600'], 'example' => '60', 'title' => '', ], ], [ 'name' => 'Category', 'in' => 'query', 'schema' => ['description' => 'The type of the snapshot. Valid values:'."\n" ."\n" .'- Standard: standard snapshot'."\n" ."\n" .'- Flash: local snapshot'."\n" ."\n" .'- Archive: archive snapshot'."\n" ."\n" .'Default value: Standard.', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '9F8163A8-F5DE-47A2-A572-4E062D223E09', 'title' => ''], 'MonitorData' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DataPoint' => [ 'description' => 'The monitoring data of snapshot sizes.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Size' => ['description' => 'The total size of snapshots. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '243036848128', 'title' => ''], 'TimeStamp' => ['description' => 'The timestamp that corresponds to a snapshot size.', 'type' => 'string', 'example' => '2019-05-10T04:00:00Z', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidStartTime.Malformed', 'errorMessage' => 'The specified parameter "StartTime" is not valid.', 'description' => 'The specified StartTime parameter does not conform to the specification.'], ['errorCode' => 'InvalidEndTime.Malformed', 'errorMessage' => 'The specified parameter "EndTime" is not valid.', 'description' => 'The specified EndTime parameter is invalid.'], ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter "Period" is not valid.', 'description' => ''], ['errorCode' => 'InvalidStartTime.TooEarly', 'errorMessage' => 'The specified parameter "StartTime" is too early.', 'description' => ''], ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => ''], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeSnapshotMonitorData', 'description' => '## [](#)Usage notes'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- Up to 400 monitoring data entries can be returned at a time. Make sure that the `TotalCount` value does not exceed 400. The value is calculated by using the following formula: `TotalCount = (EndTime - StartTime)/Period`. If the TotalCount value is greater than 400, the `InvalidParameter.TooManyDataQueried` error is returned.'."\n" ."\n" .'- You can query the monitoring data of snapshot sizes in the last 30 days. If the value of `StartTime` is more than 30 days earlier than the current time, an error is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSnapshotMonitorData'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSnapshotMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9F8163A8-F5DE-47A2-A572-4E062D223E09\\",\\n \\"MonitorData\\": {\\n \\"DataPoint\\": [\\n {\\n \\"Size\\": 243036848128,\\n \\"TimeStamp\\": \\"2019-05-10T04:00:00Z\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeSnapshotPackage' => [ 'summary' => 'Queries the Object Storage Service (OSS) storage plans that you purchased in an Alibaba Cloud region. OSS storage plans can be used to offset the storage fees for standard snapshots instead of local snapshots.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28998', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Pages start from page 1.'."\n" ."\n" .'Default value: 1', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Maximum value: 1 to 100.'."\n" ."\n" .'Default value: 10', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the request.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of OSS storage plans.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'SnapshotPackages' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SnapshotPackage' => [ 'description' => 'Details about the OSS storage plans.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'DisplayName' => ['description' => 'The name of the OSS storage plan.', 'type' => 'string', 'example' => 'testDisplayName', 'title' => ''], 'EndTime' => ['description' => 'The time when the OSS storage plan expires. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2018-11-30T06:32:31Z', 'title' => ''], 'StartTime' => ['description' => 'The time when the OSS storage plan was purchased. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2017-11-30T06:32:31Z', 'title' => ''], 'InitCapacity' => ['description' => 'The maximum storage capacity offered by the OSS storage plan.', 'type' => 'integer', 'format' => 'int64', 'example' => '500', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeSnapshotPackage', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-12-04T05:54:57.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSnapshotPackage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSnapshotPackage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"SnapshotPackages\\": {\\n \\"SnapshotPackage\\": [\\n {\\n \\"DisplayName\\": \\"testDisplayName\\",\\n \\"EndTime\\": \\"2018-11-30T06:32:31Z\\",\\n \\"StartTime\\": \\"2017-11-30T06:32:31Z\\",\\n \\"InitCapacity\\": 500\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeSnapshots' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '28999', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID. Specify this parameter to query snapshot information of disks attached to the instance.', 'type' => 'string', 'required' => false, 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the disk.', 'type' => 'string', 'required' => false, 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'SnapshotLinkId', 'in' => 'query', 'schema' => ['description' => 'The ID of the snapshot chain.', 'type' => 'string', 'required' => false, 'example' => 'sl-bp1grgphbcc9brb5****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the disk. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SnapshotIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of snapshots. The value is a JSON array that consists of up to 100 snapshot IDs. Separate the IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => '["s-bp67acfmxazb4p****", "s-bp67acfmxazb5p****", … "s-bp67acfmxazb6p****"]', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging instead.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging instead.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Obtained from the response of the previous request.', 'type' => 'string', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for paging. Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'SnapshotName', 'in' => 'query', 'schema' => ['description' => 'The name of the snapshot.', 'type' => 'string', 'required' => false, 'example' => 'testSnapshotName', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the snapshot. Valid values: '."\n" .' '."\n" .'- progressing: The snapshot is being created.'."\n" .'- accomplished: The snapshot is created.'."\n" .'- failed: The snapshot failed to be created.'."\n" .'- all (default): All snapshot statuses.', 'type' => 'string', 'required' => false, 'example' => 'all', 'title' => ''], ], [ 'name' => 'SnapshotType', 'in' => 'query', 'schema' => ['description' => 'The type of automatic creation. Valid values: '."\n" .' '."\n" .'- auto: automatic snapshot.'."\n" .'- user: manual snapshot.'."\n" .'- all (default): All automatic creation types.', 'type' => 'string', 'required' => false, 'example' => 'all', 'title' => ''], ], [ 'name' => 'Filter.1.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `CreationStartTime`. When you specify both `Filter.1.Key` and `Filter.1.Value`, you can query resources created after the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'CreationStartTime', 'title' => ''], ], [ 'name' => 'Filter.2.Key', 'in' => 'query', 'schema' => ['description' => 'The filter key used to query resources. Set the value to `CreationEndTime`. When you specify both `Filter.2.Key` and `Filter.2.Value`, you can query resources created before the specified point in time.', 'type' => 'string', 'required' => false, 'example' => 'CreationEndTime', 'title' => ''], ], [ 'name' => 'Filter.1.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify `Filter.1.Key`. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC.', 'type' => 'string', 'required' => false, 'example' => '2019-12-13T17:00Z', 'title' => ''], ], [ 'name' => 'Filter.2.Value', 'in' => 'query', 'schema' => ['description' => 'The filter value used to query resources. When you specify this parameter, you must also specify `Filter.2.Key`. Specify the time in the `yyyy-MM-ddTHH:mmZ` format in UTC.', 'type' => 'string', 'required' => false, 'example' => '2019-12-13T22:00Z', 'title' => ''], ], [ 'name' => 'Usage', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the snapshot has been used to create images or disks. Valid values: '."\n" ."\n" .'- image: The snapshot has been used to create custom images.'."\n" .'- disk: The snapshot has been used to create disks.'."\n" .'- image_disk: The snapshot has been used to create both data disks and custom images.'."\n" .'- none: The snapshot has not been used.', 'type' => 'string', 'required' => false, 'example' => 'none', 'title' => ''], ], [ 'name' => 'SourceDiskType', 'in' => 'query', 'schema' => ['description' => 'The type of the source disk. Valid values: '."\n" .' '."\n" .'- system: system disk.'."\n" .'- data: data disk.'."\n" ."\n" .'> The value is case-insensitive.', 'type' => 'string', 'required' => false, 'example' => 'system', 'title' => ''], ], [ 'name' => 'Encrypted', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to filter encrypted snapshots. Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group. When you use this parameter to filter resources, the resource count cannot exceed 1000.'."\n" ."\n" .'> Filtering by default resource group is not supported.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run, without performing the actual request.'."\n" ."\n" .'- true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. If the request fails the dry run, an error message is returned. If the request passes the dry run, the DryRunOperation error code is returned.'."\n" .'- false (default): performs a dry run and sends the request. If the request passes the dry run, a 2xx HTTP status code is returned and the operation is performed.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'KMSKeyId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Key Management Service (KMS) key used by the data disk.', 'type' => 'string', 'required' => false, 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], ], [ 'name' => 'Category', 'in' => 'query', 'schema' => ['description' => 'The category of the snapshot. Valid values:'."\n" .'- Standard: standard snapshot.'."\n" .'- Flash: local snapshot. This value is about to be deprecated. Local snapshots have been replaced by the snapshot instant access feature. The metric description is as follows:'."\n" .' - If you used local snapshots before December 14, 2020, you can use this parameter. The parameter is active.'."\n" .' - If you did not use local snapshots before December 14, 2020, you cannot use this parameter.'."\n" .'- archive: archive snapshot.'."\n" ."\n\n" ."\n" .'For more information, see [Chinese site notice on snapshot service upgrade and new billing items on December 14](https://help.aliyun.com/noticelist/articleid/1060755542.html).', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the resource.'."\n" ."\n" .'> For better compatibility, use Tag.N.Key instead.', 'type' => 'string', 'required' => false, 'example' => 'SnapshotTest', 'title' => ''], 'Key' => ['description' => 'The tag key of the snapshot. Valid values of N: 1 to 20.'."\n" ."\n" .'If you use a single tag to filter resources, the resource count with the specified tag cannot exceed 1000. If you use multiple tags to filter resources, the resource count with all specified tags attached cannot exceed 1000. If the resource count exceeds 1000, call the [ListTagResources](~~110425~~) operation.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the snapshot. Valid values of N: 1 to 20.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the resource.'."\n" ."\n" .'> For better compatibility, use Tag.N.Value instead.', 'type' => 'string', 'required' => false, 'example' => 'SnapshotTest', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'NextToken' => ['description' => 'The pagination token for the next query.', 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a4883', 'title' => ''], 'PageSize' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging instead.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => '> This parameter is about to be deprecated. Use NextToken and MaxResults for paging instead.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of snapshots.'."\n" ."\n" .'> When you use `MaxResults` and `NextToken` parameters for paging, the returned `TotalCount` parameter value is invalid.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Snapshots' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Snapshot' => [ 'description' => 'The details of the snapshots.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the snapshot. Valid values:'."\n" ."\n" .'- progressing: The snapshot is being created.'."\n" .'- accomplished: The snapshot is created.'."\n" .'- failed: The snapshot failed to be created.', 'type' => 'string', 'example' => 'accomplished', 'title' => ''], 'CreationTime' => ['description' => 'The time when the snapshot was created. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2020-08-20T14:52:28Z', 'title' => ''], 'Progress' => ['description' => 'The progress of the snapshot creation, in percentage.', 'type' => 'string', 'example' => '100%', 'title' => ''], 'InstantAccess' => ['description' => 'Indicates whether the snapshot instant access feature is enabled. Valid values:'."\n" ."\n" .'- true: Enabled. Enterprise SSDs and ESSD Entry disks have this feature active by default.'."\n" .'- false: Disabled. The snapshot is a standard snapshot without the instant access feature enabled.'."\n" ."\n" .'> This parameter is deprecated. Standard snapshots for enterprise SSDs have been upgraded to [instant access by default](~~193667~~). No additional configuration or cost is required.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'Available' => ['description' => 'Indicates whether the snapshot can be used to create disks, roll back disks, or share snapshots. Valid values:'."\n" ."\n" .'- true: available.'."\n" .'- false: unavailable.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'RemainTime' => ['description' => 'The remaining time required to create the snapshot, in seconds.', 'type' => 'integer', 'format' => 'int32', 'example' => '38', 'title' => ''], 'SourceDiskSize' => ['description' => 'The capacity of the source disk. Unit: GiB.', 'type' => 'string', 'example' => '40', 'title' => ''], 'RetentionDays' => ['description' => 'The number of days for which the automatic snapshot is retained.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], 'SourceDiskType' => ['description' => 'The type of the source disk. Valid values:'."\n" ."\n" .'- system'."\n" .'- data', 'type' => 'string', 'example' => 'system', 'title' => ''], 'SourceStorageType' => ['description' => 'The type of the source disk.'."\n" ."\n" .'> This parameter is about to be deprecated. For better compatibility, use other parameters instead.', 'type' => 'string', 'example' => 'disk', 'title' => ''], 'Usage' => ['description' => 'Indicates whether the snapshot has been used to create images or disks. Valid values:'."\n" ."\n" .'- image: custom image.'."\n" .'- disk: disk.'."\n" .'- image_disk: custom image and data disk.'."\n" .'- none: not used.', 'type' => 'string', 'example' => 'image', 'title' => ''], 'LastModifiedTime' => ['description' => 'The time when the snapshot was last modified. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2020-08-25T14:18:09Z', 'title' => ''], 'Encrypted' => ['description' => 'Indicates whether the snapshot is encrypted. Valid values:'."\n" .' '."\n" .'- true: encrypted.'."\n" .'- false: not encrypted.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'SnapshotType' => ['description' => 'The type of automatic creation. Valid values:'."\n" ."\n" .'- auto or timer: automatic snapshot.'."\n" .'- user: manual snapshot.'."\n" .'- all: all automatic creation types.', 'type' => 'string', 'example' => 'all', 'title' => ''], 'SourceDiskId' => ['description' => 'The ID of the source disk. This field is retained even if the source disk has been released.', 'type' => 'string', 'example' => 'd-bp67acfmxazb4ph****', 'title' => ''], 'SnapshotName' => ['description' => 'The display name of the snapshot. This value is returned if a display name was specified when the snapshot was created.', 'type' => 'string', 'example' => 'testSnapshotName', 'title' => ''], 'InstantAccessRetentionDays' => ['description' => 'The retention period of the snapshot instant access feature. After the retention period expires, the snapshot instant access feature is automatically disabled.'."\n" ."\n" .'The default value is the same as the value of `RetentionDays`.'."\n" ."\n" .'> This parameter is deprecated. Standard snapshots for enterprise SSDs have been upgraded to [instant access by default](~~193667~~). No additional configuration or cost is required.', 'type' => 'integer', 'format' => 'int32', 'example' => '30', 'title' => ''], 'Description' => ['description' => 'The description of the snapshot.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'SnapshotId' => ['description' => 'The ID of the snapshot.', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the snapshot.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group.', 'type' => 'string', 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], 'Category' => ['description' => 'The category of the snapshot. Valid values:'."\n" .'- Standard: standard snapshot.'."\n" .'- Flash: local snapshot. This value is about to be deprecated. Local snapshots have been replaced by the snapshot instant access feature.'."\n" .'- archive: archive snapshot.', 'type' => 'string', 'example' => 'standard', 'title' => ''], 'KMSKeyId' => ['description' => 'The ID of the Key Management Service (KMS) key used by the data disk.', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], 'SnapshotSN' => ['description' => 'The serial number of the snapshot.', 'type' => 'string', 'example' => '64472-116742336-61976****', 'title' => ''], 'ProductCode' => ['description' => 'The product code inherited from the Alibaba Cloud Marketplace image.', 'type' => 'string', 'example' => 'jxsc000****', 'title' => ''], 'SourceSnapshotId' => ['title' => '', 'description' => 'The ID of the source snapshot.', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****'], 'SourceRegionId' => ['title' => '', 'description' => 'The region ID of the source snapshot.', 'type' => 'string', 'example' => 'cn-hangzhou'], 'FullSnapshotSizeInBytes' => ['type' => 'integer', 'format' => 'int64', 'example' => '65535', 'description' => '', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value of the snapshot.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key of the snapshot.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'SnapshotLinkId' => ['title' => '', 'description' => 'The ID of the snapshot chain associated with the snapshot.', 'type' => 'string', 'example' => 'sl-bp1grgphbcc9brb5****'], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTag.Mismatch', 'errorMessage' => 'The specified Tag.n.Key and Tag.n.Value are not match.', 'description' => 'The specified Tag.N.Key and Tag.N.Value parameters do not correspond to each other.'], ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ], 403 => [ ['errorCode' => 'InvalidSnapshotIds.Malformed', 'errorMessage' => 'The amount of specified specified snapshot Ids exceeds the limit.', 'description' => ''], ['errorCode' => 'InvalidSnapshotCategory.Malformed', 'errorMessage' => 'The specified Category is not valid.', 'description' => 'The specified Category parameter is invalid.'], ['errorCode' => 'InvalidCategory.SnapshotLinkMismatch', 'errorMessage' => 'The specified category does not match the actual category of the snapshot link.', 'description' => 'The specified category does not match the snapshot chain.'], ], [ ['errorCode' => 'InvalidFilterKey.NotFound', 'errorMessage' => 'The specified FilterKey is not found.', 'description' => 'The specified filter key does not exist.'], ['errorCode' => 'InvalidFilterValue', 'errorMessage' => 'The specified FilterValue exceeds the limit.', 'description' => 'The specified filter value is invalid.'], ['errorCode' => 'InvalidUsage', 'errorMessage' => 'The specifed Usage is not valid.', 'description' => 'The specified Usage parameter is invalid.'], ['errorCode' => 'InvalidSourceDiskType', 'errorMessage' => 'The specifed SourceDiskType is not valid.', 'description' => ''], ['errorCode' => 'InvalidStatus.NotFound', 'errorMessage' => 'The specified Status is not found.', 'description' => ''], ['errorCode' => 'InvalidSnapshotType.NotFound', 'errorMessage' => 'The specfied SnapshotType is not found.', 'description' => ''], ['errorCode' => 'InvalidSnapshotLinkId.NotFound', 'errorMessage' => 'The specified snapshot link is not found.', 'description' => 'The specified snapshot chain does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Query disk snapshot list', 'summary' => 'Queries the snapshot list of a disk, including snapshot status, remaining time for a snapshot being created, and automatic snapshot retention days.', 'description' => 'InstanceId, DiskId, and SnapshotIds are not required request parameters, but you can use them to build filter logic. These parameters are evaluated by using a logical AND.'."\n" ."\n" .'When you invoke an API operation by using Cloud Assistant CLI, specify request parameter values in the required formats based on their data types. For details, see [CLI parameter format](~~110340~~).'."\n" ."\n" .'Request examples:'."\n" .'
'."\n" .'Query the snapshot list of all disks attached to an ECS instance in the China (Hangzhou) region'."\n" ."\n" .'```'."\n" .'RegionId: cn-hangzhou, // Set the region to China (Hangzhou).'."\n" .'InstanceId: i-bp1fh7by6d9mw7zr**** // Set the instance ID to query.'."\n" ."\n" .'```'."\n" .'
'."\n" ."\n" .'
'."\n" .'Query the snapshot information of a specific disk in the China (Hangzhou) region'."\n" ."\n" .'```'."\n" .'RegionId: cn-hangzhou, // Set the region to China (Hangzhou).'."\n" .'DiskId: d-bp10e7ej8z743dmu**** // Set the disk ID to query.'."\n" .'```'."\n" .'
'."\n" ."\n" .'
'."\n" .'Query the information of two snapshots in the China (Hangzhou) region by snapshot ID'."\n" ."\n" .'```'."\n" .'RegionId: cn-hangzhou, // Set the region to China (Hangzhou).'."\n" .'SnapshotIds: ["d-bp10e7ej8z743dmu****", "s-bp19vd1lorzgzt2s****"] // Set the array of snapshot IDs to query.'."\n" ."\n" .'```'."\n" .'
'."\n" ."\n" .'
'."\n" .'Query the snapshot information created after a specific point in time in the China (Hangzhou) region'."\n" ."\n" .'```'."\n" .'RegionId: cn-hangzhou, // Set the region to China (Hangzhou).'."\n" .'Filter.1.Key: CreationStartTime, // Set the filter key for the creation start time.'."\n" .'Filter.1.Value: 2024-11-27T00:00Z.'."\n" ."\n" .'```'."\n" .'
', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-05-22T06:15:42.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-02-01T09:31:57.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-09-18T05:33:55.000Z', 'description' => 'Error codes changed, Response parameters changed'], ['createdAt' => '2021-06-09T09:24:20.000Z', 'description' => 'Error codes changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSnapshots'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSnapshots', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/{#snapshotId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a4883\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"Snapshots\\": {\\n \\"Snapshot\\": [\\n {\\n \\"Status\\": \\"accomplished\\",\\n \\"CreationTime\\": \\"2020-08-20T14:52:28Z\\",\\n \\"Progress\\": \\"100%\\",\\n \\"InstantAccess\\": false,\\n \\"Available\\": false,\\n \\"RemainTime\\": 38,\\n \\"SourceDiskSize\\": \\"40\\",\\n \\"RetentionDays\\": 30,\\n \\"SourceDiskType\\": \\"system\\",\\n \\"SourceStorageType\\": \\"disk\\",\\n \\"Usage\\": \\"image\\",\\n \\"LastModifiedTime\\": \\"2020-08-25T14:18:09Z\\",\\n \\"Encrypted\\": false,\\n \\"SnapshotType\\": \\"all\\",\\n \\"SourceDiskId\\": \\"d-bp67acfmxazb4ph****\\",\\n \\"SnapshotName\\": \\"testSnapshotName\\",\\n \\"InstantAccessRetentionDays\\": 30,\\n \\"Description\\": \\"testDescription\\",\\n \\"SnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"ResourceGroupId\\": \\"rg-bp67acfmxazb4p****\\",\\n \\"Category\\": \\"standard\\",\\n \\"KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\",\\n \\"SnapshotSN\\": \\"64472-116742336-61976****\\",\\n \\"ProductCode\\": \\"jxsc000****\\",\\n \\"SourceSnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"SourceRegionId\\": \\"cn-hangzhou\\",\\n \\"FullSnapshotSizeInBytes\\": 65535,\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"SnapshotLinkId\\": \\"sl-bp1grgphbcc9brb5****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'translator' => 'machine', ], 'DescribeSnapshotsUsage' => [ 'summary' => 'Queries the number of snapshots that are stored in a region and the total size of the snapshots.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29293', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the snapshot. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SnapshotSize' => ['description' => 'The total size of snapshots stored in the current region. Unit: bytes.', 'type' => 'integer', 'format' => 'int64', 'example' => '122', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'SnapshotCount' => ['description' => 'The number of snapshots stored in the current region.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidParam.RegionId', 'errorMessage' => 'The specified region is not exist.', 'description' => 'The specified region does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeSnapshotsUsage', 'description' => '## [](#)Usage notes'."\n" ."\n" .'If you want to view the snapshot usage of each disk in the current region, we recommend that you call the [DescribeSnapshotLinks](~~55837~~) operation to query snapshot chain information.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSnapshotsUsage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeSnapshotsUsage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SnapshotSize\\": 122,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"SnapshotCount\\": 5\\n}","type":"json"}]', ], 'DescribeSpotAdvice' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29001', 'abilityTreeNodes' => ['FEATUREecs2UXJI2'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Cores', 'in' => 'query', 'schema' => ['description' => 'The number of vCPUs of the instance type. For more information, see [Instance families](~~25378~~).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'Memory', 'in' => 'query', 'schema' => ['description' => 'The memory size of the instance type. Unit: GiB. For more information, see [Instance families](~~25378~~).', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '8.0', 'title' => ''], ], [ 'name' => 'MinCores', 'in' => 'query', 'schema' => ['description' => 'The minimum number of vCPUs of the instance type. For more information, see [Instance families](~~25378~~).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'MinMemory', 'in' => 'query', 'schema' => ['description' => 'The minimum memory size of the instance type. For more information, see [Instance families](~~25378~~).', 'type' => 'number', 'format' => 'float', 'required' => false, 'example' => '8.0', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID.'."\n" ."\n" .'This parameter is left empty by default, which indicates that all zones in the specified region are queried.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-i', 'title' => ''], ], [ 'name' => 'InstanceTypeFamily', 'in' => 'query', 'schema' => ['description' => 'The instance family. For more information, see [Instance families](~~25378~~).', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5', 'title' => ''], ], [ 'name' => 'InstanceFamilyLevel', 'in' => 'query', 'schema' => ['description' => 'The level of the instance family. Valid values:'."\n" ."\n" .'- EntryLevel.'."\n" ."\n" .'- EnterpriseLevel.'."\n" ."\n" .'- CreditEntryLevel. For more information, see [Overview of burstable instances](~~59977~~).'."\n" ."\n" .'This parameter is left empty by default, which indicates that instance families at all levels are queried.', 'type' => 'string', 'required' => false, 'example' => 'EntryLevel', 'title' => ''], ], [ 'name' => 'GpuSpec', 'in' => 'query', 'schema' => ['description' => 'The GPU type. Valid values:'."\n" ."\n" .'- NVIDIA P4'."\n" ."\n" .'- NVIDIA T4'."\n" ."\n" .'- NVIDIA P100'."\n" ."\n" .'- NVIDIA V100'."\n" ."\n" .'This parameter is left empty by default, which indicates that all GPU types are queried. For more information, see [GPU-accelerated compute-optimized and vGPU-accelerated instance families](~~108496~~).', 'type' => 'string', 'required' => false, 'example' => 'NVIDIA T4', 'title' => ''], ], [ 'name' => 'GpuAmount', 'in' => 'query', 'schema' => ['description' => 'The number of GPUs that a GPU-accelerated instance has. For information about the valid values, see [GPU-accelerated compute optimized instance types](~~108496~~).', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '2', 'title' => ''], ], [ 'name' => 'InstanceTypes', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The instance types. You can specify up to 10 instance types.', 'type' => 'array', 'items' => ['description' => 'The instance type. For more information, see [Instance families](~~25378~~).', 'type' => 'string', 'required' => false, 'example' => 'ecs.c5.large', 'title' => ''], 'required' => false, 'example' => 'ecs.c5.large', 'maxItems' => 10, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'AvailableSpotZones' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableSpotZone' => [ 'description' => 'Details about spot instances in the zones of the specified region.'."\n" ."\n" .'> The return values are sorted based on the historical percentages of average spot instance prices relative to pay-as-you-go instance prices for instance types.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-i', 'title' => ''], 'AvailableSpotResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'AvailableSpotResource' => [ 'description' => 'Details about spot instances in the previous 30 days, including the release rate of spot instances and percentages of average spot instance prices relative to pay-as-you-go instance prices.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'InterruptRateDesc' => ['description' => 'The release rate range of spot instances in the previous 30 days, which corresponds to the `InterruptionRate` value. Valid values:'."\n" ."\n" .'- 0-3%'."\n" ."\n" .'- 3-5%'."\n" ."\n" .'- 5-10%'."\n" ."\n" .'- 10-100%', 'type' => 'string', 'example' => '0-3%', 'title' => ''], 'AverageSpotDiscount' => ['description' => 'The percentage of the average spot instance price relative to the pay-as-you-go instance price in the previous 30 days. Unit: %. Valid values: 1 to 100.'."\n" ."\n" .'You can calculate the average spot instance price based on the return value. For example, if the pay-as-you-go instance price is 1 and the return value of this parameter is 20, the average spot instance price in the previous 30 days is 0.2.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'InstanceType' => ['description' => 'The instance type.', 'type' => 'string', 'example' => 'ecs.c5.large', 'title' => ''], 'InterruptionRate' => ['description' => 'The average release rate of spot instances in the previous 30 days. Unit: %.', 'type' => 'number', 'format' => 'float', 'example' => '0', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Invalid.SaleStrategy', 'errorMessage' => 'The specified saleStrategy is not valid.', 'description' => ''], ['errorCode' => 'Invalid.Param', 'errorMessage' => 'The input parameter DestinationResource that is mandatory for processing this request is not supplied.', 'description' => 'The specified DestinationResource parameter is invalid.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => 'The specified RegionId parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidDedicatedHostId.NotFound', 'errorMessage' => 'The specified DedicatedHostId does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidParam.TypeAndCpuMem.Conflict', 'errorMessage' => 'The specified \'InstanceType\' and \'Cores\',\'Memory\' are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParam.Cores', 'errorMessage' => 'The specified parameter \'Cores\' should not be empty', 'description' => ''], ['errorCode' => 'InvalidParam.Memory', 'errorMessage' => 'The specified parameter \'Memory\' should not be empty', 'description' => ''], ['errorCode' => 'OperationDenied.RegionIdNotSupported', 'errorMessage' => 'region not support spot duration instance.', 'description' => ''], ['errorCode' => 'OperationDenied.FlavorNotSupported', 'errorMessage' => 'flavor not support spot duration instance.', 'description' => ''], ['errorCode' => 'OperationDenied.TimestampNotSupported', 'errorMessage' => 'timestamp not support spot duration instance.', 'description' => ''], ], [ ['errorCode' => 'Invalid.RegionId', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'Unavailable.Regions', 'errorMessage' => 'The available regions does not exists', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'Invalid.ResourceType', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => 'The specified resource type is invalid.'], ['errorCode' => 'Invalid.DestinationResource', 'errorMessage' => 'The specified DestinationResource is not valid.', 'description' => 'The specified DestinationResource parameter is invalid.'], ['errorCode' => 'Invalid.IoOptimized', 'errorMessage' => 'The specified IoOptimized is not valid.', 'description' => 'The specified IoOptimized parameter is invalid.'], ['errorCode' => 'Invalid.NetworkType', 'errorMessage' => 'The specified NetworkType is not valid.', 'description' => 'The specified NetworkType parameter is invalid.'], ], ], 'title' => 'DescribeSpotAdvice', 'summary' => 'Queries information about spot instances in a region in the previous 30 days. The information includes the average release rate of spot instances and the percentage of the average spot instance price relative to the pay-as-you-go instance price.', 'description' => '- This operation is applicable only to I/O optimized spot instances that reside in virtual private clouds (VPCs).'."\n" ."\n" .'- You can use one of the following methods to call this operation:'."\n" ."\n" .' - Specify `Cores` and `Memory` or `MinCores` and `MinMemory` to query information about the instance types that meet the specified vCPU and memory requirements.'."\n" ."\n" .' - Specify `InstanceTypes.N` to query information about the specified instance types.'."\n" ."\n" .' - Specify `Cores` and `Memory` or `MinCores` and `MinMemory`, and then specify `InstanceTypeFamily` or `InstanceFamilyLevel` to query information about the instance types that meet the specified vCPU and memory requirements within the specified instance family or at a specified instance family level.'."\n" ."\n" .'- You can calculate the average price of spot instances based on the percentage of the average spot instance price relative to the pay-as-you-go instance price and the pay-as-you-go instance price.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSpotAdvice'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"AvailableSpotZones\\": {\\n \\"AvailableSpotZone\\": [\\n {\\n \\"ZoneId\\": \\"cn-hangzhou-i\\",\\n \\"AvailableSpotResources\\": {\\n \\"AvailableSpotResource\\": [\\n {\\n \\"InterruptRateDesc\\": \\"0-3%\\",\\n \\"AverageSpotDiscount\\": 20,\\n \\"InstanceType\\": \\"ecs.c5.large\\",\\n \\"InterruptionRate\\": 0\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeSpotPriceHistory' => [ 'summary' => 'Queries the historical prices of spot instances. You can query price data from the last 30 days. The historical price data helps you set a reasonable maximum price for a spot instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29294', 'abilityTreeNodes' => ['FEATUREecs2UXJI2'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou-g', 'title' => ''], ], [ 'name' => 'NetworkType', 'in' => 'query', 'schema' => ['description' => 'The network type of the spot instance. Valid values:'."\n" ."\n" .'- vpc: virtual private cloud (VPC).'."\n" .'- classic: classic network. This feature has been retired. For more information, see [Retirement notice](~~2833134~~).', 'type' => 'string', 'required' => true, 'example' => 'vpc', 'title' => ''], ], [ 'name' => 'InstanceType', 'in' => 'query', 'schema' => ['description' => 'The instance type.', 'type' => 'string', 'required' => true, 'example' => 'ecs.t1.xsmall', 'title' => ''], ], [ 'name' => 'SpotDuration', 'in' => 'query', 'schema' => ['description' => 'The protection period of the spot instance. Unit: hours. Default value: 1. Valid values:'."\n" .'- 1: After a spot instance is created, Alibaba Cloud ensures that the instance is not automatically released within 1 hour. After 1 hour, the system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" .'- 0: After a spot instance is created, Alibaba Cloud does not ensure that the instance runs for 1 hour. The system compares the bid price with the market price and checks the resource inventory to determine whether to retain automatic release the instance.'."\n" ."\n" .'Alibaba Cloud sends an ECS system event notification 5 minutes before the instance is released. Spot instances are billed by second. Specify an appropriate protection period based on the expected task execution duration.'."\n" ."\n" .'> This parameter takes effect only when SpotStrategy is set to SpotWithPriceLimit or SpotAsPriceGo.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'IoOptimized', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the spot instance is I/O optimized. Valid values:'."\n" ."\n" .'- optimized: The spot instance is an I/O optimization instance.'."\n" ."\n" .'- none: The spot instance is not an I/O optimization instance.'."\n" ."\n" .'Default value for Generation I instance families: none.'."\n" ."\n" .'Default value for other instance families: optimized.', 'type' => 'string', 'required' => false, 'example' => 'optimized', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query the historical prices of spot instances. The maximum time range between the start time and end time is 30 days. Specify the time in the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC.'."\n" ."\n" .'Default value: null, which indicates 3 hours before the end time.', 'type' => 'string', 'required' => false, 'example' => '2017-08-22T08:45:08Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query the historical prices of spot instances. Specify the time in the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC.'."\n" ."\n" .'Default value: null, which indicates the current time.', 'type' => 'string', 'required' => false, 'example' => '2017-08-22T08:45:08Z', 'title' => ''], ], [ 'name' => 'OSType', 'in' => 'query', 'schema' => ['description' => 'The type of the operating system platform. Valid values:'."\n" ."\n" .'- linux.'."\n" .'- windows.', 'type' => 'string', 'required' => false, 'example' => 'linux', 'title' => ''], ], [ 'name' => 'Offset', 'in' => 'query', 'schema' => ['description' => 'The row from which the query starts.'."\n" ."\n" .'Default value: 0.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '0', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'Currency' => ['description' => 'The currency unit of the price.'."\n" ."\n" .'China site: CNY.'."\n" ."\n" .'International site: USD.', 'type' => 'string', 'example' => 'CNY', 'title' => ''], 'NextOffset' => ['description' => 'The start row of the next page. Set the `Offset` parameter to this value to query the next page of data.', 'type' => 'integer', 'format' => 'int32', 'example' => '1000', 'title' => ''], 'SpotPrices' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'SpotPriceType' => [ 'description' => 'The details of the spot prices.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'IoOptimized' => ['description' => 'Indicates whether the spot instance is an I/O optimization instance.', 'type' => 'string', 'example' => 'optimized', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the spot instance.', 'type' => 'string', 'example' => 'cn-hangzhou-c', 'title' => ''], 'SpotPrice' => ['description' => 'The price of the spot instance.', 'type' => 'number', 'format' => 'float', 'example' => '0.036', 'title' => ''], 'Timestamp' => ['description' => 'The time of the price in the `yyyy-MM-ddTHH:mm:ssZ` format.', 'type' => 'string', 'example' => '2019-11-19T06:00:00Z', 'title' => ''], 'NetworkType' => ['description' => 'The network type of the spot instance.', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'InstanceType' => ['description' => 'The instance type of the spot instance.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'OriginPrice' => ['description' => 'The original price of the pay-as-you-go instance.', 'type' => 'number', 'format' => 'float', 'example' => '0.354', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidParams.StartTime', 'errorMessage' => '%s', 'description' => 'The specified StartTime parameter is invalid.'], ['errorCode' => 'InvalidParams.EndTime', 'errorMessage' => '%s', 'description' => 'The specified EndTime parameter is invalid.'], ['errorCode' => 'Abs.Abs.InvalidSpotInstanceUID', 'errorMessage' => '%s', 'description' => 'The preemptible instance ID is invalid.'], ['errorCode' => 'InvalidParams.NetworkType', 'errorMessage' => '%s', 'description' => 'The specified NetworkType parameter is invalid.'], ['errorCode' => 'InvalidParams.IoOptimized', 'errorMessage' => '%s', 'description' => 'The specified IoOptimized parameter is invalid.'], ['errorCode' => 'InvalidParams.OSType', 'errorMessage' => '%s', 'description' => 'The specified OSType parameter is invalid.'], ['errorCode' => 'Abs.IoOptimized.ValueNotSupported', 'errorMessage' => '%s', 'description' => 'The I/O optimization attribute of the instance is invalid. Check whether the specified IoOptimized parameter is valid.'], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The specified zone does not exist.', 'description' => 'The specified zone ID does not exist.'], ['errorCode' => 'InvalidParams.ZoneId', 'errorMessage' => '%s', 'description' => 'The specified ZoneId parameter is invalid.'], ['errorCode' => 'InvalidParams.RegionId', 'errorMessage' => '%s', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidParams.InstanceType', 'errorMessage' => '%s', 'description' => 'The specified InstanceType parameter is invalid.'], ['errorCode' => 'InvalidParams.PageSize', 'errorMessage' => '%s', 'description' => 'The specified PageSize parameter is invalid.'], ['errorCode' => 'InvalidParams.Offset', 'errorMessage' => '%s', 'description' => 'The specified Offset parameter is invalid.'], ['errorCode' => 'InvalidInstanceType.ValueNotSupported', 'errorMessage' => '%s', 'description' => 'The operation is not supported by the specified instance type.'], ['errorCode' => 'DependencyViolation.IoOptimized', 'errorMessage' => 'The specified instancetype must be IoOptimized instance.', 'description' => 'The specified instance type must be I/O optimized. Check your instance type and try again.'], ['errorCode' => 'InvalidSpotDuration', 'errorMessage' => 'The specified SpotDuration is not valid.', 'description' => 'The specified SpotDuration parameter is invalid.'], ['errorCode' => 'OperationDenied.QueryFail', 'errorMessage' => 'Query spot price fail, please retry later.', 'description' => ''], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbedden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbbiden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'OperationDenied.RegionIdNotSupported', 'errorMessage' => 'region not support spot duration instance.', 'description' => ''], ['errorCode' => 'OperationDenied.FlavorNotSupported', 'errorMessage' => 'flavor not support spot duration instance.', 'description' => ''], ['errorCode' => 'OperationDenied.TimestampNotSupported', 'errorMessage' => 'timestamp not support spot duration instance.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Currency\\": \\"CNY\\",\\n \\"NextOffset\\": 1000,\\n \\"SpotPrices\\": {\\n \\"SpotPriceType\\": [\\n {\\n \\"IoOptimized\\": \\"optimized\\",\\n \\"ZoneId\\": \\"cn-hangzhou-c\\",\\n \\"SpotPrice\\": 0.036,\\n \\"Timestamp\\": \\"2019-11-19T06:00:00Z\\",\\n \\"NetworkType\\": \\"vpc\\",\\n \\"InstanceType\\": \\"ecs.g5.large\\",\\n \\"OriginPrice\\": 0.354\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query historical prices of spot instances', 'description' => '- Only I/O optimized spot instances are supported.'."\n" .'- The data returned by this operation may be paginated. If the response contains the `NextOffset` parameter, set the `Offset` request parameter to the value of `NextOffset` to query the next page of data.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeSpotPriceHistory'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], ], 'DescribeStorageCapacityUnits' => [ 'summary' => 'Queries the details of storage capacity units (SCUs). In the request, you can specify the name, status, or capacity of each SCU.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29003', 'abilityTreeNodes' => ['FEATUREecsTKAXF8', 'FEATUREecs70JNQP'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the SCU. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The number of the page to return.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '1', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the SCU. The name must be 2 to 128 characters in length. It must start with a letter but cannot start with `http://` or `https://`. It can contain letters, digits, colons (:), underscores (\\_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'testScuName', 'title' => ''], ], [ 'name' => 'Capacity', 'in' => 'query', 'schema' => ['description' => 'The capacity of the SCU. Unit: GiB. Valid values: 20, 40, 100, 200, 500, 1024, 2048, 5120, 10240, 20480, and 51200.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '20', 'title' => ''], ], [ 'name' => 'AllocationType', 'in' => 'query', 'schema' => ['description' => 'The allocation type. Valid values:'."\n" ."\n" .'- Normal: queries SCUs that belong to the current Alibaba Cloud account.'."\n" ."\n" .'- Shared: queries SCUs shared between the Alibaba Cloud account and RAM users.'."\n" ."\n" .'Default value: Normal.', 'type' => 'string', 'required' => false, 'example' => 'Normal', 'title' => ''], ], [ 'name' => 'StorageCapacityUnitId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the SCUs. You can specify 1 to 100 SCU IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of SCU N.', 'type' => 'string', 'required' => false, 'example' => 'scu-bp67acfmxazb4p****', 'title' => ''], 'required' => false, 'example' => 'scu-bp67acfmxazb4p****', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'Status', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The states of SCUs. The array is 1 to 4 in length.', 'type' => 'array', 'items' => ['description' => 'The status of the SCU. Valid values:'."\n" ."\n" .'- Creating: The SCUs are being created.'."\n" ."\n" .'- Active: The SCUs are enabled.'."\n" ."\n" .'- Expired: The SCUs expired.'."\n" ."\n" .'- Pending: The SCUs have not taken effect.', 'type' => 'string', 'required' => false, 'example' => 'Active', 'title' => ''], 'required' => false, 'example' => 'Active', 'maxItems' => 100, 'title' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags to add to the SCU. You can add up to 20 tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N to be added to the SCU.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N to be added to the SCU.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries returned per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the returned page.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of SCUs.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'StorageCapacityUnits' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'StorageCapacityUnit' => [ 'description' => 'Details about the SCUs.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the SCU was created.', 'type' => 'string', 'example' => '2021-08-17T02:55Z', 'title' => ''], 'Status' => ['description' => 'The status of the SCU. Valid values:'."\n" ."\n" .'- Creating: The SCUs are being created.'."\n" ."\n" .'- Active: The SCUs are in effect.'."\n" ."\n" .'- Expired: The SCUs have expired.'."\n" ."\n" .'- Pending: The SCUs have not taken effect.', 'type' => 'string', 'example' => 'Active', 'title' => ''], 'StartTime' => ['description' => 'The time when the SCU took effect.', 'type' => 'string', 'example' => '2021-08-17T02:55Z', 'title' => ''], 'Capacity' => ['description' => 'The capacity of the SCU.', 'type' => 'integer', 'format' => 'int32', 'example' => '20', 'title' => ''], 'Description' => ['description' => 'The description of the SCU.', 'type' => 'string', 'example' => 'testScuDescription', 'title' => ''], 'AllocationStatus' => ['description' => 'Indicates the allocation state of the SCU when the AllocationType parameter is set to Shared. Valid values:'."\n" ."\n" .'- allocated: The SCU is allocated to other accounts.'."\n" ."\n" .'- BeAllocated: The SCU is allocated from another account.', 'type' => 'string', 'example' => 'allocated', 'title' => ''], 'ExpiredTime' => ['description' => 'The time when the SCU expires.', 'type' => 'string', 'example' => '2021-09-17T16:00Z', 'title' => ''], 'StorageCapacityUnitId' => ['description' => 'The ID of the SCU.', 'type' => 'string', 'example' => 'scu-bp67acfmxazb4p****', 'title' => ''], 'Name' => ['description' => 'The name of the SCU.', 'type' => 'string', 'example' => 'testScuName', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the SCU.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tag key-value pairs of the SCU.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The value of tag N.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'TagKey' => ['description' => 'The key of tag N.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter.RegionId', 'errorMessage' => 'The specified RegionId should not be null.', 'description' => 'The RegionId parameter is required.'], ['errorCode' => 'InvalidParameter.Name', 'errorMessage' => 'The specified Name is invalid.', 'description' => 'The specified Name parameter is invalid.'], ['errorCode' => 'InvalidParameter.CapacityExceed', 'errorMessage' => 'The specified Capacity exceeds the limitation of quota.', 'description' => 'The specified Capacity value exceeds the maximum allowed value.'], ['errorCode' => 'InvalidAllocationType.ValueNotSupported', 'errorMessage' => 'The specified AllocationType is not supported.', 'description' => 'The specified AllocationType parameter is invalid.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeStorageCapacityUnits', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2021-08-16T10:36:10.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeStorageCapacityUnits'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeStorageCapacityUnits', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'StorageCapacityUnit', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:scu/*'], ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'StorageCapacityUnit', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:scu/{#scuId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"StorageCapacityUnits\\": {\\n \\"StorageCapacityUnit\\": [\\n {\\n \\"CreationTime\\": \\"2021-08-17T02:55Z\\",\\n \\"Status\\": \\"Active\\",\\n \\"StartTime\\": \\"2021-08-17T02:55Z\\",\\n \\"Capacity\\": 20,\\n \\"Description\\": \\"testScuDescription\\",\\n \\"AllocationStatus\\": \\"allocated\\",\\n \\"ExpiredTime\\": \\"2021-09-17T16:00Z\\",\\n \\"StorageCapacityUnitId\\": \\"scu-bp67acfmxazb4p****\\",\\n \\"Name\\": \\"testScuName\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestKey\\",\\n \\"TagKey\\": \\"TestValue\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeTags' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29007', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page for a paged query.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 50.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '50', 'example' => '50', 'title' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number of the tag list.'."\n" ."\n" .'Minimum value: 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- instance: ECS instance.'."\n" .'- disk: cloud disk.'."\n" .'- snapshot: snapshot.'."\n" .'- image: image.'."\n" .'- securitygroup: security group.'."\n" .'- volume: storage volume.'."\n" .'- eni: network interface controller (NIC).'."\n" .'- ddh: dedicated host.'."\n" .'- keypair: SSH key pair.'."\n" .'- launchtemplate: launch template.'."\n" .'- reservedinstance: reserved instance.'."\n" .'- snapshotpolicy: automatic snapshot policy.'."\n" ."\n" .'All valid values are in lowercase.', 'type' => 'string', 'required' => false, 'example' => 'snapshot', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource to which the tag is attached. For example, if the resource type (ResourceType) is instance, the resource ID is the instance ID.', 'type' => 'string', 'required' => false, 'example' => 's-946ntx4wr****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Category', 'in' => 'query', 'schema' => ['description' => "\n" .'> This parameter is about to be deprecated. To ensure compatibility, use other parameters.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags.', 'type' => 'array', 'items' => [ 'description' => 'The list of tags.', 'type' => 'object', 'properties' => [ 'key' => ['description' => 'The tag key of the resource.'."\n" ."\n" .'> To ensure compatibility, use the Tag.N.Key parameter.', 'type' => 'string', 'required' => false, 'example' => 'testkey', 'title' => ''], 'Key' => ['description' => 'The tag key of the resource. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 64 characters in length and cannot start with aliyun or acs:. The tag key cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The tag value of the resource. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with aliyun or acs:. The tag value cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], 'value' => ['description' => 'The tag value of the resource.'."\n" ."\n" .'> To ensure compatibility, use the Tag.N.Value parameter.', 'type' => 'string', 'required' => false, 'example' => 'testvalue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'B04B8CF3-4489-432D-83BA-6F128E4F2295', 'title' => ''], 'PageSize' => ['description' => 'The number of entries per page settings for the paged query. This is the paging size.', 'type' => 'integer', 'format' => 'int32', 'example' => '50', 'title' => ''], 'PageNumber' => ['description' => 'The page number of the tag list.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'TotalCount' => ['description' => 'The total number of tags.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Tags' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Tag' => [ 'description' => 'The tags that meet all filter conditions.', 'type' => 'array', 'items' => [ 'description' => 'The tags that meet all filter conditions.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'TestValue', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'TestKey', 'title' => ''], 'ResourceTypeCount' => [ 'description' => 'The resource type count.', 'type' => 'object', 'properties' => [ 'Instance' => ['description' => 'The number of instances to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '45', 'title' => ''], 'Image' => ['description' => 'The number of images to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '6', 'title' => ''], 'Ddh' => ['description' => 'The number of dedicated hosts to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'SnapshotPolicy' => ['description' => 'The number of automatic snapshot policies to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'Securitygroup' => ['description' => 'The number of security groups to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'Snapshot' => ['description' => 'The number of snapshots to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '15', 'title' => ''], 'ReservedInstance' => ['description' => 'The number of reserved instances to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '4', 'title' => ''], 'LaunchTemplate' => ['description' => 'The number of launch templates to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '6', 'title' => ''], 'Eni' => ['description' => 'The number of Elastic Network Interfaces (ENIs) to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '5', 'title' => ''], 'Disk' => ['description' => 'The number of cloud disks to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '15', 'title' => ''], 'KeyPair' => ['description' => 'The number of key pairs to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '17', 'title' => ''], 'Volume' => ['description' => 'The number of storage volumes to which the tag is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '6', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTagCount', 'errorMessage' => 'The specified tags are beyond the permitted range.', 'description' => 'The number of specified tags exceeds the upper limit.'], ['errorCode' => 'InvalidTagKey.Malformed', 'errorMessage' => 'The parameter Tag.n.Key is illegal.', 'description' => 'The specified Tag.N.Key parameter is invalid.'], ['errorCode' => 'InvalidTagValue.Malformed', 'errorMessage' => 'The parameter Tag.n.Value is illegal.', 'description' => 'The specified Tag.N.Value parameter is invalid.'], ['errorCode' => 'Invalid.TagCategory', 'errorMessage' => 'The parameter Category is illegal.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => 'The specified resource type does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Tag::2018-08-28::CountResourcesByTags'], ], 'title' => 'Queries available tags.', 'summary' => 'Queries tags available to you. You can perform a conditional query for tags based on resource type, resource ID, tag key, or tag value. The filter conditions are evaluated by using a logical AND (&&) operator, and only tags that meet all filter conditions are returned.', 'description' => 'If you specify a tag key (Tag.N.Key) without specifying a tag value (Tag.N.Value), all tag key-value pairs associated with the tag key are returned. If you specify a tag key-value pair, only the tag that is an exact match of the key-value pair is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeTags'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeTags', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"B04B8CF3-4489-432D-83BA-6F128E4F2295\\",\\n \\"PageSize\\": 50,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 1,\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\",\\n \\"ResourceTypeCount\\": {\\n \\"Instance\\": 45,\\n \\"Image\\": 6,\\n \\"Ddh\\": 1,\\n \\"SnapshotPolicy\\": 4,\\n \\"Securitygroup\\": 4,\\n \\"Snapshot\\": 15,\\n \\"ReservedInstance\\": 4,\\n \\"LaunchTemplate\\": 6,\\n \\"Eni\\": 5,\\n \\"Disk\\": 15,\\n \\"KeyPair\\": 17,\\n \\"Volume\\": 6\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeTaskAttribute' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29008', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TaskId', 'in' => 'query', 'schema' => ['description' => 'The task ID. You can call [DescribeTasks](~~25622~~) to query task IDs.', 'type' => 'string', 'required' => true, 'example' => 't-ce946ntx4wr****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2015-11-23T02:13Z', 'title' => ''], 'SupportCancel' => ['description' => 'Indicates whether the task can be canceled ([CancelTask](~~25624~~)). Valid values: '."\n" .' '."\n" .'- true: The task can be canceled. '."\n" .'- false: The task cannot be canceled.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'TotalCount' => ['description' => 'The total number of tasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'SuccessCount' => ['description' => 'The number of successful tasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'TaskAction' => ['description' => 'The name of the API operation associated with the task.', 'type' => 'string', 'example' => 'ExportImage', 'title' => ''], 'FailedCount' => ['description' => 'The number of failed tasks.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TaskStatus' => ['description' => 'The task status.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'TaskProcess' => ['description' => 'The task progress.', 'type' => 'string', 'example' => '100%', 'title' => ''], 'FinishedTime' => ['description' => 'The time when the task was completed.', 'type' => 'string', 'example' => '2015-11-23T02:19Z', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-ce946ntx4wr****', 'title' => ''], 'OperationProgressSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'OperationProgress' => [ 'description' => 'The information about the task, including the status and related information of each subtask.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ErrorMsg' => ['description' => 'The error message.', 'type' => 'string', 'example' => 'The specified RegionId parameter is invalid.', 'title' => ''], 'ErrorCode' => ['description' => 'The error code.', 'type' => 'string', 'example' => 'ParameterInvalid', 'title' => ''], 'OperationStatus' => ['description' => 'The operation status.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'RelatedItemSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'RelatedItem' => [ 'description' => 'The resource information type.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Name' => ['description' => 'The name of the related item.', 'type' => 'string', 'example' => 'OSSObject', 'title' => ''], 'Value' => ['description' => 'The value of the related item.', 'type' => 'string', 'example' => 'MYOSSPRE_m-23f8tcp***_t-23ym6mv***.vhd', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'An input parameter "RegionId" that is mandatory for processing the request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidTaskId.NotFound', 'errorMessage' => 'The specified "TaskId" is not found.', 'description' => 'The specified task does not exist'], ], ], 'title' => 'Query task details', 'summary' => 'Queries the details of an asynchronous task. Currently, the asynchronous tasks that can be queried include ImportImage, ExportImage, and ModifyDiskSpec.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeTaskAttribute'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeTaskAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"CreationTime\\": \\"2015-11-23T02:13Z\\",\\n \\"SupportCancel\\": \\"true\\",\\n \\"TotalCount\\": 1,\\n \\"SuccessCount\\": 1,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"TaskAction\\": \\"ExportImage\\",\\n \\"FailedCount\\": 0,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskStatus\\": \\"Finished\\",\\n \\"TaskProcess\\": \\"100%\\",\\n \\"FinishedTime\\": \\"2015-11-23T02:19Z\\",\\n \\"TaskId\\": \\"t-ce946ntx4wr****\\",\\n \\"OperationProgressSet\\": {\\n \\"OperationProgress\\": [\\n {\\n \\"ErrorMsg\\": \\"The specified RegionId parameter is invalid.\\",\\n \\"ErrorCode\\": \\"ParameterInvalid\\",\\n \\"OperationStatus\\": \\"Success\\",\\n \\"RelatedItemSet\\": {\\n \\"RelatedItem\\": [\\n {\\n \\"Name\\": \\"OSSObject\\",\\n \\"Value\\": \\"MYOSSPRE_m-23f8tcp***_t-23ym6mv***.vhd\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeTasks' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29009', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Pages start from page 1.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'example' => '1', 'title' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'example' => '10', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'TaskIds', 'in' => 'query', 'schema' => ['description' => 'The task IDs. You can specify up to 100 task IDs at a time. Separate the task IDs with commas (,).', 'type' => 'string', 'required' => false, 'example' => 't-bp1hvgwromzv32iq****,t-bp179lofu2pv768w****', 'title' => ''], ], [ 'name' => 'TaskAction', 'in' => 'query', 'schema' => ['description' => 'The name of the operation that generates the task. Valid values:'."\n" ."\n" .'- ImportImage'."\n" ."\n" .'- ExportImage'."\n" ."\n" .'- RedeployInstance'."\n" ."\n" .'- ModifyDiskSpec'."\n" ."\n" .'- ArchiveSnapshot', 'type' => 'string', 'required' => false, 'example' => 'ImportImage', 'title' => ''], ], [ 'name' => 'TaskStatus', 'in' => 'query', 'schema' => ['description' => 'The task status. Valid values:'."\n" ."\n" .'- Finished'."\n" ."\n" .'- Processing'."\n" ."\n" .'- Failed'."\n" ."\n" .'This parameter is left empty by default.'."\n" ."\n" .'> The system only queries tasks in the Finished, Processing, and Failed states and ignores other values.', 'type' => 'string', 'required' => false, 'example' => 'Finished', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query. The time range refers to the period of time during which the task is created. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2020-11-23T15:10:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query. The time range refers to the period of time during which the task is created. Specify the time in the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2020-11-23T15:16:00Z', 'title' => ''], ], [ 'name' => 'ResourceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the resources associated with the task. Valid values of N: 1 to 100.', 'type' => 'array', 'items' => ['description' => 'The ID of resource N. Valid values of N: 1 to 100.'."\n" ."\n" .'- If you set TaskAction to ImportImage or ExportImage, specify an image ID as a resource ID.'."\n" ."\n" .'- If you set TaskAction to RedeployInstance, specify the ID of an Elastic Compute Service (ECS) instance as a resource ID.'."\n" ."\n" .'- If you set TaskAction to ModifyDiskSpec, specify a disk ID as a resource ID.', 'type' => 'string', 'required' => false, 'example' => 'm-bp1i8huqm5u7****', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'TaskGroupId', 'in' => 'query', 'schema' => ['description' => 'Task group ID.'."\n" ."\n" .'> This parameter is in invitational preview. When this parameter is used, other query conditions become invalid.', 'type' => 'string', 'required' => false, 'example' => 'g-2ze2op2grqpclwu7****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'TaskSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Task' => [ 'description' => 'Details about the tasks.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the task was created.', 'type' => 'string', 'example' => '2020-11-24T12:50Z', 'title' => ''], 'TaskStatus' => ['description' => 'The task status.', 'type' => 'string', 'example' => 'Finished', 'title' => ''], 'FinishedTime' => ['description' => 'The time when the task ended.', 'type' => 'string', 'example' => '2020-11-24T12:50Z', 'title' => ''], 'SupportCancel' => ['description' => 'Indicates whether the task can be canceled.', 'type' => 'string', 'example' => 'true', 'title' => ''], 'TaskId' => ['description' => 'The task ID.', 'type' => 'string', 'example' => 't-bp1hvgwromzv32iq****', 'title' => ''], 'TaskAction' => ['description' => 'The name of the operation that generates the task.', 'type' => 'string', 'example' => 'ImportImage', 'title' => ''], 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'm-bp1i8huqm5u7****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'An input parameter "RegionId" that is mandatory for processing the request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ], ], 'title' => 'Query task list ', 'summary' => 'Invoke DescribeTasks to query the progress of one or more asynchronous requests.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2022-11-23T09:24:08.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeTasks'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeTasks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"TaskSet\\": {\\n \\"Task\\": [\\n {\\n \\"CreationTime\\": \\"2020-11-24T12:50Z\\",\\n \\"TaskStatus\\": \\"Finished\\",\\n \\"FinishedTime\\": \\"2020-11-24T12:50Z\\",\\n \\"SupportCancel\\": \\"true\\",\\n \\"TaskId\\": \\"t-bp1hvgwromzv32iq****\\",\\n \\"TaskAction\\": \\"ImportImage\\",\\n \\"ResourceId\\": \\"m-bp1i8huqm5u7****\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeTerminalSessions' => [ 'summary' => 'Queries the session history of Session Manager.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29325', 'abilityTreeNodes' => ['FEATUREecsXZ3H4M'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1i7gg30r52z2em****', 'title' => ''], ], [ 'name' => 'SessionId', 'in' => 'query', 'schema' => ['description' => 'The session ID.', 'type' => 'string', 'required' => false, 'example' => 's-hz023od0x9****', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for a paged query.'."\n" ."\n" .'Maximum value: 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token. Set this parameter to the NextToken value returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'Sessions' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Session' => [ 'description' => 'The session list.', 'type' => 'array', 'items' => [ 'description' => 'The session information.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the session was created.', 'type' => 'string', 'example' => '2024-01-19T09:15:46Z', 'title' => ''], 'TargetServer' => ['description' => 'The address of the target server in the VPC that is accessed through the instance.', 'type' => 'string', 'example' => '192.168.0.246', 'title' => ''], 'PortNumber' => ['description' => 'The port number of the ECS instance used for data forwarding. This value is empty if no port number is configured for data forwarding.', 'type' => 'integer', 'format' => 'int32', 'example' => '22', 'title' => ''], 'PrincipalId' => ['description' => 'The identity ID. The value varies based on the identity type specified by IdentityType:'."\n" .'- If the caller is an Alibaba Cloud account: the Alibaba Cloud account ID is returned.'."\n" .'- If the caller is a Resource Access Management (RAM) user: the RAM user ID is returned.'."\n" .'- If the caller invokes role assumption: the ID of the actual delegate is returned.', 'type' => 'string', 'example' => '123456xxxx', 'title' => ''], 'Username' => ['description' => 'The username used for the connection.', 'type' => 'string', 'example' => 'root', 'title' => ''], 'ClientIP' => ['description' => 'The client IP address of the remote connection.', 'type' => 'string', 'example' => '192.168.1.1', 'title' => ''], 'IdentityType' => ['description' => 'The identity type. Valid values:'."\n" .'- Account: Alibaba Cloud account.'."\n" .'- RAMUser: Resource Access Management (RAM) user.'."\n" .'- AssumedRoleUser: RAM role.', 'type' => 'string', 'example' => 'RAMUser', 'title' => ''], 'SessionId' => ['description' => 'The session ID.', 'type' => 'string', 'example' => 's-hz023od0x9****', 'title' => ''], 'Connections' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Connection' => [ 'description' => 'The connection information list.', 'type' => 'array', 'items' => [ 'description' => 'The connection information.', 'type' => 'object', 'properties' => [ 'ClosedReason' => ['description' => 'The reason why the connection was closed.'."\n" .'This parameter is returned only when the Status is Disconnected, Terminated, or Failed. Valid values:'."\n" .'- InstanceNotExists: The specified instance does not exist or has been released.'."\n" .'- InstanceNotRunning: The instance is not running.'."\n" .'- DeliveryTimeout: The connection timed out.'."\n" .'- AgentNeedUpgrade: The Cloud Assistant Agent needs to be upgraded.'."\n" .'- AgentNotOnline: The Cloud Assistant Agent is not connected to the server.'."\n" .'- MessageFormatInvalid: The message format is invalid.'."\n" .'- AgentSocketClosed: The connection was closed normally.'."\n" .'- ClientClosed: The session management client closed the connection.'."\n" .'- ReadFromTargetPortFailed: Failed to read data from the target port during data forwarding with the PortNumber specified in StartTerminalSession.'."\n" .'- ReopenTargetPortFailed: Failed to re-establish a TCP connection to the target port during data forwarding with the PortNumber specified in StartTerminalSession.'."\n" .'- OpenTargetPortFailed: Failed to establish a TCP connection to the target port during data forwarding with the PortNumber specified in StartTerminalSession.'."\n" .'- WinptyPermissionDenied: For Windows instances, failed to grant the specified user read and execute permissions on winpty.dll or winpty-agent.exe.'."\n" .'- PasswordNameNotFound: The PasswordName specified in StartTerminalSession was not found.'."\n" .'- ProcessSessionDataError: Failed to process session data.'."\n" .'- SessionIdDuplicate: The session ID is duplicate.'."\n" .'- SessionTimeout: The session timed out. A session is actively disconnected after 3 hours.'."\n" .'- IdleTimeout: The connection timed out. A connection is actively disconnected after 180 seconds of inactivity.'."\n" .'- HomeDirPermissionDenied: Insufficient permissions on the home directory of the user to connect.'."\n" .'- HomeDirNotFound: The home directory of the user to connect does not exist.'."\n" .'- ShellCommandPermissionDenied: Insufficient permissions on the shell program. bash or csh does not have execute permissions.'."\n" .'- ShellCommandNotFound: The shell program does not exist. The bash file on Linux, csh file on FreeBSD, or powershell.exe file on Windows does not exist.'."\n" .'- ObtainUserInfoFailed: Failed to obtain the Username parameter information, such as home directory information.'."\n" .'- ObtainUserIdentityFailed: Failed to obtain the authentication information of the Username parameter, such as uid, gid, and groups.'."\n" .'- UserNotExists: The Username specified in StartTerminalSession does not exist.'."\n" .'- MalformedCommandLine: Failed to parse the CommandLine specified in StartTerminalSession.', 'type' => 'string', 'example' => 'AgentNeedUpgrade', 'title' => ''], 'EndTime' => ['description' => 'The time when the connection ended.', 'type' => 'string', 'example' => '2024-01-19T09:16:46Z', 'title' => ''], 'Status' => ['description' => 'The session status. Valid values:'."\n" .'- Connecting: connecting.'."\n" .'- Connected: connected.'."\n" .'- Terminated: the session is terminated.'."\n" .'- Failed: the connection failed.', 'type' => 'string', 'example' => 'Connecting', 'title' => ''], 'StartTime' => ['description' => 'The time when the connection started.', 'type' => 'string', 'example' => '2024-01-19T09:16:40Z', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1i7gg30r52z2em****', 'title' => ''], 'FailedDetail' => ['description' => 'The details of the connection failure. This parameter is returned only when the Status is Failed.', 'type' => 'string', 'example' => 'The Session Manager is closed normally.', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.NextToken', 'errorMessage' => 'The specified parameter NextToken is not valid.', 'description' => 'The specified parameter NextToken is illegal.'], ['errorCode' => 'InvalidParameter.MaxResults', 'errorMessage' => 'The specified parameter MaxResults is not valid.', 'description' => 'The specified parameter MaxResults is illegal.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified parameter RegionId does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while sending the request, please try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"Sessions\\": {\\n \\"Session\\": [\\n {\\n \\"CreationTime\\": \\"2024-01-19T09:15:46Z\\",\\n \\"TargetServer\\": \\"192.168.0.246\\",\\n \\"PortNumber\\": 22,\\n \\"PrincipalId\\": \\"123456xxxx\\",\\n \\"Username\\": \\"root\\",\\n \\"ClientIP\\": \\"192.168.1.1\\",\\n \\"IdentityType\\": \\"RAMUser\\",\\n \\"SessionId\\": \\"s-hz023od0x9****\\",\\n \\"Connections\\": {\\n \\"Connection\\": [\\n {\\n \\"ClosedReason\\": \\"AgentNeedUpgrade\\",\\n \\"EndTime\\": \\"2024-01-19T09:16:46Z\\",\\n \\"Status\\": \\"Connecting\\",\\n \\"StartTime\\": \\"2024-01-19T09:16:40Z\\",\\n \\"InstanceId\\": \\"i-bp1i7gg30r52z2em****\\",\\n \\"FailedDetail\\": \\"The Session Manager is closed normally.\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'View session manager session history', 'description' => 'You can query Session Manager session records created within the last 30 days. A maximum of 1,000 successful records are retained.', 'changeSet' => [ ['createdAt' => '2025-06-12T01:41:14.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeTerminalSessions'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeTerminalSessions', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#InstanceId}'], ], ], ], ], ], 'DescribeUserBusinessBehavior' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29010', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region. Call the `DescribeRegions` operation to query the latest list of regions.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'statusKey', 'in' => 'query', 'schema' => ['description' => 'The key of the business attribute to query.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'StatusValue' => ['description' => 'The value of the business attribute.', 'type' => 'string', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The specified parameters are not valid.', 'description' => 'The specified parameter combination is not satisfactory.'], ], ], 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。'], 'summary' => 'Queries a user\'s default attributes.', 'changeSet' => [ ['createdAt' => '2025-03-12T01:39:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeUserBusinessBehavior'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeUserBusinessBehavior', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"StatusValue\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'DescribeUserBusinessBehavior', ], 'DescribeUserData' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '29011', 'abilityTreeNodes' => ['FEATUREecsYLNQGM'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'i-bp14bnftyqhxg9ij****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp14bnftyqhxg9ij****', 'title' => ''], 'UserData' => ['description' => 'The user data of the instance.'."\n" ."\n" .'> If no user data is configured for the instance, an empty string is returned.', 'type' => 'string', 'example' => 'ZWNobyBoZWxsbyBlY321ABC', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the instance.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ], ], 'title' => 'DescribeUserData', 'summary' => 'Queries the user data of an Elastic Compute Service (ECS) instance.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeUserData'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:DescribeUserData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"InstanceId\\": \\"i-bp14bnftyqhxg9ij****\\",\\n \\"UserData\\": \\"ZWNobyBoZWxsbyBlY321ABC\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n}","type":"json"}]', 'description' => '- If no user data is configured for the ECS instance, an empty string is returned.', ], 'DescribeVRouters' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'VRouterId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VRouter.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the VRouter is deployed. You can call the `DescribeRegions` operation to query the latest region list.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" ."\n" .'Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'VRouters' => [ 'itemNode' => true, 'description' => 'A wrapper object for the VRouter list.', 'type' => 'object', 'properties' => [ 'VRouter' => [ 'description' => 'An array of VRouter details.', 'type' => 'array', 'items' => [ 'description' => 'Details of a VRouter.', 'type' => 'object', 'properties' => [ 'VpcId' => ['description' => 'The ID of the VPC to which the VRouter belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'CreationTime' => ['description' => 'The time (in UTC) when the VRouter was created, in ISO 8601 format: `YYYY-MM-DDThh:mm:ssZ`.', 'type' => 'string', 'title' => '', 'example' => ''], 'VRouterId' => ['description' => 'The ID of the VRouter.', 'type' => 'string', 'title' => '', 'example' => ''], 'Description' => ['description' => 'The description of the VRouter.', 'type' => 'string', 'title' => '', 'example' => ''], 'VRouterName' => ['description' => 'The name of the VRouter.', 'type' => 'string', 'title' => '', 'example' => ''], 'RegionId' => ['description' => 'The region ID of the VRouter.', 'type' => 'string', 'title' => '', 'example' => ''], 'RouteTableIds' => [ 'itemNode' => true, 'description' => 'The IDs of the route tables that are associated with the VRouter.', 'type' => 'object', 'properties' => [ 'RouteTableId' => [ 'description' => 'An array of route table IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of a route table.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeVRouters'], ], 'title' => 'Query the vRouter List in a Specified Region', 'summary' => 'Queries VRouters.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '120', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVRouters'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeVRouters', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:VPC', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"VRouters\\": {\\n \\"VRouter\\": [\\n {\\n \\"VpcId\\": \\"\\",\\n \\"CreationTime\\": \\"\\",\\n \\"VRouterId\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"VRouterName\\": \\"\\",\\n \\"RegionId\\": \\"\\",\\n \\"RouteTableIds\\": {\\n \\"RouteTableId\\": [\\n \\"\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DescribeVSwitches' => [ 'summary' => 'DescribeVSwitches', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'VSwitchId', 'in' => 'query', 'schema' => ['description' => 'The ID of the vSwitch.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'ZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the zone.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the vSwitches are located. To query the latest list of regions, call the [DescribeRegions](~~36063~~) operation.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'IsDefault', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the vSwitch is the default vSwitch in the zone. Valid values:'."\n" ."\n" .'- `true`'."\n" .'- `false`', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number to return.'."\n" ."\n" .'Default value: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page. Valid values: 1 to 50.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'headers' => [], 'schema' => [ 'description' => 'The response data.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The page size.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'VSwitches' => [ 'itemNode' => true, 'description' => 'A collection of VSwitches.', 'type' => 'object', 'properties' => [ 'VSwitch' => [ 'description' => 'An array of VSwitch details.', 'type' => 'array', 'items' => [ 'description' => 'The details of a single VSwitch.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The time when the VSwitch was created, in the `YYYY-MM-DDThh:mm:ssZ` ISO 8601 format.', 'type' => 'string', 'title' => '', 'example' => ''], 'Status' => ['description' => 'The status of the VSwitch. Valid values:'."\n" ."\n" .'- Pending'."\n" ."\n" .'- Available', 'type' => 'string', 'title' => '', 'example' => ''], 'VpcId' => ['description' => 'The ID of the VPC to which the VSwitch belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'IsDefault' => ['description' => 'Indicates whether the VSwitch is the default VSwitch in the zone. Valid values:'."\n" ."\n" .'- true'."\n" ."\n" .'- false', 'type' => 'boolean', 'title' => '', 'example' => ''], 'VSwitchId' => ['description' => 'The ID of the VSwitch.', 'type' => 'string', 'title' => '', 'example' => ''], 'CidrBlock' => ['description' => 'The IPv4 CIDR block of the VSwitch.', 'type' => 'string', 'title' => '', 'example' => ''], 'Description' => ['description' => 'The description of the VSwitch.', 'type' => 'string', 'title' => '', 'example' => ''], 'AvailableIpAddressCount' => ['description' => 'The number of available IP addresses in the VSwitch.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => ''], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the VSwitch belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'ZoneId' => ['description' => 'The ID of the zone to which the VSwitch belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'VSwitchName' => ['description' => 'The name of the VSwitch.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Forbidden.VpcNotFound', 'errorMessage' => 'Specified VPC can not found.', 'description' => ''], ['errorCode' => 'IellgalParameter.OwnerAccount', 'errorMessage' => 'The specified parameter OwnerAccount is not valid.', 'description' => ''], ['errorCode' => 'OperationFailed.Endpoint', 'errorMessage' => 'The specified RegionId is unavailable for this endpoint.', 'description' => 'The specified RegionId is not available in the destination endpoint.'], ['errorCode' => 'Mismatch.InstanceIdAndRegionId', 'errorMessage' => 'The instanceId and regionId are mismatched.', 'description' => 'The specified instance ID does not match the region information. Check the parameters.'], ], 404 => [ ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => 'VSwitch not exist.', 'description' => ''], ['errorCode' => 'InvalidVpcIdNumber.NotSupported', 'errorMessage' => 'The number of vpcIds exceeds the limit.', 'description' => ''], ['errorCode' => 'InvalidVSwitchIdNumber.NotSupported', 'errorMessage' => 'The number of vSwitchIds exceeds the limit.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeVSwitches'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '360', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVSwitches'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeVSwitches', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:VPC', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"VSwitches\\": {\\n \\"VSwitch\\": [\\n {\\n \\"CreationTime\\": \\"\\",\\n \\"Status\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"IsDefault\\": false,\\n \\"VSwitchId\\": \\"\\",\\n \\"CidrBlock\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"AvailableIpAddressCount\\": 0,\\n \\"ResourceGroupId\\": \\"\\",\\n \\"ZoneId\\": \\"\\",\\n \\"VSwitchName\\": \\"\\"\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeVSwitches', ], 'DescribeVirtualBorderRouters' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Value' => [ 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PageNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'PageSize' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TotalCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'VirtualBorderRouterSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'VirtualBorderRouterType' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'VlanInterfaceId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Status' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'CreationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'CircuitCode' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PhysicalConnectionOwnerUid' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'LocalGatewayIp' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'ActivationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PhysicalConnectionBusinessStatus' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PeeringSubnetMask' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RouteTableId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Description' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PhysicalConnectionStatus' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RecoveryTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'TerminationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PeerGatewayIp' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Name' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'AccessPointId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'VbrId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PhysicalConnectionId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'VlanId' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidFilterKey.ValueNotSupported', 'errorMessage' => 'Specified filter key is not supported: Filter.X.key', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeVirtualBorderRouters'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVirtualBorderRouters'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeVirtualBorderRouters', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VirtualBorderRouter', 'arn' => 'acs:vpc:{#regionId}:{#AccountId}:virtualborderrouter/{#VbrId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"PageSize\\": 0,\\n \\"TotalCount\\": 0,\\n \\"VirtualBorderRouterSet\\": {\\n \\"VirtualBorderRouterType\\": [\\n {\\n \\"VlanInterfaceId\\": \\"\\",\\n \\"Status\\": \\"\\",\\n \\"CreationTime\\": \\"\\",\\n \\"CircuitCode\\": \\"\\",\\n \\"PhysicalConnectionOwnerUid\\": \\"\\",\\n \\"LocalGatewayIp\\": \\"\\",\\n \\"ActivationTime\\": \\"\\",\\n \\"PhysicalConnectionBusinessStatus\\": \\"\\",\\n \\"PeeringSubnetMask\\": \\"\\",\\n \\"RouteTableId\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"PhysicalConnectionStatus\\": \\"\\",\\n \\"RecoveryTime\\": \\"\\",\\n \\"TerminationTime\\": \\"\\",\\n \\"PeerGatewayIp\\": \\"\\",\\n \\"Name\\": \\"\\",\\n \\"AccessPointId\\": \\"\\",\\n \\"VbrId\\": \\"\\",\\n \\"PhysicalConnectionId\\": \\"\\",\\n \\"VlanId\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeVirtualBorderRouters', 'summary' => 'DescribeVirtualBorderRouters', ], 'DescribeVirtualBorderRoutersForPhysicalConnection' => [ 'summary' => 'DescribeVirtualBorderRoutersForPhysicalConnection.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PhysicalConnectionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'Filter', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'Value' => [ 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 5, 'description' => '', 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'PageNumber' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'PageSize' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'TotalCount' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], 'VirtualBorderRouterForPhysicalConnectionSet' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'VirtualBorderRouterForPhysicalConnectionType' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'CreationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'CircuitCode' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'RecoveryTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'TerminationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'ActivationTime' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'VbrOwnerUid' => ['type' => 'integer', 'format' => 'int64', 'description' => '', 'title' => '', 'example' => ''], 'VbrId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], 'VlanId' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidPhysicalConnectionId.NotFound', 'errorMessage' => 'The specified PhysicalConnectionId does not belong to user.', 'description' => ''], ['errorCode' => 'IllegalParam.AliUid', 'errorMessage' => 'Specified value of aliuid invalid.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeVirtualBorderRoutersForPhysicalConnection'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '600', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVirtualBorderRoutersForPhysicalConnection'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeVirtualBorderRoutersForPhysicalConnection', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:PhysicalConnection', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PhysicalConnection', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:physicalconnection/{#PhysicalConnectionId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"PageSize\\": 0,\\n \\"TotalCount\\": 0,\\n \\"VirtualBorderRouterForPhysicalConnectionSet\\": {\\n \\"VirtualBorderRouterForPhysicalConnectionType\\": [\\n {\\n \\"CreationTime\\": \\"\\",\\n \\"CircuitCode\\": \\"\\",\\n \\"RecoveryTime\\": \\"\\",\\n \\"TerminationTime\\": \\"\\",\\n \\"ActivationTime\\": \\"\\",\\n \\"VbrOwnerUid\\": 0,\\n \\"VbrId\\": \\"\\",\\n \\"VlanId\\": 0\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeVirtualBorderRoutersForPhysicalConnection', ], 'DescribeVpcs' => [ 'summary' => 'Query VPCs', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'IsDefault', 'in' => 'query', 'schema' => ['description' => 'Specifies whether the VPC is a default VPC. Set to `true` to query the default VPC, or `false` to query non-default VPCs.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => ''], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number. Default: 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'minimum' => '1', 'default' => '1', 'title' => '', 'example' => ''], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries to return on each page. Default: 10. Valid values: 1 to 50.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'maximum' => '50', 'minimum' => '1', 'default' => '10', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response body.', 'type' => 'object', 'properties' => [ 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => ''], 'Vpcs' => [ 'itemNode' => true, 'description' => 'The details of the VPCs.', 'type' => 'object', 'properties' => [ 'Vpc' => [ 'description' => 'An array of VPCs.', 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The creation time of the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'VpcName' => ['description' => 'The name of the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'Status' => ['description' => 'The status of the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'VpcId' => ['description' => 'The ID of the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'VRouterId' => ['description' => 'The ID of the VRouter associated with the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'IsDefault' => ['description' => 'Indicates whether the VPC is the default VPC in the region.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'CidrBlock' => ['description' => 'The CIDR block of the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'Description' => ['description' => 'The description of the VPC.', 'type' => 'string', 'title' => '', 'example' => ''], 'RegionId' => ['description' => 'The ID of the region to which the VPC belongs.', 'type' => 'string', 'title' => '', 'example' => ''], 'VSwitchIds' => [ 'itemNode' => true, 'description' => 'The VSwitches in the VPC.', 'type' => 'object', 'properties' => [ 'VSwitchId' => [ 'description' => 'An array of VSwitch IDs.', 'type' => 'array', 'items' => ['description' => 'The ID of a VSwitch.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'UserCidrs' => [ 'itemNode' => true, 'description' => 'The user CIDR blocks of the VPC.', 'type' => 'object', 'properties' => [ 'UserCidr' => [ 'description' => 'An array of user CIDR blocks.', 'type' => 'array', 'items' => ['description' => 'A user CIDR block.', 'type' => 'string', 'title' => '', 'example' => ''], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidAliuid', 'errorMessage' => 'User Id is not valid.', 'description' => ''], ['errorCode' => 'InvalidResourceGroupId.NotFound', 'errorMessage' => 'The Specified ResourceGroupId not exists.', 'description' => ''], ['errorCode' => 'OperationUnsupported.ResourceGroupId', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVpcIdNumber.NotSupported', 'errorMessage' => 'The number of vpcIds exceeds the limit.', 'description' => ''], ['errorCode' => 'InvalidTagKey', 'errorMessage' => 'The tag keys are not valid.', 'description' => ''], ['errorCode' => 'InvalidTagValue', 'errorMessage' => 'The tag values are not valid.', 'description' => ''], ['errorCode' => 'IellgalParameter.OwnerAccount', 'errorMessage' => 'The specified parameter OwnerAccount is not valid.', 'description' => ''], ['errorCode' => 'OperationFailed.Endpoint', 'errorMessage' => 'Operation failed because the RegionId is unavailable in this endpoint.', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId is not found.', 'description' => 'The specified RegionId parameter does not exist. Check whether the service is available in the specified region.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::DescribeVpcs'], ], 'changeSet' => [ ['createdAt' => '2023-12-20T08:22:05.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '360', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeVpcs'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'vpc:DescribeVpcs', 'authLevel' => 'resource', 'actionConditions' => [ ['conditionKey' => 'vpc:tag', 'validationType' => 'always'], ], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageSize\\": 0,\\n \\"RequestId\\": \\"\\",\\n \\"PageNumber\\": 0,\\n \\"TotalCount\\": 0,\\n \\"Vpcs\\": {\\n \\"Vpc\\": [\\n {\\n \\"CreationTime\\": \\"\\",\\n \\"VpcName\\": \\"\\",\\n \\"Status\\": \\"\\",\\n \\"VpcId\\": \\"\\",\\n \\"VRouterId\\": \\"\\",\\n \\"IsDefault\\": false,\\n \\"CidrBlock\\": \\"\\",\\n \\"Description\\": \\"\\",\\n \\"RegionId\\": \\"\\",\\n \\"VSwitchIds\\": {\\n \\"VSwitchId\\": [\\n \\"\\"\\n ]\\n },\\n \\"UserCidrs\\": {\\n \\"UserCidr\\": [\\n \\"\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'DescribeVpcs', ], 'DescribeVscs' => [ 'summary' => '', 'path' => '', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'docRequired' => true, 'description' => '', 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'Environment', 'title' => ''], 'Value' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'description' => '', 'required' => false, 'title' => '', 'example' => '', ], 'maxItems' => 20, 'description' => '', 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'i-bp67acfmxazb4ph****', 'title' => ''], ], [ 'name' => 'VscIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'type' => 'array', 'items' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'vsc-dj372hdh2**k2', 'title' => ''], 'maxItems' => 100, 'description' => '', 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'Successful', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['type' => 'string', 'description' => '', 'required' => false, 'example' => 'AAAAAdDWBF2', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['type' => 'integer', 'format' => 'int32', 'description' => '', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'title' => '', 'description' => '', 'example' => '473469C7-AA6F-**-B3DB-A3DC0DE3C83E'], 'NextToken' => ['type' => 'string', 'description' => '', 'example' => 'AAAAAdDWBF2', 'title' => ''], 'Vscs' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'VscId' => ['type' => 'string', 'description' => '', 'example' => 'vsc-hp34ue**g0wmycb27bwal', 'title' => ''], 'VscName' => ['type' => 'string', 'description' => '', 'example' => 'test-vsc', 'title' => ''], 'VscType' => [ 'type' => 'string', 'enum' => ['Primary', 'Standard'], 'description' => '', 'example' => 'Primary', 'title' => '', ], 'Description' => ['type' => 'string', 'description' => '', 'example' => 'ali***-post-cn-j4g45iqze00f', 'title' => ''], 'Status' => ['type' => 'string', 'description' => '', 'example' => 'In_use', 'title' => ''], 'InstanceId' => ['type' => 'string', 'description' => '', 'example' => 'i-uf69***21l8zuoizdq', 'title' => ''], 'Tags' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['type' => 'string', 'description' => '', 'example' => 'name', 'title' => ''], 'TagValue' => ['type' => 'string', 'description' => '', 'example' => '15', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], 'ResourceGroupId' => ['type' => 'string', 'description' => '', 'example' => 'rg-aek2zex4ehdyjvq', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => '', 'title' => '', 'example' => '', ], ], 'title' => '', 'description' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ], 403 => [ ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance doesn\'t exist.', 'description' => 'The specified instance does not exist.'], ['errorCode' => 'Throttling', 'errorMessage' => 'Request was denied due to request throttling', 'description' => 'Your request is being throttled. Try again later.'], ], [ ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance does not exist.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist.', 'description' => 'The specified region does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => '', 'description' => '如果您指定了标签键(Tag.N.Key)但没有指定标签值(Tag.N.Value),我们将查询该标签键对应的所有标签键值对。如果您指定了标签键值对,就查询精确匹配该键值对的标签。', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ecs:DescribeVscs', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'conditional', 'product' => 'ECS', 'resourceType' => 'Vsc', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:vsc/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-**-B3DB-A3DC0DE3C83E\\",\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"Vscs\\": [\\n {\\n \\"VscId\\": \\"vsc-hp34ue**g0wmycb27bwal\\",\\n \\"VscName\\": \\"test-vsc\\",\\n \\"VscType\\": \\"Primary\\",\\n \\"Description\\": \\"ali***-post-cn-j4g45iqze00f\\",\\n \\"Status\\": \\"In_use\\",\\n \\"InstanceId\\": \\"i-uf69***21l8zuoizdq\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"name\\",\\n \\"TagValue\\": \\"15\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-aek2zex4ehdyjvq\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeZones' => [ 'summary' => 'Queries the list of active zones based on parameters such as region ID and billing method.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29018', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the zones are located. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Verbose', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to display detailed information.'."\n" ."\n" .'- true: Display detailed information.'."\n" .'- false: Do not display detailed information.'."\n" ."\n" .'Default value: true.', 'type' => 'boolean', 'required' => false, 'default' => 'true', 'example' => 'false', 'title' => ''], ], [ 'name' => 'InstanceChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method supported by resources in the active zone. For more information, see [Billing overview](~~25398~~). Valid values: '."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.'."\n" ."\n" .'Default value: PostPaid.', 'type' => 'string', 'required' => false, 'example' => 'PostPaid', 'title' => ''], ], [ 'name' => 'SpotStrategy', 'in' => 'query', 'schema' => ['description' => 'The bidding policy for pay-as-you-go instances. You can specify this parameter when `InstanceChargeType=PostPaid`. For more information, see [Spot instances](~~52088~~). Valid values:'."\n" .' '."\n" .'- NoSpot: regular pay-as-you-go instance.'."\n" .'- SpotWithPriceLimit: spot instance with a maximum price limit.'."\n" .'- SpotAsPriceGo: spot instance priced at the market price with the pay-as-you-go price as the upper limit.'."\n" ."\n" .'Default value: NoSpot.', 'type' => 'string', 'required' => false, 'example' => 'NoSpot', 'title' => ''], ], [ 'name' => 'AcceptLanguage', 'in' => 'query', 'schema' => [ 'description' => 'The natural language that is used to filter response results. For more information, see [RFC 7231](https://tools.ietf.org/html/rfc7231). Valid values: '."\n" .' '."\n" .'- zh-CN: simplified Chinese.'."\n" .'- zh-TW: traditional Chinese.'."\n" .'- en-US: English.'."\n" .'- ja: Japanese.'."\n" .'- fr: French.'."\n" .'- de: German.'."\n" .'- ko: Korean.'."\n" ."\n" .'Default value: zh-CN.', 'enumValueTitles' => ['de' => 'German.', 'en-US' => 'English.', 'ko' => 'Korean.', 'zh-TW' => 'Traditional Chinese.', 'ja' => 'Japanese.', 'fr' => 'French.', 'zh-CN' => 'Simplified Chinese.'], 'type' => 'string', 'required' => false, 'example' => 'zh-CN', 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'Zones' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Zone' => [ 'description' => 'The collection of zones and the supported resource information in each zone.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'example' => 'cn-hangzhou-g', 'title' => ''], 'ZoneType' => ['description' => 'The zone type. Valid values:'."\n" ."\n" .''."\n" .'- AvailabilityZone: public cloud zone.'."\n" .'- CloudBoxZone: CloudBox zone.'."\n" ."\n" .''."\n" ."\n" .''."\n" .'- AvailabilityZone: public cloud zone.'."\n" ."\n" .'', 'type' => 'string', 'example' => 'AvailabilityZone', 'title' => ''], 'LocalName' => ['description' => 'The name of the zone in the local language.', 'type' => 'string', 'example' => '华东 1 可用区 G', 'title' => ''], 'AvailableResources' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ResourcesInfo' => [ 'description' => 'The array of specific resources available for creation.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'IoOptimized' => ['description' => 'Indicates whether the instance is an I/O optimized instance. I/O optimization provides better storage performance.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SystemDiskCategories' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'supportedSystemDiskCategory' => [ 'description' => 'The list of system disk categories.', 'type' => 'array', 'items' => ['description' => 'The system disk category that can be created. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD.', 'type' => 'string', 'example' => 'cloud_essd', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceGenerations' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'supportedInstanceGeneration' => [ 'description' => 'The list of supported instance family generations.', 'type' => 'array', 'items' => ['description' => 'The instance family generation.', 'type' => 'string', 'example' => 'ecs-6', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'DataDiskCategories' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'supportedDataDiskCategory' => [ 'description' => 'The data disk categories that can be created.', 'type' => 'array', 'items' => ['description' => 'The data disk category. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_essd: enterprise SSD.'."\n" .'- ephemeral_ssd: local SSD.', 'type' => 'string', 'example' => 'cloud_essd', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'supportedInstanceType' => [ 'description' => 'The list of instance types.', 'type' => 'array', 'items' => ['description' => 'The list of instance types that can be created in the current zone, network type (NetworkTypes), and I/O optimized instance (IoOptimized) combination.', 'type' => 'string', 'example' => 'ecs.g5.large', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'InstanceTypeFamilies' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'supportedInstanceTypeFamily' => [ 'description' => 'The list of instance families that can be created.', 'type' => 'array', 'items' => ['description' => 'The instance family.', 'type' => 'string', 'example' => 'ecs.r7t', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'NetworkTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'supportedNetworkCategory' => [ 'description' => 'The list of supported network types.', 'type' => 'array', 'items' => ['description' => 'The supported network type. Valid values:'."\n" ."\n" .'- VPC: virtual private cloud (VPC).'."\n" .'- Classic: classic network. The classic network is deprecated. For more information, see [Deprecation notice](~~2833134~~).', 'type' => 'string', 'example' => 'vpc', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AvailableResourceCreation' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'ResourceTypes' => [ 'description' => 'The list of resource types that can be created.', 'type' => 'array', 'items' => ['description' => 'The resource type that can be created. Valid values:'."\n" ."\n" .'- VSwitch: vSwitch.'."\n" .'- IoOptimized: I/O optimized instance.'."\n" .'- Instance: instance.'."\n" .'- DedicatedHost: dedicated host.'."\n" .'- Disk: disk.', 'type' => 'string', 'example' => 'DedicatedHost', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'DedicatedHostGenerations' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHostGeneration' => [ 'description' => 'The list of supported dedicated host generations.', 'type' => 'array', 'items' => ['description' => 'The supported dedicated host generation.', 'type' => 'string', 'example' => 'ddh-6', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AvailableInstanceTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceTypes' => [ 'description' => 'The list of all instance types that can be created in the current zone.', 'type' => 'array', 'items' => ['description' => 'The instance type that can be created in the current zone.', 'type' => 'string', 'example' => 'ecs.g6.xlarge', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AvailableDiskCategories' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DiskCategories' => [ 'description' => 'The collection of disk categories that can be created.', 'type' => 'array', 'items' => ['description' => 'The disk category that can be created. Valid values:'."\n" ."\n" .'- cloud: basic disk.'."\n" .'- cloud_ssd: standard SSD.'."\n" .'- cloud_efficiency: ultra disk.'."\n" .'- cloud_essd: enterprise SSD.', 'type' => 'string', 'example' => 'cloud', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AvailableDedicatedHostTypes' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DedicatedHostType' => [ 'description' => 'The list of supported dedicated host types.', 'type' => 'array', 'items' => ['description' => 'The supported dedicated host type.', 'type' => 'string', 'example' => 'ddh.g6', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'AvailableVolumeCategories' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'VolumeCategories' => [ 'description' => 'The list of supported shared storage types.', 'type' => 'array', 'items' => ['description' => 'The supported shared storage type.', 'type' => 'string', 'example' => 'san_efficiency', 'title' => ''], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidSpotStrategy', 'errorMessage' => 'The specified SpotStrategy is not valid.', 'description' => 'The specified SpotStrategy parameter is invalid.'], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => 'The specified region ID does not exist.'], ['errorCode' => 'InvalidRegion.NotFound', 'errorMessage' => 'The specified parameter RegionId is not valid.', 'description' => ''], ['errorCode' => 'InvalidInstanceChargeType.NotFound', 'errorMessage' => 'The InstanceChargeType does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidAcceptLanguage.NotFound', 'errorMessage' => 'Only Chinese (zh-CN), English (en-US), and Japanese (ja) are allowed.', 'description' => 'Your selected language is invalid. Only Chinese, English, and Japanese are supported.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Zones\\": {\\n \\"Zone\\": [\\n {\\n \\"ZoneId\\": \\"cn-hangzhou-g\\",\\n \\"ZoneType\\": \\"AvailabilityZone\\",\\n \\"LocalName\\": \\"华东 1 可用区 G\\",\\n \\"AvailableResources\\": {\\n \\"ResourcesInfo\\": [\\n {\\n \\"IoOptimized\\": true,\\n \\"SystemDiskCategories\\": {\\n \\"supportedSystemDiskCategory\\": [\\n \\"cloud_essd\\"\\n ]\\n },\\n \\"InstanceGenerations\\": {\\n \\"supportedInstanceGeneration\\": [\\n \\"ecs-6\\"\\n ]\\n },\\n \\"DataDiskCategories\\": {\\n \\"supportedDataDiskCategory\\": [\\n \\"cloud_essd\\"\\n ]\\n },\\n \\"InstanceTypes\\": {\\n \\"supportedInstanceType\\": [\\n \\"ecs.g5.large\\"\\n ]\\n },\\n \\"InstanceTypeFamilies\\": {\\n \\"supportedInstanceTypeFamily\\": [\\n \\"ecs.r7t\\"\\n ]\\n },\\n \\"NetworkTypes\\": {\\n \\"supportedNetworkCategory\\": [\\n \\"vpc\\"\\n ]\\n }\\n }\\n ]\\n },\\n \\"AvailableResourceCreation\\": {\\n \\"ResourceTypes\\": [\\n \\"DedicatedHost\\"\\n ]\\n },\\n \\"DedicatedHostGenerations\\": {\\n \\"DedicatedHostGeneration\\": [\\n \\"ddh-6\\"\\n ]\\n },\\n \\"AvailableInstanceTypes\\": {\\n \\"InstanceTypes\\": [\\n \\"ecs.g6.xlarge\\"\\n ]\\n },\\n \\"AvailableDiskCategories\\": {\\n \\"DiskCategories\\": [\\n \\"cloud\\"\\n ]\\n },\\n \\"AvailableDedicatedHostTypes\\": {\\n \\"DedicatedHostType\\": [\\n \\"ddh.g6\\"\\n ]\\n },\\n \\"AvailableVolumeCategories\\": {\\n \\"VolumeCategories\\": [\\n \\"san_efficiency\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', 'title' => 'Query zones', 'description' => 'DescribeZones only queries the list of zones provided by Alibaba Cloud and returns limited inventory information. To query the instance types and disk categories available for purchase in a specific zone, use [DescribeAvailableResource](~~66186~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-02-27T08:46:42.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DescribeZones'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [], ], 'DetachClassicLinkVpc' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29019', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'notSupportAutoTestReason' => 'Classic已经下线,手动已经测试,老大已经审批', 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance that resides in the classic network.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'VpcId', 'in' => 'query', 'schema' => ['description' => 'The ID of the VPC to which the instance is connected.', 'type' => 'string', 'required' => true, 'docRequired' => true, 'example' => 'vpc-bp67acfmxazb4p****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The InstanceId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidRegionId.Malformed', 'errorMessage' => 'The specified parameter ?RegionId? is not valid.', 'description' => ''], ['errorCode' => 'InvalidVpcId.Malformed', 'errorMessage' => 'The specified parameter ?VpcId? is not valid.', 'description' => ''], ['errorCode' => 'InvalidInstanceId.MalFormed', 'errorMessage' => 'The specified instance is not a classic network instance.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The instances are not allowed to detach from the linked vpc.', 'description' => 'The instance cannot be unlinked from the VPC.'], ['errorCode' => 'InvalidParameter.InvalidInstanceIdAndVpcId', 'errorMessage' => 'The parameter InstanceId and VpcId are not allowed to be empty at the same time.', 'description' => 'At least one of the InstanceId and VpcId parameters must be specified.'], ['errorCode' => 'InvalidStatus.InstanceStatus', 'errorMessage' => 'The specified instance status is not support this operation ,expect status is running or shutted.', 'description' => 'The instance is in a state that does not support the operation. The operation can be performed only when the instance is in the Running or Stopped state.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => 'User not authorized to operate on the specified resource.', 'description' => 'Your RAM user is not authorized to manage this resource.'], ['errorCode' => 'InvalidOperation.InvalidVpc', 'errorMessage' => 'The specified instance not link specify vpc.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidParameter.RegionIdAndInstanceId', 'errorMessage' => 'The specified instance does not exist.', 'description' => ''], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'Specified instance does not exist.', 'description' => 'The specified instance does not exist. Check whether the instance ID is correct.'], ], ], 'title' => 'DetachClassicLinkVpc', 'summary' => 'Unlinks an Elastic Compute Service (ECS) instance that resides in the classic network from a virtual private cloud (VPC) by closing the ClassicLink connection between the instance and the VPC. After the instance is unlinked from the VPC, the instance can no longer communicate with instances in the VPC.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-08-31T01:31:36.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-05-12T02:55:53.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '10', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachClassicLinkVpc'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DetachClassicLinkVpc', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'VPC', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:vpc/{#vpcId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DetachDisk' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '29020', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the ECS instance from which you want to detach the disk.', 'type' => 'string', 'required' => true, 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the disk that you want to detach.'."\n" ."\n" .'- The disk that you want to detach must be attached to an ECS instance and in the In Use (`In_use`) state.'."\n" ."\n" .'- The instance from which you want to detach a data disk must be in the `Running` or `Stopped` state.'."\n" ."\n" .'- The instance from which you want to detach the system disk must be in the `Stopped` state.', 'type' => 'string', 'required' => true, 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DeleteWithInstance', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to release the system disk or data disk when the instance from which you want to detach the disk is released. Valid values:'."\n" ."\n" .'- true: releases the disk when the instance is released.'."\n" ."\n" .'- false: does not release the disk when the instance is released. The disk is retained as a pay-as-you-go data disk.'."\n" ."\n" .'Default value: true.'."\n" ."\n" .'Take note of the following items:'."\n" ."\n" .'- You cannot specify this parameter for disks for which the multi-attach feature is enabled.'."\n" ."\n" .'- If a data disk is to be detached, the default value is `false`.'."\n" ."\n" .'- If you want to detach an `elastic ephemeral disk`, you must set `DeleteWithInstance` to `true`.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The input parameter is mandatory for processing this request is empty.', 'description' => 'A required parameter is not specified.'], ['errorCode' => 'InvalidRegionId.MalFormed', 'errorMessage' => 'The specified RegionId is not valid.', 'description' => ''], ['errorCode' => 'InvalidOperation.InstanceTypeNotSupport', 'errorMessage' => 'The instance type of the specified instance does not support hot detach disk.', 'description' => ''], ['errorCode' => 'DisksDetachingOnEcsExceeded', 'errorMessage' => 'The number of disks detaching on the instance exceeds the limit.', 'description' => 'The number of disks being unmounted on the instance exceeds the limit'], ['errorCode' => 'InvalidInstanceId.Malformed', 'errorMessage' => 'The specified parameter InstanceId is not valid.', 'description' => 'The specified InstanceId parameter is invalid.'], ], 403 => [ ['errorCode' => 'IncorrectDiskStatus', 'errorMessage' => 'The current disk status does not support this operation.', 'description' => ''], ['errorCode' => 'DiskNotPortable', 'errorMessage' => 'The specified disk is not a portable disk.', 'description' => ''], ['errorCode' => 'InstanceLockedForSecurity', 'errorMessage' => 'The instance is locked due to security.', 'description' => 'The operation is not supported while the instance is locked for security reasons.'], ['errorCode' => 'DependencyViolation', 'errorMessage' => 'The specified disk has not been attached on the specified instance.', 'description' => ''], ['errorCode' => 'DiskTypeViolation', 'errorMessage' => 'The specified disk is a system disk and cannot support the operation.', 'description' => 'The specified disk is a system disk and cannot be detached.'], ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => 'The current status of the resource does not support this operation.', 'description' => ''], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in disk white list.', 'description' => 'You are not authorized to manage the disk. Try again when you are authorized.'], ['errorCode' => 'InvalidInstance.ImageCategory', 'errorMessage' => 'The image category of the specified instance does not support detaching system disk.', 'description' => 'The specified system disk cannot be detached from the instance while the image of the instance is in the current state. Possible cause: The image that was used to create the instance has been deleted.'], ['errorCode' => 'DeleteWithInstance.Conflict', 'errorMessage' => 'Multi attach disk cannot be set to DeleteWithInstance attribute.', 'description' => 'Disks for which the multi-attach feature is enabled do not support the DeleteWithInstance attribute.'], ['errorCode' => 'InvalidOperation.DiskCategoryUnsupported', 'errorMessage' => 'The DetachDisk operation is not supported for elastic ephemeral disk.', 'description' => 'The DetachDisk operation is not supported for elastic ephemeral disk.'], ['errorCode' => 'InvalidParameter.DeleteWithInstance', 'errorMessage' => 'The DeleteWithInstance for the elastic ephemeral disk must be set to true.', 'description' => 'The DeleteWithInstance for the elastic ephemeral disk must be set to true.'], ['errorCode' => 'InvalidOperation.DiskDetachingFromThisEcs', 'errorMessage' => 'The specified disk is detaching from this ecs.', 'description' => 'The disk is being unmounted from the current instance.'], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified InstanceId does not exist.', 'description' => 'The specified instanceId is invalid.'], ['errorCode' => 'InvalidDiskId.NotFound', 'errorMessage' => 'The specified disk does not exist.', 'description' => 'The specified disk does not exist. Check whether the disk ID is correct.'], ['errorCode' => 'InvalidDisk.AlreadyDetached', 'errorMessage' => 'The specified disk has been detached.', 'description' => ''], ['errorCode' => 'InvalidDiskId.OperationNotSupported', 'errorMessage' => 'The operation is not supported due to base image not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'DetachDisk', 'summary' => 'Detaches a pay-as-you-go data disk or a system disk from an Elastic Compute Service (ECS) instance.', 'description' => 'Take note of the following items:'."\n" ."\n" .'- This operation is an asynchronous operation. After you call the operation to detach a disk from an ECS instance, the disk is detached in approximately 1 minute.'."\n" ."\n" .'- If `OperationLocks` in the response contains `"LockReason" : "security"` when you query information about an instance, the instance is locked for security reasons and all operations are prohibited on the instance.'."\n" ."\n" .'- If you want to attach an elastic ephemeral disk that you detached from an instance, you can attach the disk only to the instance.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-16T09:10:32.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-09-20T07:18:05.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-07-24T01:30:28.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-05-09T07:59:34.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-04-15T03:28:22.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-11-24T01:41:12.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2021-06-03T10:27:28.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachDisk'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DetachDisk', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Disk', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:disk/{#diskId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DetachInstanceRamRole' => [ 'summary' => 'Detaches instance Resource Access Management (RAM) roles from Elastic Compute Service (ECS) instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '29021', 'abilityTreeNodes' => ['FEATUREecsT6V7S4'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RamRoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the instance RAM role. You can call the [ListRoles](~~28713~~) operation of RAM to query the names of available instance RAM roles.', 'type' => 'string', 'required' => false, 'example' => 'RamRoleTest', 'title' => ''], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of ECS instances. You can specify 1 to 100 instance IDs.', 'type' => 'string', 'required' => true, 'example' => '["i-bp67acfmxazb4p****", "i-bp67acfmxazb5p****", "i-bp67acfmxazb6p****"…]', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RamRoleName' => ['description' => 'The name of the instance RAM role.', 'type' => 'string', 'example' => 'RamRoleTest', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of ECS instances from which you attempted to detach instance RAM roles.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'FailCount' => ['description' => 'The number of ECS instances from which instance RAM roles failed to be detached.', 'type' => 'integer', 'format' => 'int32', 'example' => '0', 'title' => ''], 'DetachInstanceRamRoleResults' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'DetachInstanceRamRoleResult' => [ 'description' => 'The results of the instance RAM role detachment, which include the names of the instance RAM roles and the IDs of the ECS instances from which you attempted to detach the instance RAM roles.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'Indicates whether the instance RAM role was detached. If 200 is returned, the instance RAM role was detached. If any other value is returned, the instance RAM role failed to be detached. For more information, see the "Error codes" section.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'Indicates whether the instance RAM role was detached. If success is returned, the instance RAM role was detached. If any other value is returned, the instance RAM role failed to be detached. For more information, see the "Error codes" section.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the ECS instance from which you attempted to detach the instance RAM role.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], 'Success' => ['description' => 'Indicates whether the instance RAM role was detached.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'InstanceRamRoleSets' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'InstanceRamRoleSet' => [ 'description' => 'The name of the instance RAM role and the ID of the ECS instance.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RamRoleName' => ['description' => 'The name of the instance RAM role.', 'type' => 'string', 'example' => 'RamRoleTest', 'title' => ''], 'InstanceId' => ['description' => 'The ID of the ECS instance.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidInstanceIds.Malformed', 'errorMessage' => 'The specified instanceIds are not valid.', 'description' => 'Multiple specified instance IDs are invalid.'], ], 403 => [ ['errorCode' => 'InvalidNetworkType.MismatchRamRole', 'errorMessage' => 'Ram role cannot be applied to instances of Classic network type.', 'description' => 'Instance RAM roles can be used only for instances of the VPC type, not for instances of the classic network type.'], ['errorCode' => 'InvalidUser.PassRoleForbidden', 'errorMessage' => 'The RAM user does not have the privilege to pass a RAM role.', 'description' => 'The RAM user is not authorized to pass a RAM role.'], ], [ ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => 'The specified instanceId does not exist.', 'description' => ''], ], ], 'title' => 'DetachInstanceRamRole', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachInstanceRamRole'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DetachInstanceRamRole', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Role', 'arn' => 'acs:ram:{#regionId}:{#accountId}:role/{#roleName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RamRoleName\\": \\"RamRoleTest\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 1,\\n \\"FailCount\\": 0,\\n \\"DetachInstanceRamRoleResults\\": {\\n \\"DetachInstanceRamRoleResult\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"Success\\",\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\",\\n \\"Success\\": true,\\n \\"InstanceRamRoleSets\\": {\\n \\"InstanceRamRoleSet\\": [\\n {\\n \\"RamRoleName\\": \\"RamRoleTest\\",\\n \\"InstanceId\\": \\"i-bp67acfmxazb4p****\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DetachKeyPair' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29022', 'abilityTreeNodes' => ['FEATUREecsI3PVYS'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the SSH key pair. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the SSH key pair.', 'type' => 'string', 'required' => true, 'example' => 'testKeyPairName', 'title' => ''], ], [ 'name' => 'InstanceIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of the instances from which you want to unbind the SSH key pair. The value is a JSON array that consists of up to 50 instance IDs. Separate multiple IDs with commas (,).', 'type' => 'string', 'required' => true, 'example' => '["i-bp1d6tsvznfghy7y****", "i-bp1ippxbaql9zet7****", … "i-bp1ib7bcz07l****"]', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'TotalCount' => ['description' => 'The total number of instances from which the key pair is unbound.', 'type' => 'string', 'example' => '2', 'title' => ''], 'FailCount' => ['description' => 'The number of instances from which the key pair failed to be unbound.', 'type' => 'string', 'example' => '0', 'title' => ''], 'Results' => [ 'type' => 'object', 'itemNode' => true, 'properties' => [ 'Result' => [ 'description' => 'The result set of the key pair unbinding operation.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Code' => ['description' => 'The operation status code. A value of 200 indicates that the operation is successful.', 'type' => 'string', 'example' => '200', 'title' => ''], 'Message' => ['description' => 'The operation message. For example, when `Code=200`, `Message` is `successful`.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1d6tsvznfghy7y****', 'title' => ''], 'Success' => ['description' => 'Indicates whether the operation is successful.', 'type' => 'string', 'example' => 'true', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidKeyPairName.NotFound', 'errorMessage' => 'The specified KeyPairName does not exist in our records.', 'description' => 'The specified KeyPairName parameter does not exist.'], ['errorCode' => 'InvalidInstanceIds.ValueNotSupported', 'errorMessage' => 'The specified parameter InstanceIds is not valid.', 'description' => 'The specified InstanceIds parameter is invalid.'], ], 403 => [ ['errorCode' => 'DependencyViolation.WindowsInstance', 'errorMessage' => 'The instance creating is windows, cannot use ssh key pair to login.', 'description' => ''], ['errorCode' => 'InstanceKeyPairLimitExceeded', 'errorMessage' => 'The specified instances are beyond the permitted range.', 'description' => ''], ], ], 'title' => 'Unbind SSH key pairs from linux instances', 'summary' => 'Unbinds SSH key pairs from one or more Linux instances.', 'description' => 'Take note of the following items when you call this operation:'."\n" ."\n" .'- After you unbind an SSH key pair, restart the instance ([RebootInstance](~~25502~~)) for the changes to take effect. '."\n" .'- After you unbind an SSH key pair, the instance uses the username and password authentication method by default.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-07-10T03:17:34.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachKeyPair'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DetachKeyPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'KeyPair', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:keypair/{#keypairName}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": \\"2\\",\\n \\"FailCount\\": \\"0\\",\\n \\"Results\\": {\\n \\"Result\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Message\\": \\"successful\\",\\n \\"InstanceId\\": \\"i-bp1d6tsvznfghy7y****\\",\\n \\"Success\\": \\"true\\"\\n }\\n ]\\n }\\n}","type":"json"}]', ], 'DetachNetworkInterface' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29295', 'abilityTreeNodes' => ['FEATUREecsT5S9N2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the ENI.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the ENI.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the instance', 'type' => 'string', 'required' => true, 'example' => 'eni-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the trunk ENI.'."\n" ."\n" .'> This parameter is unavailable for use.', 'type' => 'string', 'required' => true, 'example' => 'i-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'TrunkNetworkInstanceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the request.', 'type' => 'string', 'required' => false, 'example' => 'eni-f8zapqwj1v1j4ia3****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidRegion', 'errorMessage' => '%s', 'description' => 'The specified RegionId parameter is invalid.'], ['errorCode' => 'InvalidOperation.InvalidEcsState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.InvalidEniState', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.DetachPrimaryEniNotAllowed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidParams.EniId', 'errorMessage' => '%s', 'description' => 'The specified EniId parameter is invalid.'], ['errorCode' => 'InvalidParameter.EniNotBelongEcs', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.EniHotPlugNotSupported', 'errorMessage' => 'The ENI with high-performance traffic mode cannot be hot-plugged. Please stop the ECS instance to which the ENI is attached, and try again.', 'description' => 'An ENI with high-performance communication mode enabled does not support hot unplugging. Stop the ECS instance to which the ENI is mounted and try again.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'MaxEniCountExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be managed has been reached.'], ['errorCode' => 'EniPerInstanceLimitExceeded', 'errorMessage' => '%s', 'description' => 'The maximum number of ENIs that can be attached to the specified instance has been reached.'], ['errorCode' => 'InvalidOperation.AvailabilityZoneMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.VpcMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check whether the VPC in the operation corresponds to other parameters.'], ['errorCode' => 'SecurityGroupInstanceLimitExceed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidSecurityGroupId.NotVpc', 'errorMessage' => '%s', 'description' => 'The specified SecurityGroupId parameter is invalid and the network type of the security group is not VPC.'], ['errorCode' => 'InvalidOperation.InvalidEniType', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.EniServiceManaged', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.EniLinked', 'errorMessage' => '%s', 'description' => 'The operation is invalid because the current ENI of the instance is associated with other ENIs. You must disassociate the ENI from the other ENIs before you can unbind the ENI from the instance.'], ['errorCode' => 'InvalidInstanceId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance does not exist. Check whether the InstanceId parameter is valid.'], ['errorCode' => 'InvalidOperation.HotPlugNotSupport', 'errorMessage' => '%s', 'description' => 'The operation is not supported while the specified resource is running. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.InvalidTrunkEniStatus', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidOperation.TrunkingIsNotAllowed', 'errorMessage' => '%s', 'description' => 'The trunk network card is not operational.'], ['errorCode' => 'InvalidOperation.InstanceTypeNotSupportEniTrunking', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidParameter.EniNotBelongTrunk', 'errorMessage' => '%s', 'description' => 'The specified ENI is not in trunk mode. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.EniTypeNotSupportTrunking', 'errorMessage' => '%s', 'description' => 'The type of the ENI does not support operations related to the trunk mode. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidOperation.HasMemberEniAttached', 'errorMessage' => '%s', 'description' => 'Other ENIs are attached to the ENI that works in trunk mode. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidParameter.EniNotBelongEcs', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'InvalidEcsId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified instance ID does not exist.'], ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified security group ID does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred. Try again later.'], ['errorCode' => 'InvalidSecurityGroupId.EniMustHaveSecurityGroup', 'errorMessage' => 'The specified network card does not have an associated security group.', 'description' => 'The specified NIC is not associated with a security group.'], ], ], 'staticInfo' => ['returnType' => 'asynchronous', 'callback' => 'Ecs::2014-05-26::DescribeNetworkInterfaces', 'callbackInterval' => 2000, 'maxCallbackTimes' => 30], 'title' => 'DetachNetworkInterface', 'summary' => 'Detach an elastic network interface (ENI) from an Elastic Compute Service (ECS) instance.', 'description' => 'Take note of the following items:'."\n" ."\n" .'- You cannot detach the primary ENI of an instance.'."\n" ."\n" .'- Make sure that the ENI to be detached is in the Detaching (Unbinding) or InUse (Bound) state.'."\n" ."\n" .'- Make sure that the instance from which you want to detach an ENI is in the Running (Running) or Stopped (Stopped) state.'."\n" ."\n" .'- The DetachNetworkInterface operation is an asynchronous operation. After this operation is called to detach an ENI, you can check the status or events of the ENI to determine whether the ENI is detached. The following figure shows the transitions between the states of the ENI.![](https://help-static-aliyun-doc.aliyuncs.com/file-manage-files/en-US/20230223/uemr/DetachNetworkInterface.png)'."\n" ."\n" .' - If the ENI is in the Detaching state, the ENI detachment request is sent and the ENI is being detached from the associated instance.'."\n" ."\n" .' - If the ENI is in the Available state, the ENI is detached from the associated instance.'."\n" ."\n" .' - If the ENI is stuck in the Detaching state, the ENI may fail to be detached from the associated instance due to specific reasons. For example, the ENI may fail to be detached because the operating system of the instance did not respond to the ENI detachment request. If this issue occurs, you can re-initiate the request to detach the ENI. If the issue persists, restart the instance.'."\n" ."\n" .'For information about examples on how to call the DetachNetworkInterface operation, see [Detach an ENI from an ECS instance](~~471551~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2024-09-24T11:30:21.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-11-15T09:49:47.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '500', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DetachNetworkInterface'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DetachNetworkInterface', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'DisableActivation' => [ 'summary' => 'To prevent an activation code from being leaked, you can call the DisableActivation operation to disable the activation code. Disabled activation codes cannot be used to register new managed instances. However, managed instances that are already registered are not affected.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29296', 'abilityTreeNodes' => ['FEATUREecsLJD94P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Supported regions: China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Hangzhou), China (Shanghai), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore, Japan (Tokyo), US (Silicon Valley), and US (Virginia).'."\n" ."\n" .'You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ActivationId', 'in' => 'query', 'schema' => ['description' => 'The request ID.', 'type' => 'string', 'required' => true, 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'Details about the activation code and its usage information.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F74942176', 'title' => ''], 'Activation' => [ 'description' => 'The time when the activation code was created.', 'type' => 'object', 'properties' => [ 'CreationTime' => ['description' => 'The number of instances that were deregistered.', 'type' => 'string', 'example' => '2021-01-20T06:00:00Z', 'title' => ''], 'DeregisteredCount' => ['description' => 'The maximum number of times that the activation code can be used to register managed instances.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceCount' => ['description' => 'The description of the activation code.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Description' => ['description' => 'The number of registered instances.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'RegisteredCount' => ['description' => 'The default prefix of the instance name.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'InstanceName' => ['description' => 'Indicates whether the activation code is disabled.', 'type' => 'string', 'example' => 'test-InstanceName', 'title' => ''], 'Disabled' => ['description' => 'The IP addresses of the hosts that can use the activation code.', 'type' => 'boolean', 'example' => 'false', 'title' => ''], 'IpAddressRange' => ['description' => 'The validity period of the activation code. Unit: hours.', 'type' => 'string', 'example' => '0.0.0.0/0', 'title' => ''], 'TimeToLiveInHours' => ['description' => 'The activation code ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '4', 'title' => ''], 'ActivationId' => ['description' => 'The ID of the activation code.', 'type' => 'string', 'example' => '4ECEEE12-56F1-4FBC-9AB1-890F1234****', 'title' => ''], ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'ActivationId.NotFound', 'errorMessage' => 'The specified activation id does not exist.', 'description' => 'The specified activation code does not exist.'], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F74942176\\",\\n \\"Activation\\": {\\n \\"CreationTime\\": \\"2021-01-20T06:00:00Z\\",\\n \\"DeregisteredCount\\": 1,\\n \\"InstanceCount\\": 1,\\n \\"Description\\": \\"This is description.\\",\\n \\"RegisteredCount\\": 1,\\n \\"InstanceName\\": \\"test-InstanceName\\",\\n \\"Disabled\\": false,\\n \\"IpAddressRange\\": \\"0.0.0.0/0\\",\\n \\"TimeToLiveInHours\\": 4,\\n \\"ActivationId\\": \\"4ECEEE12-56F1-4FBC-9AB1-890F1234****\\"\\n }\\n}","type":"json"}]', 'title' => 'DisableActivation', 'description' => '## [](#)Usage notes'."\n" ."\n" .'To prevent an activation code from being leaked, you can call the DisableActivation operation to disable the activation code. Disabled activation codes cannot be used to register new managed instances. However, managed instances that are already registered are not affected.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2022-02-25T07:27:48.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableActivation'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DisableActivation', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Activation', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:activation/{#ActivationId}'], ], ], ], ], 'translator' => 'manual', ], 'DisableDiskEncryptionByDefault' => [ 'summary' => 'Disables account-level default encryption of Elastic Block Storage (EBS) resources in a region. After you disable account-level default encryption of EBS resources in a region, the encryption status of existing disks in the region does not change. When you create a disk, you can still choose to encrypt the disk.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '201496', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region for which you want to disable Account-level EBS Default Encryption. You can call the [DescribeRegions](~~2679950~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'Abs.InvalidAction.RegionNotSupport', 'errorMessage' => 'This region does not support this action.', 'description' => 'The operation is not supported in the region.'], ['errorCode' => 'InvalidParameter.RegionIdNotExists', 'errorMessage' => 'The specified region does not exists.', 'description' => 'The region does not exist.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in disk white list.', 'description' => 'You are not authorized to manage the disk. Try again when you are authorized.'], ['errorCode' => 'InvalidDefaultEncryption.NotFound', 'errorMessage' => 'You have not configured default encryption setting in this region.', 'description' => 'Cloud disk encryption by default has not been enabled for the region.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DisableDiskEncryptionByDefault', 'description' => '- **Instructions**'."\n" ."\n" .' - You must grant the RAM user the `AliyunECSFullAccess` permissions. For information about how to grant permissions to a RAM user, see [Grant permissions to a RAM user](~~116146~~).'."\n" ."\n" .'- **Considerations**'."\n" ."\n" .' - After Account-level EBS Default Encryption is disabled, the encryption status of existing cloud disks is not affected.'."\n" ."\n" .' - After Account-level EBS Default Encryption is disabled, you can still choose to encrypt new cloud disks when you purchase the disks.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'DisableDiskEncryptionByDefault'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'ecs:DisableDiskEncryptionByDefault', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'DisableNetworkInterfaceQoS' => [ 'path' => '', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29306', 'abilityTreeNodes' => ['FEATUREecsT5S9N2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the ENI. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the ENI. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the ENI.', 'type' => 'string', 'required' => true, 'example' => 'eni-bp1iqejowblx6h8j****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '745CEC9F-0DD7-4451-9FE7-8B752F39****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidParams.EniId', 'errorMessage' => '%s', 'description' => 'The specified EniId parameter is invalid.'], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Check whether parameter conflicts exist. %s is a variable. An error message is dynamically returned based on call conditions.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'InvalidOperation.AvailabilityZoneMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.VpcMismatch', 'errorMessage' => '%s', 'description' => 'The operation is invalid. Check whether the VPC in the operation corresponds to other parameters.'], ['errorCode' => 'InvalidOperation.EniServiceManaged', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ], [ ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DisableNetworkInterfaceQoS', 'summary' => 'Disables Elastic Network Interface (ENI) QoS speed setting.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:DisableNetworkInterfaceQoS', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"745CEC9F-0DD7-4451-9FE7-8B752F39****\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'EnableDiskEncryptionByDefault' => [ 'summary' => 'Enables the Account-level Elastic Block Storage (EBS) Default Encryption feature in a region.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '201495', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~2679950~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response parameters.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter.Encrypted.KmsNotEnabled', 'errorMessage' => 'KMS must be enabled for encrypted disks.', 'description' => 'KMS is not activated. You must activate KMS before you can encrypt disks.'], ['errorCode' => 'InvalidParameter.KmsNotEnabled', 'errorMessage' => 'Failed to perform this operation because KMS is not activated.', 'description' => 'You need to activate KMS key management service.'], ], 403 => [ ['errorCode' => 'Abs.InvalidAction.RegionNotSupport', 'errorMessage' => 'This region does not support this action.', 'description' => 'The operation is not supported in the region.'], ['errorCode' => 'InvalidOperation.DefaultEncryptionAlreadyEnabled', 'errorMessage' => 'The specified region is already default encryption settings.', 'description' => 'The region has enabled cloud disk encryption by default.'], ['errorCode' => 'InvalidParameter.RegionIdNotExists', 'errorMessage' => 'The specified region does not exists.', 'description' => 'The region does not exist.'], ['errorCode' => 'InvalidParameter.KMSKeyId.KMSUnauthorized', 'errorMessage' => 'ECS service have no right to access your KMS.', 'description' => 'ECS is not authorized to access your KMS resources.'], ['errorCode' => 'InvalidOperation.KMSKeyIdNotFound', 'errorMessage' => 'The specified KMSKeyId not found, %s.', 'description' => 'The associated KMS encryption key cannot be found. Verify that the KMS encryption key is valid.'], ['errorCode' => 'InvalidOperation.KMSServiceNotOpen', 'errorMessage' => 'KMS service is currently not open.', 'description' => 'The KMS service has not been enabled.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in disk white list.', 'description' => 'You are not authorized to manage the disk. Try again when you are authorized.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKNotEnabled', 'errorMessage' => 'The CMK (Customer Master Key) must be in an active state.', 'description' => 'The CMK (Customer Master Key) must be in an active state.'], ['errorCode' => 'InvalidParameter.KMSKeyId.CMKUnauthorized', 'errorMessage' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.', 'description' => 'The CMK(Customer Master Key) lacks authorization to add tags to the ECS service.'], ], ], 'title' => 'EnableDiskEncryptionByDefault', 'description' => '> The Account-level EBS Default Encryption feature is available only in specific regions and to specific users. To use the feature, [submit a ticket](https://smartservice.console.aliyun.com/service/create-ticket-intl).'."\n" ."\n" .'- **Precautions**'."\n" ."\n" .' - To enable the Account-level EBS Default Encryption feature as a Resource Access Management (RAM) user, grant the `AliyunECSFullAccess` permission to the RAM user. For more information, see [Grant permissions to a RAM user](~~116146~~).'."\n" ."\n" .' - Before you can enable the Account-level EBS Default Encryption feature in a region, you must [activate Key Management Service (KMS)](~~480156~~) in the region.'."\n" ."\n" .' - After you enable the Account-level EBS Default Encryption feature in a region, you can purchase only encrypted cloud disks in the region. For more information, see the [Limits](~~59643#50de175230erj~~) section of the "Encrypt cloud disks" topic.'."\n" ."\n" .'- **Considerations**'."\n" ."\n" .' - After you enable the Account-level EBS Default Encryption feature in a region, new pay-as-you-go and subscription cloud disks in the region must be encrypted. You can use the KMS key configured for the feature or specify other KMS keys to encrypt the cloud disks.'."\n" ."\n" .' - The first time you enable the Account-level EBS Default Encryption feature in a region, the service key in the region is automatically used to encrypt EBS resources.'."\n" ."\n" .'- **Suggestions**'."\n" ."\n" .' - You can call the [DescribeDiskEncryptionByDefaultStatus](~~2851493~~) operation to query whether the Account-level EBS Default Encryption feature is enabled in a region and the [DescribeDiskDefaultKMSKeyId](~~2851490~~) operation to query the ID of the KMS key used by the feature in a region.'."\n" ."\n" .' - You can call the [ModifyDiskDefaultKMSKeyId](~~2851492~~) or [ResetDiskDefaultKMSKeyId](~~2851539~~) operation to change or reset the KMS key used by the Account-level EBS Default Encryption feature in a region.'."\n" ."\n" .' - You can call the [DisableDiskEncryptionByDefault](~~2851491~~) operation to disable the Account-level EBS Default Encryption feature in a region.', 'changeSet' => [ ['createdAt' => '2025-07-28T06:59:10.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-19T08:46:02.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnableDiskEncryptionByDefault'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'ecs:EnableDiskEncryptionByDefault', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'EnableNetworkInterfaceQoS' => [ 'summary' => 'Enable or modify Elastic Network Interface (ENI) QoS rate limit settings', 'path' => '', 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29306', 'abilityTreeNodes' => ['FEATUREecsT5S9N2'], 'autoTest' => true, 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The Region ID. You can invoke DescribeRegions to view the latest Alibaba Cloud Region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'NetworkInterfaceId', 'in' => 'query', 'schema' => ['description' => 'The ID of the Elastic Network Interface (ENI).', 'type' => 'string', 'required' => true, 'example' => 'eni-2zeh9atclduxvf1z****', 'title' => ''], ], [ 'name' => 'QoS', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'title' => '', 'description' => 'QoS Speed Limit Settings', 'type' => 'object', 'properties' => [ 'BandwidthTx' => ['description' => 'The maximum outbound internal bandwidth.'."\n" ."\n" .'Unit: kbit/s, step size: 1000 (1Mbps), value range: \\[50000, +♾️)', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => '50000'], 'BandwidthRx' => ['description' => 'The maximum inbound internal bandwidth.'."\n" ."\n" .'Unit: kbit/s, step size: 1000 (1Mbps), value range: \\[50000, +♾️)', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => '50000'], 'PpsTx' => ['description' => 'The outbound packet forwarding rate over the internal network.'."\n" ."\n" .'Unit: pps, step size: 10000, value range: \\[10000, +♾️)', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => '50000'], 'PpsRx' => ['description' => 'The inbound packet forwarding rate over the internal network.'."\n" ."\n" .'Unit: pps, step size: 10000, value range: \\[10000, +♾️)', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => '50000'], 'ConcurrentConnections' => ['description' => 'Maximum Number of Sessions'."\n" ."\n" .'Step size: 10000, value range: \\[10000, +♾️)', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => '50000'], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ['errorCode' => 'UnsupportedParameter', 'errorMessage' => '%s', 'description' => 'The parameter is not supported.'], ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid.'], ['errorCode' => 'InvalidInstanceID.Malformed', 'errorMessage' => '%s', 'description' => 'The specified InstanceId parameter is invalid.'], ['errorCode' => 'InvalidParams.EniId', 'errorMessage' => '%s', 'description' => 'The specified EniId parameter is invalid.'], ['errorCode' => 'Forbidden.RegionId', 'errorMessage' => '%s', 'description' => 'The service is unavailable in the current region.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => '%s', 'description' => 'The specified parameter is invalid. Check whether parameter conflicts exist. %s is a variable. An error message is dynamically returned based on call conditions.'], ], 403 => [ ['errorCode' => 'InvalidUserType.NotSupported', 'errorMessage' => '%s', 'description' => 'Your account does not support this operation.'], ['errorCode' => 'Abs.InvalidAccount.NotFound', 'errorMessage' => '%s', 'description' => 'Your Alibaba Cloud account does not exist or your AccessKey pair has expired.'], ['errorCode' => 'Forbidden.NotSupportRAM', 'errorMessage' => '%s', 'description' => 'RAM users are not authorized to perform this operation.'], ['errorCode' => 'Forbidden.SubUser', 'errorMessage' => '%s', 'description' => 'You are not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.'], ['errorCode' => 'InvalidOperation.EniServiceManaged', 'errorMessage' => '%s', 'description' => 'The operation is invalid.'], ['errorCode' => 'InvalidOperation.ResourceManagedByCloudProduct', 'errorMessage' => '%s', 'description' => 'You cannot modify security groups managed by cloud services.'], ], [ ['errorCode' => 'InvalidEniId.NotFound', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidVSwitchId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified vSwitch does not exist.'], ['errorCode' => 'InvalidSecurityGroupId.NotFound', 'errorMessage' => '%s', 'description' => 'The specified security group ID does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => 'EnableNetworkInterfaceQoS', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:EnableNetworkInterfaceQoS', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'NetworkInterface', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:eni/{#eniId}'], ], ], ], ], 'translator' => 'manual', ], 'EnablePhysicalConnection' => [ 'summary' => 'Enables a physical connection.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], 'autoTest' => false, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'PhysicalConnectionId', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => true, 'description' => '', 'title' => '', 'example' => ''], ], [ 'name' => 'UserCidr', 'in' => 'query', 'schema' => ['type' => 'string', 'required' => false, 'description' => '', 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['type' => 'string', 'description' => '', 'title' => '', 'example' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'Forbidden.NotAllowedInState', 'errorMessage' => 'The request does not allow in this state.', 'description' => ''], ['errorCode' => 'INSTANCE.STATUS.NOT.ALLOW', 'errorMessage' => 'Instance status not allow', 'description' => ''], ], 404 => [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidPhysicalConnectionId.NotFound', 'errorMessage' => 'The PhysicalConnectionId provided does not exist in our records.', 'description' => 'The specified Express Connect circuit does not exist.'], ], ], 'staticInfo' => [ 'substitutions' => ['Vpc::2016-04-28::EnablePhysicalConnection'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '300', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EnablePhysicalConnection'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'vpc:EnablePhysicalConnection', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'PhysicalConnection', 'arn' => 'acs:vpc:{#regionId}:{#accountId}:physicalconnection/{#PhysicalConnectionId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'EnablePhysicalConnection', ], 'EndTerminalSession' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '255784', 'abilityTreeNodes' => ['FEATUREecsPW0L5N'], 'tenantRelevance' => 'tenant', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the session resides.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'SessionId', 'in' => 'query', 'schema' => ['description' => 'The session ID.', 'type' => 'string', 'required' => true, 'example' => 's-hz023od0x9****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ], 403 => [ ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidSessionId.NotFound', 'errorMessage' => 'The specified SessionId does not exist.', 'description' => 'SessionId does not exist.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'Close a terminal session', 'summary' => 'Permanently closes the data connection of a specified session.', 'description' => '- Closes the data connection of a specified session. The session can no longer be used.'."\n" ."\n" .'- The WebSocket URL associated with the session also becomes invalid and can no longer be used.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'EndTerminalSession'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:EndTerminalSession', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#InstanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', ], 'ExportImage' => [ 'summary' => 'Export a custom image to an OSS bucket in the same region as the image.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'high', 'chargeType' => 'free', 'abilityTreeCode' => '29030', 'abilityTreeNodes' => ['FEATUREecsZ3BT05'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the custom image. You can call [DescribeRegions](~~25609~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageId', 'in' => 'query', 'schema' => ['description' => 'The ID of the custom image.', 'type' => 'string', 'required' => true, 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'OSSBucket', 'in' => 'query', 'schema' => ['description' => 'The destination OSS bucket for the exported image.', 'type' => 'string', 'required' => true, 'example' => 'testexportImage', 'title' => ''], ], [ 'name' => 'OSSPrefix', 'in' => 'query', 'schema' => ['description' => 'The prefix for the OSS object. The prefix must be 1 to 30 characters in length and can consist of letters and digits.', 'type' => 'string', 'required' => false, 'example' => 'EcsExport', 'title' => ''], ], [ 'name' => 'ImageFormat', 'in' => 'query', 'schema' => ['description' => 'The format of the exported image file. Valid values:'."\n" ."\n" .'- raw.'."\n" ."\n" .'- vhd.'."\n" ."\n" .'- qcow2.'."\n" ."\n" .'- vmdk.'."\n" ."\n" .'- vdi.'."\n" ."\n" .'Default value: raw.', 'type' => 'string', 'required' => false, 'example' => 'raw', 'title' => ''], ], [ 'name' => 'RoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM role used to export the image.', 'type' => 'string', 'required' => false, 'example' => 'AliyunECSImageExportDefaultRole', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform a dry run to check the request\'s validity without actually exporting the image. Valid values:'."\n" ."\n" .'- `true`: Performs a dry run. If the check succeeds, the `DryRunOperation` error code is returned. If the check fails, an error is returned.'."\n" .'- `false`: Sends a normal request. If the check succeeds, the image is exported.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C8B26B44-0189-443E-9816-D951F596****', 'title' => ''], 'TaskId' => ['description' => 'The ID of the image export task.', 'type' => 'string', 'example' => 'tsk-bp67acfmxazb4p****', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'An input parameter "RegionId" that is mandatory for processing the request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidImageName.Malformed', 'errorMessage' => 'The specified Image name is wrongly formed.', 'description' => 'The specified image name is invalid. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It cannot contain http:// or https://.'], ['errorCode' => 'InvalidOSSPrefix.Malformed', 'errorMessage' => 'The specified OSSPrefix format is wrongly formed.', 'description' => 'The specified OssPrefix parameter is invalid.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support image import or export.', 'description' => 'The specified region does not support the operation.'], ['errorCode' => 'IncorrectImageStatus', 'errorMessage' => 'The specified Image is not available.', 'description' => ''], ['errorCode' => 'InvalidImageFormat.Malformed', 'errorMessage' => 'The specified Image Format is wrongly formed.', 'description' => 'The specified image format is invalid.'], ['errorCode' => 'InvalidOSSBucket.NotFound', 'errorMessage' => 'The specified OSS bucket does not exist in this region.', 'description' => 'The specified bucket does not exist.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The specified image contains the snapshot of the data disk,does not support this operation.', 'description' => 'Images that contain data disk snapshots do not support this operation.'], ['errorCode' => 'InvalidImage.DiskAmountOrSize', 'errorMessage' => '%s', 'description' => 'The image cannot be exported because it contains more than four data disk snapshots or because one of its data disk snapshot exceeds 500 GiB in size.'], ['errorCode' => 'ImageNotSupported', 'errorMessage' => 'The specified Image contains encrypted snapshots, do not support export.', 'description' => 'The specified image contains encrypted snapshots and cannot be exported.'], ['errorCode' => 'InvalidOSSObject.NeedRestore', 'errorMessage' => 'The specified OSS object is a archive object, need restore first.', 'description' => ''], ['errorCode' => 'InvalidOSSBucket.NotMatched', 'errorMessage' => 'The specified OSS bucket is incorrect, %s.', 'description' => 'The specified DiskDeviceMapping.N.OSSBucket parameter is invalid. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidImageFormat.RegionNotSupported', 'errorMessage' => 'The specified image format is not supported in current region.', 'description' => ''], ['errorCode' => 'InvalidOSSBucket.ArchiveOssBucketNotSupported', 'errorMessage' => 'Exporting an image to an OSS bucket with Archive, Cold Archive, or Deep Cold Archive storage class is not supported.', 'description' => 'Exporting an image to an OSS bucket with Archive, Cold Archive, or Deep Cold Archive storage class is not supported.'], ], 403 => [ ['errorCode' => 'ImageNotSupported', 'errorMessage' => 'The specified image from the image market, do not support export image.', 'description' => 'The specified image is an Alibaba Cloud Marketplace image and cannot be exported.'], ['errorCode' => 'ImageIsExporting', 'errorMessage' => 'The specified Image is being exported. You can use the DescribeTasks API to check the status of existing tasks.', 'description' => 'The specified image is being exported. You can use the DescribeTasks API to query the status of tasks in progress.'], ['errorCode' => 'ExportImageFailed', 'errorMessage' => 'Exporting image is failed, Please contact the administrator.', 'description' => 'The image cannot be exported. Contact your system administrator.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in the white list of exporting image.', 'description' => 'You are not authorized to export images.'], ['errorCode' => 'NoSetRoletoECSServiceAcount', 'errorMessage' => 'ECS service account Have no right to access your OSS.please attach a role of access your oss to ECS service account.', 'description' => ''], ['errorCode' => 'InvalidOSS.NotAuthorized', 'errorMessage' => 'The specified OSS bucket or object is not allowed to access.', 'description' => 'You do not have the permission to access the specified OSS bucket and object.'], ['errorCode' => 'ConcurrentQuotaExceed.ExportImage', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'WeeklyQuotaExceed.ExportImage', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageLicense.NotSupported', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageCategory.NotSupported', 'errorMessage' => 'The specified image category is not supported.', 'description' => 'The type of mirror to which the specified mirror belongs (ImageCategory or more commonly known as ImageOwnerAlias) does not support this operation.'], ['errorCode' => 'InvalidOSSBucket.EncryptUnsupported', 'errorMessage' => 'Accessing objects from encrypted OSS bucket is not supported.', 'description' => 'You cannot read objects from encrypted OSS buckets.'], ], [ ['errorCode' => 'InvalidImageId.NotFound', 'errorMessage' => 'The specified ImageId does not exist.', 'description' => 'The specified image does not exist in this account. Check whether the image ID is correct.'], ], ], 'title' => 'ExportImage', 'description' => 'Before you export an image:'."\n" ."\n" .'- Review the prerequisites and considerations in [Export an image](~~58181~~).'."\n" ."\n" .'- The `ImageFormat` parameter is available only in the following regions: Japan (Tokyo), Indonesia (Jakarta), Germany (Frankfurt), UAE (Dubai), US (Virginia), UK (London), Singapore, Malaysia (Kuala Lumpur), and US (Silicon Valley). In regions that do not support this parameter, images are exported in the RAW format by default.'."\n" ."\n" .'- You must use RAM to grant ECS permissions to write to OSS. Follow these steps:'."\n" ."\n" .' - Create a role with the required name `AliyunECSImageExportDefaultRole` and attach the following trust policy:```'."\n" .' {'."\n" .' "Statement": ['."\n" .' {'."\n" .' "Action": "sts:AssumeRole",'."\n" .' "Effect": "Allow",'."\n" .' "Principal": {'."\n" .' "Service": ['."\n" .' "ecs.aliyuncs.com"'."\n" .' ]'."\n" .' }'."\n" .' }'."\n" .' ],'."\n" .' "Version": "1"'."\n" .' }'."\n" .' ```'."\n" ."\n" .' - Attach the default system permission policy, `AliyunECSImageExportRolePolicy`, to the `AliyunECSImageExportDefaultRole` role. For more details, see [Grant permissions to a RAM role](https://ram.console.aliyun.com/?spm=5176.2020520101.0.0.64c64df5dfpmdY#/role/authorize?request=%7B%22Requests%22:%20%7B%22request1%22:%20%7B%22RoleName%22:%20%22AliyunECSImageImportDefaultRole%22,%20%22TemplateId%22:%20%22ECSImportRole%22%7D,%20%22request2%22:%20%7B%22RoleName%22:%20%22AliyunECSImageExportDefaultRole%22,%20%22TemplateId%22:%20%22ECSExportRole%22%7D%7D,%20%22ReturnUrl%22:%20%22https:%2F%2Fecs.console.aliyun.com%2F%22,%20%22Service%22:%20%22ECS%22%7D). You can also create a custom policy that includes the following permissions:```'."\n" .' {'."\n" .' "Version": "1",'."\n" .' "Statement": ['."\n" .' {'."\n" .' "Action": ['."\n" .' "oss:GetObject",'."\n" .' "oss:PutObject",'."\n" .' "oss:DeleteObject",'."\n" .' "oss:GetBucketLocation",'."\n" .' "oss:GetBucketInfo",'."\n" .' "oss:AbortMultipartUpload",'."\n" .' "oss:ListMultipartUploads",'."\n" .' "oss:ListParts"'."\n" .' ],'."\n" .' "Resource": "*",'."\n" .' "Effect": "Allow"'."\n" .' }'."\n" .' ]'."\n" .' }'."\n" .' ```'."\n" ."\n" .'After the image is exported:'."\n" ."\n" .'The custom image is stored in the specified OSS bucket. For download instructions, see [Download a custom image](~~31912~~).', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-10-16T02:26:36.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-04-29T06:23:42.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-02-27T06:39:46.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-05-26T09:19:16.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExportImage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:ExportImage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/{#imageId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C8B26B44-0189-443E-9816-D951F596****\\",\\n \\"TaskId\\": \\"tsk-bp67acfmxazb4p****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n}","type":"json"}]', ], 'ExportSnapshot' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => true, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29031', 'abilityTreeNodes' => ['FEATUREecsDXRH67'], ], 'parameters' => [ [ 'name' => 'SnapshotId', 'in' => 'query', 'schema' => ['description' => 'The ID of the snapshot to export.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the snapshot is located. You can call the `DescribeRegions` operation to query the latest region list.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'OssBucket', 'in' => 'query', 'schema' => ['description' => 'The name of the destination OSS bucket. The bucket must be in the same region as the snapshot.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => ''], ], [ 'name' => 'RoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM role that authorizes ECS to export the snapshot. This role must grant ECS permission to write to the specified OSS bucket. If you omit this parameter, ECS uses its default service-linked role.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'TaskId' => ['description' => 'The export task ID. Call the `DescribeTasks` operation to check the task status.', 'type' => 'string', 'title' => '', 'example' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => ''], ], 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'ExportSnapshotFailed', 'errorMessage' => 'Exporting snapshot is failed, Please contact the administrator.', 'description' => ''], ['errorCode' => 'SNAPSHOT_IS_EXPORTING', 'errorMessage' => 'The specified snapshot is already exporting.', 'description' => ''], ['errorCode' => 'InvalidSnapshotId.NotFound', 'errorMessage' => 'The specified snapshot is not exists.', 'description' => 'The specified source snapshot does not exist.'], ['errorCode' => 'SNAPSHOT_CREATE_NOT_FINISHED', 'errorMessage' => 'The specified snapshot is not finished yet.', 'description' => ''], ['errorCode' => 'OSS_AUTHORIZED_FAILED', 'errorMessage' => 'ECS service account Have no right to access your OSS. please attach a role of access your oss to ECS service account.', 'description' => ''], ['errorCode' => 'InvalidOSSBucket.NotFound', 'errorMessage' => 'The specified OSS bucket does not exist in this region.', 'description' => ''], ['errorCode' => 'InvalidUser.NotInWhiteList', 'errorMessage' => 'The user is not in the white list of exporting snapshot.', 'description' => ''], ['errorCode' => 'InvalidOSSBucket.InOtherRegion', 'errorMessage' => 'The specified OSS bucket is in another region.', 'description' => ''], ], ], 'staticInfo' => ['noSubstitutionReason' => '无替代API,历史原因导致该API被标记为弃用。'], 'summary' => 'Exports a snapshot to a specified Object Storage Service (OSS) bucket.', 'changeSet' => [ ['createdAt' => '2025-07-17T02:21:40.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ExportSnapshot'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:ExportSnapshot', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Snapshot', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:snapshot/{#snapshotId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TaskId\\": \\"\\",\\n \\"RequestId\\": \\"\\"\\n}","type":"json"}]', 'title' => 'ExportSnapshot', ], 'GetInstanceConsoleOutput' => [ 'summary' => 'Retrieves the system command-line output of an instance. The data is returned in Base64-encoded format.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29297', 'abilityTreeNodes' => ['FEATUREecsQDYV10'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent list of Alibaba Cloud regions.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1c1xhsrac2coiw****', 'title' => ''], ], [ 'name' => 'RemoveSymbols', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to remove formatting symbols from the returned text. Valid values:'."\n" ."\n" .'- true: removes formatting symbols.'."\n" .'- false: does not remove formatting symbols.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'LastUpdateTime' => ['description' => 'The record of the time when the last line of the Linux kernel logs was printed, in UTC+8. Format: yyyy-MM-dd HH:mm:ss.', 'type' => 'string', 'example' => '2018-03-22 10:04:57', 'title' => ''], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1c1xhsrac2coiw****', 'title' => ''], 'ConsoleOutput' => ['description' => 'The Base64-encoded system command-line output of the instance.', 'type' => 'string', 'example' => 'V2VsY29tZSB0byBDZW50T1MgCgpDaGVja2luZyBmaWxlc3lzdGVtcwpDaGVja2luZyBhbGwgZmlsZSBzeXN0ZW1zLgpbL3NiaW4vZnNjay5leHQ0ICgxKSAtLSAvXSBmc2NrLmV4dDQgLWEgL2Rldi92ZGExIAovZGV2L3ZkYTE6IGNsZWFuLCAzMjAxNi8yNjIxNDQwIGZpbGVzLCA0NDc5NzQvMTA0ODU1MDQgYmxvY2tzCgpFbnRlcmluZyBub24taW50ZXJhY3RpdmUgc3RhcnR1cApDYWxsaW5nIHRoZSBzeXN0ZW0gYWN0aXZpdHkgZGF0YSBjb2xsZWN0b3IgKHNhZGMpLi4uIAoKQnJpbmdpbmcgdXAgaW50ZXJmYWNlIGV0aDA6ICAKRGV0ZXJtaW5pbmcgSVAgaW5mb3JtYXRpb24gZm9yIGV0aDAuLi4gZG9uZS4KCmFsaXl1bi1zZXJ2aWNlIHN0YXJ0L3J1bm5pbmcsIHByb2Nlc3MgMTczMwpmaW5pc2hlZAoKQ2VudE9TIHJlbGVhc2UgNi44IChGaW5hbCkKS2VybmVsIDIuNi4zMi02OTYuMy4yLmVsNi5pNjg2IG9uIGFuIGk2ODYKCmlaMnplZDk2ZTQ2MmF5cjBxeioqKioqIGxvZ2luOg==', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ], 404 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'NotSupported', 'errorMessage' => '%s', 'description' => 'Your operation is invalid.'], ], 429 => [ ['errorCode' => 'Throttling', 'errorMessage' => '%s', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"LastUpdateTime\\": \\"2018-03-22 10:04:57\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"InstanceId\\": \\"i-bp1c1xhsrac2coiw****\\",\\n \\"ConsoleOutput\\": \\"V2VsY29tZSB0byBDZW50T1MgCgpDaGVja2luZyBmaWxlc3lzdGVtcwpDaGVja2luZyBhbGwgZmlsZSBzeXN0ZW1zLgpbL3NiaW4vZnNjay5leHQ0ICgxKSAtLSAvXSBmc2NrLmV4dDQgLWEgL2Rldi92ZGExIAovZGV2L3ZkYTE6IGNsZWFuLCAzMjAxNi8yNjIxNDQwIGZpbGVzLCA0NDc5NzQvMTA0ODU1MDQgYmxvY2tzCgpFbnRlcmluZyBub24taW50ZXJhY3RpdmUgc3RhcnR1cApDYWxsaW5nIHRoZSBzeXN0ZW0gYWN0aXZpdHkgZGF0YSBjb2xsZWN0b3IgKHNhZGMpLi4uIAoKQnJpbmdpbmcgdXAgaW50ZXJmYWNlIGV0aDA6ICAKRGV0ZXJtaW5pbmcgSVAgaW5mb3JtYXRpb24gZm9yIGV0aDAuLi4gZG9uZS4KCmFsaXl1bi1zZXJ2aWNlIHN0YXJ0L3J1bm5pbmcsIHByb2Nlc3MgMTczMwpmaW5pc2hlZAoKQ2VudE9TIHJlbGVhc2UgNi44IChGaW5hbCkKS2VybmVsIDIuNi4zMi02OTYuMy4yLmVsNi5pNjg2IG9uIGFuIGk2ODYKCmlaMnplZDk2ZTQ2MmF5cjBxeioqKioqIGxvZ2luOg==\\"\\n}","type":"json"}]', 'title' => 'Retrieve instance system command-line output', 'description' => '- Elastic Compute Service (ECS) is a virtualization-based cloud server that cannot be connected to display devices or manually screenshotted. However, Alibaba Cloud caches the system command line output from the last time an instance was started, restarted, or shut down. You can invoke GetInstanceConsoleOutput to retrieve this output.'."\n" ."\n" .'- System command line output cannot be retrieved for [retired instance types](~~55263~~).'."\n" ."\n" .'- Windows instances do not support retrieving system command line output.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetInstanceConsoleOutput'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:GetInstanceConsoleOutput', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'GetInstanceScreenshot' => [ 'summary' => 'Calls GetInstanceScreenshot to retrieve the screenshot information of an instance.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29298', 'abilityTreeNodes' => ['FEATUREecs3YSCYT'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the instance. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-shenzhen', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'schema' => ['description' => 'The instance ID.', 'type' => 'string', 'required' => true, 'example' => 'i-bp1gbz20g229bvu5****', 'title' => ''], ], [ 'name' => 'WakeUp', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to wake up an instance that is in hibernation.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID.', 'type' => 'string', 'example' => 'i-bp1gbz20g229bvu5****', 'title' => ''], 'Screenshot' => ['description' => 'The instance screenshot in JPG image format, returned as a Base64-encoded image.', 'type' => 'string', 'example' => 'iVBORw0KGgoA...AAABJRU5ErkJggg==', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => '%s', 'description' => 'A parameter is not specified.'], ], 404 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => '%s', 'description' => ''], ], [ ['errorCode' => 'IncorrectInstanceStatus', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'NotSupported', 'errorMessage' => '%s', 'description' => 'Your operation is invalid.'], ], 429 => [ ['errorCode' => 'Throttling', 'errorMessage' => '%s', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"InstanceId\\": \\"i-bp1gbz20g229bvu5****\\",\\n \\"Screenshot\\": \\"iVBORw0KGgoA...AAABJRU5ErkJggg==\\"\\n}","type":"json"}]', 'title' => 'Retrieve screenshot information of an instance', 'description' => 'After Elastic Compute Service (ECS) returns the instance screenshot in Base64-encoded JPG image format, you must decode it yourself. You can call this operation when troubleshooting faults. Note the following items:'."\n" ."\n" .'- The instance must be in the Running state. '."\n" ."\n" .'- Screenshots cannot be retrieved for [retired instance types](~~55263~~). '."\n" ."\n" .'- If you call this operation multiple times on the same instance, the interval between calls must be at least 10 seconds. Otherwise, the Throttling error code is returned.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'GetInstanceScreenshot'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ecs:GetInstanceScreenshot', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], ], 'ImportImage' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29034', 'abilityTreeNodes' => ['FEATUREecsZ3BT05'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the source custom image. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ImageName', 'in' => 'query', 'schema' => ['description' => 'The name of the image. The name must be 2 to 128 characters in length. It must start with a letter or a Chinese character and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`. It can contain digits, periods (.), colons (:), underscores (_), or hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'ImageTestName', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the image. The description must be 2 to 256 characters in length and cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestDescription', 'title' => ''], ], [ 'name' => 'Architecture', 'in' => 'query', 'schema' => ['description' => 'The system architecture. Valid values: '."\n" ."\n" .'- i386.'."\n" .'- x86_64.'."\n" .'- arm64.'."\n" ."\n" .'Default value: x86_64.', 'type' => 'string', 'required' => false, 'example' => 'x86_64', 'title' => ''], ], [ 'name' => 'OSType', 'in' => 'query', 'schema' => ['description' => 'The operating system type. Valid values: '."\n" ."\n" .'- windows. You must also set `LicenseType`.'."\n" .'- linux.'."\n" ."\n" .'Default value: linux.', 'type' => 'string', 'required' => false, 'example' => 'linux', 'title' => ''], ], [ 'name' => 'Platform', 'in' => 'query', 'schema' => ['description' => 'The operating system version. Valid values: '."\n" .'- Aliyun'."\n" .'- Anolis'."\n" .'- CentOS'."\n" .'- Ubuntu'."\n" .'- CoreOS'."\n" .'- SUSE'."\n" .'- Debian'."\n" .'- OpenSUSE'."\n" .'- FreeBSD'."\n" .'- RedHat'."\n" .'- Kylin'."\n" .'- UOS'."\n" .'- Fedora'."\n" .'- Fedora CoreOS'."\n" .'- CentOS Stream'."\n" .'- AlmaLinux'."\n" .'- Rocky Linux'."\n" .'- Gentoo'."\n" .'- Customized Linux'."\n" .'- Others Linux'."\n" .'- Windows Server 2022'."\n" .'- Windows Server 2019'."\n" .'- Windows Server 2016'."\n" .'- Windows Server 2012'."\n" .'- Windows Server 2008'."\n" .'- Windows Server 2003'."\n" .'- Other Windows'."\n" ."\n" .'Default value: Others Linux.', 'type' => 'string', 'required' => false, 'example' => 'Aliyun', 'title' => ''], ], [ 'name' => 'BootMode', 'in' => 'query', 'schema' => ['description' => 'The boot mode of the image. Valid values:'."\n" ."\n" .'- BIOS: BIOS boot mode.'."\n" .'- UEFI: UEFI boot mode.'."\n" ."\n" .'Default value: BIOS. If `Architecture=arm64`, the default value is UEFI, and only UEFI is supported.'."\n" ."\n" .''."\n" ."\n" .'To prevent instances from failing to start due to an unsupported boot mode, make sure that you understand the boot mode supported by the target image before you set this parameter. For more information about image boot modes, see [Image boot modes](~~2244655#b9caa9b8bb1wf~~).'."\n" ."\n" .'.', 'type' => 'string', 'required' => false, 'example' => 'BIOS', 'title' => ''], ], [ 'name' => 'RoleName', 'in' => 'query', 'schema' => ['description' => 'The name of the RAM role used to import the image.', 'type' => 'string', 'required' => false, 'example' => 'AliyunECSImageImportDefaultRole', 'title' => ''], ], [ 'name' => 'LicenseType', 'in' => 'query', 'schema' => ['description' => 'The license type. This parameter specifies the authorization mode when instances are created by calling [RunInstances](~~2679677~~) with the image. This value takes effect only for Windows Server images. Valid values:'."\n" .'- Aliyun: Use the Alibaba Cloud official license. After the instance starts, the system attempts to automatically connect to the Alibaba Cloud KMS server for activation. The billing for the instance includes the Windows Server license fee.'."\n" .'- BYOL: Bring Your Own License. After the instance starts, Alibaba Cloud does not automatically activate it. You must manually activate it by using your own valid license key. The billing for the instance does not include the Windows Server license fee.'."\n" ."\n" .'Default value: Aliyun.', 'type' => 'string', 'required' => false, 'example' => 'BYOL', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the enterprise resource group to which the imported image belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'DiskDeviceMapping', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The information list of the custom image to create.', 'type' => 'array', 'items' => [ 'description' => 'The information list of the custom image to create.', 'type' => 'object', 'properties' => [ 'DiskImSize' => ['description' => 'The size of the custom image. Unit: GiB.'."\n" ."\n" .'The size includes the system disk and data disks. Make sure that the system disk space is greater than or equal to the size of the imported image file. Valid values:'."\n" ."\n" .'- When N is 1, the value specifies the system disk size. Valid values: 1 to 2048.'."\n" .'- When N is 2 to 17, the value specifies the data disk size. Valid values: 1 to 2048.'."\n" ."\n" .'After you upload the source image file to OSS, you can view the image file size in the OSS bucket.'."\n" ."\n" .'> This parameter will be deprecated. For better compatibility, use `DiskDeviceMapping.N.DiskImageSize`.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80', 'title' => ''], 'Device' => ['description' => 'The device name of DiskDeviceMapping.N.Device in the custom image.'."\n" ."\n" .'> This parameter will be deprecated. For better compatibility, do not use this parameter.', 'type' => 'string', 'required' => false, 'example' => 'null', 'title' => ''], 'OSSBucket' => ['description' => 'The OSS bucket where the image file is stored.'."\n" ."\n" .'> Before you import an image to this OSS bucket for the first time, add the RAM authorization policy as described in the **Operation description** section of this topic. Otherwise, the `NoSetRoletoECSServiceAccount` error is returned.', 'type' => 'string', 'required' => false, 'example' => 'ecsimageos', 'title' => ''], 'Format' => ['description' => 'The image format. Valid values:'."\n" ."\n" .'- RAW.'."\n" .'- VHD.'."\n" .'- QCOW2.'."\n" .'- VMDK (in invitational preview).'."\n" ."\n" .'Default value: null, which indicates that Alibaba Cloud automatically detects the image format. The detected format prevails.', 'type' => 'string', 'required' => false, 'example' => 'QCOW2', 'title' => ''], 'OSSObject' => ['description' => 'The file name (key) of the image file stored in the OSS bucket after the image is uploaded to OSS.', 'type' => 'string', 'required' => false, 'example' => 'CentOS_5.4_32.raw', 'title' => ''], 'DiskImageSize' => ['description' => 'The size of the custom image after the image is imported.'."\n" ."\n" .'The size includes the system disk and data disks. Make sure that the system disk space is greater than or equal to the size of the imported image file. Valid values:'."\n" ."\n" .'- When N is 1, the value specifies the system disk size. Valid values: 1 to 2048. Unit: GiB.'."\n" .'- When N is 2 to 17, the value specifies the data disk size. Valid values: 1 to 2048. Unit: GiB.'."\n" ."\n" .'After you upload the source image file to OSS, you can view the image file size in the OSS bucket.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '80', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 17, 'title' => '', 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags of the image.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the image.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of the image tag. Valid values of N: 1 to 20. The tag key cannot be an empty string. The tag key can be up to 128 characters in length and cannot start with `aliyun` or `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of the image tag. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length and cannot start with `acs:`. It cannot contain `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], [ 'name' => 'DetectionStrategy', 'in' => 'query', 'schema' => ['description' => 'The image detection strategy. If this parameter is not specified, detection is not triggered. Only the Standard detection mode is supported.'."\n" ."\n" .'> Most Linux and Windows versions are supported. For more information about image detection items and operating system limitations, see [Image detection overview](~~439819~~) and [Operating system limitations for image detection](~~475800~~).', 'type' => 'string', 'required' => false, 'example' => 'Standard', 'title' => ''], ], [ 'name' => 'StorageLocationArn', 'in' => 'query', 'schema' => ['description' => 'The Alibaba Cloud Resource Name (ARN) of the CloudBox, which is used to uniquely identify the cloud storage location.'."\n" ."\n" .'> You need to specify this parameter only when you import an image file from OSS on CloudBox. If you do not use OSS on CloudBox, do not set this parameter. For more information, see [What is OSS on CloudBox](~~430190~~).'."\n" ."\n" .'The ARN must follow this format: `arn:acs:cloudbox:{RegionId}:{AliUid}:cloudbox/{CloudBoxId}`, where `{RegionId}` is the region ID of the CloudBox, `{AliUid}` is the Alibaba Cloud account ID, and `{CloudBoxId}` is the CloudBox ID.', 'type' => 'string', 'required' => false, 'example' => 'arn:acs:cloudbox:cn-hangzhou:123456:cloudbox/cb-xx***123', 'title' => ''], ], [ 'name' => 'DryRun', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to perform only a dry run. Valid values:'."\n" ."\n" .'- true: performs only a dry run. The system checks the request for potential issues, including invalid AccessKey pairs, unauthorized RAM users, and missing parameter values. If the request fails the dry run, the corresponding error message is returned. If the request passes the dry run, the `DryRunOperation` error code is returned.'."\n" .'- false: performs a dry run and sends the request. If the request passes the dry run, a 2XX HTTP status code is returned and the resource status is queried.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], [ 'name' => 'Features', 'in' => 'query', 'style' => 'flat', 'schema' => [ 'description' => 'The image feature-related properties.', 'type' => 'object', 'properties' => [ 'NvmeSupport' => ['description' => 'Specifies whether the image supports NVMe. Valid values:'."\n" ."\n" .' - supported: Instances created from this image support NVMe.'."\n" .' - unsupported: Instances created from this image do not support NVMe.', 'type' => 'string', 'required' => false, 'example' => 'supported', 'title' => ''], 'ImdsSupport' => ['description' => 'The metadata access mode of the image. Valid values:'."\n" .'- v1: When you create an ECS instance from this image, you cannot set the metadata access mode to hardened mode only.'."\n" .'- v2: When you create an ECS instance from this image, you can set the metadata access mode to hardened mode only.'."\n" ."\n" .'Default value: v1.', 'type' => 'string', 'required' => false, 'example' => 'v2', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the token, but make sure that the token is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'ImageId' => ['description' => 'The image ID.', 'type' => 'string', 'example' => 'm-bp67acfmxazb4p****', 'title' => ''], 'TaskId' => ['description' => 'The ID of the image import task.', 'type' => 'string', 'example' => 't-bp67acfmxazb4p****', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'UnsupportedSuffix.OSSObject', 'errorMessage' => 'The specified OSS object suffix is not supported.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'An input parameter "RegionId" that is mandatory for processing the request is not supplied.', 'description' => ''], ['errorCode' => 'InvalidImageName.Malformed', 'errorMessage' => 'The specified Image name is wrongly formed.', 'description' => 'The specified image name is invalid. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with acs: or aliyun. It can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It cannot contain http:// or https://.'], ['errorCode' => 'InvalidOSSObject.Malformed', 'errorMessage' => 'The specified OSS object is wrongly formed.', 'description' => 'The specified OSS object is invalid.'], ['errorCode' => 'InvalidOSSBucket.Malformed', 'errorMessage' => 'The specified OSS bucket is wrongly formed.', 'description' => ''], ['errorCode' => 'InvalidOSSObject.Size', 'errorMessage' => 'The specified OSS object size is zero.', 'description' => 'The specified OSSObject is empty'], ['errorCode' => 'InvalidDescription.Malformed', 'errorMessage' => 'The specified Image description is wrongly formed.', 'description' => 'The image description is invalid.'], ['errorCode' => 'InvalidArchitecture.Malformed', 'errorMessage' => 'The specified Architecture is wrongly formed.', 'description' => 'The specified Architecture parameter is invalid.'], ['errorCode' => 'InvalidPlatform.Malformed', 'errorMessage' => 'The specified Platform is wrongly formed.', 'description' => ''], ['errorCode' => 'InvalidOSType.Malformed', 'errorMessage' => 'The specified OSType is wrongly formed.', 'description' => 'The specified OS type is invalid.'], ['errorCode' => 'InvalidImageName.Duplicated', 'errorMessage' => 'The destination image is exist.', 'description' => ''], ['errorCode' => 'InvalidImageSize', 'errorMessage' => '%s', 'description' => 'The specified image size is invalid.'], ['errorCode' => 'InvalidDataDiskSize', 'errorMessage' => 'The specified DiskDeviceMapping.N.DiskImSize should be in the specified range.', 'description' => 'The specified DiskDeviceMapping.N.DiskImSize parameter is invalid.'], ['errorCode' => 'InvalidImageFormat.Malformed', 'errorMessage' => 'The specified Image Format is wrongly formed.', 'description' => 'The specified image format is invalid.'], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidRegion.NotSupport', 'errorMessage' => 'The specified region does not support image import or export.', 'description' => 'The specified region does not support the operation.'], ['errorCode' => 'InvalidOSSBucket.NotFound', 'errorMessage' => 'The specified OSS bucket does not exist in this region.', 'description' => 'The specified bucket does not exist.'], ['errorCode' => 'InvalidOSSObject.NotFound', 'errorMessage' => 'The specified OSS object does not exist in this region.', 'description' => ''], ['errorCode' => 'InvalidOSSObject.NeedRestore', 'errorMessage' => 'The specified OSS object is a archive object, need restore first.', 'description' => ''], ['errorCode' => 'InvalidOSSBucket.NotMatched', 'errorMessage' => 'The specified OSS bucket is incorrect, %s.', 'description' => 'The specified DiskDeviceMapping.N.OSSBucket parameter is invalid. For more information, see the return value of the %s placeholder in the error message.'], ['errorCode' => 'InvalidLicenseType.NotSupported', 'errorMessage' => 'The specified LicenseType is not supported.', 'description' => ''], ['errorCode' => 'InvalidLicenseType.BYOLOnly', 'errorMessage' => 'Only BYOL LicenseType is supported for the current platform provided.', 'description' => ''], ['errorCode' => 'InvalidOSSBucket.FlowLimit', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageFormat.RegionNotSupported', 'errorMessage' => 'The specified image format is not supported in current region.', 'description' => ''], ['errorCode' => 'InvalidBootMode.Malformed', 'errorMessage' => 'The specified parameter "BootMode" is malformed.', 'description' => ''], ['errorCode' => 'InvalidParameter.DetectionStrategy', 'errorMessage' => 'The specified parameter DetectionStrategy is invalid.', 'description' => ''], ['errorCode' => 'InvalidBootMode.NotSupport', 'errorMessage' => 'The specified parameter BootMode is not supported for current image architecture.', 'description' => 'The current image architecture does not support setting this boot mode.'], ['errorCode' => 'DRYRUN.SUCCESS', 'errorMessage' => 'This request is a dryrun request with successful result.', 'description' => 'The request is checked and determined as valid.'], ['errorCode' => 'InvalidClientToken.Malformed', 'errorMessage' => 'The specified parameter clientToken is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.FeaturesImdsSupport', 'errorMessage' => 'The specified parameter Features.ImdsSupport is not supported.', 'description' => 'The specified parameter Features.ImdsSupport is not supported.'], ['errorCode' => 'Account.Arrearage', 'errorMessage' => 'Your account has an outstanding payment.', 'description' => 'Your account has overdue payments.'], ], 403 => [ ['errorCode' => 'ImageIsImporting', 'errorMessage' => 'The specified Image is importing.', 'description' => ''], ['errorCode' => 'QuotaExceed.Image', 'errorMessage' => 'The Image Quota exceeds.', 'description' => ''], ['errorCode' => 'ImportImageFailed', 'errorMessage' => 'Importing image is failed, Please contact the administrator.', 'description' => 'The image cannot be imported. Contact your system administrator.'], ['errorCode' => 'UserNotInTheWhiteList', 'errorMessage' => 'The user is not in the white list of importing image.', 'description' => ''], ['errorCode' => 'NoSetRoletoECSServiceAcount', 'errorMessage' => 'ECS service account Have no right to access your OSS.please attach a role of access your oss to ECS service account.', 'description' => ''], ['errorCode' => 'InvalidParameter.Malformed', 'errorMessage' => 'The specified parameter "DiskDeviceMapping.n.Device " is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter.DiskDeviceMapping', 'errorMessage' => 'The specified parameter DiskDeviceMapping is not supplied.', 'description' => 'A parameter that starts with DiskDeviceMapping must be specified.'], ['errorCode' => 'InvalidOSS.NotAuthorized', 'errorMessage' => 'The specified OSS bucket or object is not allowed to access.', 'description' => 'You do not have the permission to access the specified OSS bucket and object.'], ['errorCode' => 'InvalidBlockSize.NotSupport', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'InvalidImageFormat.Malformed', 'errorMessage' => '%s', 'description' => ''], ['errorCode' => 'ImageCheckUnsupported.WindowsImage', 'errorMessage' => 'Image check is unsupported for windows image.', 'description' => ''], ['errorCode' => 'InvalidVHDImage.IncorrectSize', 'errorMessage' => 'The specified size of the VHD image does not meet the \'header.MaxTableEntries * header.BlockSize\' specification.', 'description' => 'The size of the specified VHD image does not meet the header.MaxTableEntries × header.BlockSize size limit.'], ['errorCode' => 'InvalidOSSBucket.EncryptUnsupported', 'errorMessage' => 'Accessing objects from encrypted OSS bucket is not supported.', 'description' => 'You cannot read objects from encrypted OSS buckets.'], ['errorCode' => 'InvalidArchitecture.PlatformUnsupported', 'errorMessage' => 'The OS platform you selected does not support the specified architecture.', 'description' => 'The selected operating system does not support the specified architecture type.'], ['errorCode' => 'InvalidAccountStatus.OSSDisabled', 'errorMessage' => 'OSS is disabled due to invalid account status.', 'description' => ''], ['errorCode' => 'InvalidStorageLocation.NotFound', 'errorMessage' => 'The specified cloud box storage location %s could not be found.', 'description' => 'The specified cloud box storage location could not be found.'], ['errorCode' => 'InvalidOperation.CloudBoxImageImportRoleRequired', 'errorMessage' => 'The role for cloud box image import is not set to the ECS service.', 'description' => 'The role for cloud box image import is not set to the ECS service.'], ['errorCode' => 'InvalidOperation.CloudBoxImageImportUnsupported', 'errorMessage' => 'Importing cloud box images is not supported.', 'description' => 'Importing cloud box images is not supported.'], ['errorCode' => 'TagKey.Duplication', 'errorMessage' => 'The TagKey has duplication with others, case-insensitive.', 'description' => 'Duplicate values exist in the specified Tag.N.Key parameter. The value of this parameter is not case sensitive. Check whether duplicate parameter values are passed in.'], ], [ ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], ], 'title' => 'Import a local image file', 'summary' => 'Imports a local image file to Elastic Compute Service (ECS) as a custom image that appears in the specified region. You can then use the imported image to create ECS instances (RunInstances) or replace the system disk of an instance (ReplaceSystemDisk).', 'description' => '### Operation description'."\n" ."\n" .'When you call this operation, take note of the following items:'."\n" ."\n" .'- You must upload the image file to Object Storage Service (OSS) in advance. For more information, see [Upload files](~~31886~~).'."\n" ."\n" .'- To prevent ECS instances created from the imported custom image from failing to start due to operating system issues on some servers, virtual machines, or cloud hosts, check whether you need to install the virtio driver on the source server before importing the image. For more information, see [Install the virtio driver](~~62423~~).'."\n" ."\n" .'- When you import an image for the first time, you must authorize ECS to access your OSS bucket by using Resource Access Management (RAM). Otherwise, the `NoSetRoletoECSServiceAccount` or `InvalidOperation.CloudBoxImageImportRoleRequired` error is returned. The following two scenarios apply:'."\n" ."\n" .' - **Import an image file without using CloudBox**: You can complete RAM authorization in the RAM console with a single click. For more information, see [Cloud resource access authorization](https://ram.console.aliyun.com/?spm=5176.2020520101image.0.0.2ffa4df57kSoHX#/role/authorize?request=%7B%22Requests%22%3A%20%7B%22request1%22%3A%20%7B%22RoleName%22%3A%20%22AliyunECSImageImportDefaultRole%22%2C%20%22TemplateId%22%3A%20%22ECSImportRole%22%7D%2C%20%22request2%22%3A%20%7B%22RoleName%22%3A%20%22AliyunECSImageExportDefaultRole%22%2C%20%22TemplateId%22%3A%20%22ECSExportRole%22%7D%7D%2C%20%22ReturnUrl%22%3A%20%22https%3A//ecs.console.aliyun.com/%22%2C%20%22Service%22%3A%20%22ECS%22%7D). You can also manually complete RAM authorization. The following policies and permissions are required for some operations. For more information, see [Account access control](~~25481~~).'."\n" ."\n" .' 1. Create a role named `AliyunECSImageImportDefaultRole`. You must use this exact name. Otherwise, the image import fails. Use the following policy for the role:'."\n" .' ```'."\n" .' {'."\n" .' "Statement": ['."\n" .' {'."\n" .' "Action": "sts:AssumeRole",'."\n" .' "Effect": "Allow",'."\n" .' "Principal": {'."\n" .' "Service": ['."\n" .' "ecs.aliyuncs.com"'."\n" .' ]'."\n" .' }'."\n" .' }'."\n" .' ],'."\n" .' "Version": "1"'."\n" .' }'."\n" .' ```'."\n" ."\n" .' 2. Attach the system policy `AliyunECSImageImportRolePolicy` to the role. You can also create a custom policy that includes the following permissions:'."\n" .' ```'."\n" ."\n" .' {'."\n" .' "Version": "1",'."\n" .' "Statement": ['."\n" .' {'."\n" .' "Action": ['."\n" .' "oss:GetObject",'."\n" .' "oss:GetBucketLocation",'."\n" .' "oss:GetBucketInfo"'."\n" .' ],'."\n" .' "Resource": "*",'."\n" .' "Effect": "Allow"'."\n" .' }'."\n" .' ]'."\n" .' }'."\n" .' '."\n" .' ```'."\n" ."\n" .' - **Import an image file by using CloudBox**: You can complete RAM authorization in the RAM console with a single click. For more information, see [Cloud resource access authorization](https://ram.console.aliyun.com/role/authorize?request=%7B%22ReturnUrl%22%3A%22https%3A%2F%2Fecs.console.aliyun.com%2F%22%2C%22Services%22%3A%5B%7B%22Roles%22%3A%5B%7B%22RoleName%22%3A%22AliyunECSCloudBoxImageImportDefaultRole%22%2C%22TemplateId%22%3A%22AliyunECSCloudBoxImageImportDefaultRole%22%7D%5D%2C%22Service%22%3A%22ECS%22%7D%5D%7D). You can also manually complete RAM authorization. The following policies and permissions are required for some operations. For more information, see [Account access control](~~25481~~).'."\n" ."\n" .' 1. Create a role named `AliyunECSCloudBoxImageImportDefaultRole`. You must use this exact name. Otherwise, the image import fails. Use the following policy for the role:'."\n" .' ```'."\n" .' {'."\n" .' "Statement": ['."\n" .' {'."\n" .' "Action": "sts:AssumeRole",'."\n" .' "Effect": "Allow",'."\n" .' "Principal": {'."\n" .' "Service": ['."\n" .' "ecs.aliyuncs.com"'."\n" .' ]'."\n" .' }'."\n" .' }'."\n" .' ],'."\n" .' "Version": "1"'."\n" .' }'."\n" .' ```'."\n" ."\n" .' 2. Attach the system policy `AliyunECSCloudBoxImageImportRolePolicy` to the role. You can also create a custom policy that includes the following permissions:'."\n" .' ```'."\n" ."\n" .' {'."\n" .' "Version": "1",'."\n" .' "Statement": ['."\n" .' {'."\n" .' "Action": ['."\n" .' "oss-cloudbox:GetObject",'."\n" .' "oss-cloudbox:GetBucketLocation",'."\n" .' "oss-cloudbox:GetBucketInfo"'."\n" .' ],'."\n" .' "Resource": "*",'."\n" .' "Effect": "Allow"'."\n" .' }'."\n" .' ]'."\n" .' }'."\n" .' '."\n" .' ```'."\n" ."\n" .'- You cannot delete an image that is being imported. You can only call [CancelTask](~~25624~~) to cancel the image import task.'."\n" ."\n" .'- The region into which you import the image must be the same as the region of the OSS bucket to which the image file is uploaded.'."\n" ."\n" .'- Valid values of N in the `DiskDeviceMapping.N` parameter: 1 to 17. When N is 1, the disk is a system disk. When N is 2 to 17, the disk is a data disk. When N is greater than 17, the system automatically ignores the value.'."\n" ."\n" .'- When the `Architecture` parameter is set to `arm64`, or the `Platform` parameter is set to `CentOS Stream`, `Anolis`, `AlmaLinux`, `UOS`, `Kylin`, or `Rocky Linux`, take note of the following items:'."\n" ."\n" .' - To ensure that the imported image supports password configuration or key pair modification, the image must meet the following requirements:'."\n" ."\n" .' - The operating system kernel must support the `CONFIG_FW_CFG_SYSFS` feature. Linux community kernels later than version 4.6 support this feature by default. CentOS kernels later than version 3.10.0-826.el7 support this feature by default. You can run the `grep -nr CONFIG_FW_CFG_SYSFS /boot/config-$(uname -r)` command on the server that corresponds to the image. If the output contains `CONFIG_FW_CFG_SYSFS=y`, the kernel in the image supports the `CONFIG_FW_CFG_SYSFS` feature.'."\n" ."\n\n" .' - The latest version of Alibaba Cloud cloud-init is installed on the operating system. Cloud-init 19.1 must Milvus version 19.1.3 or later. Cloud-init 0.7.6a on some earlier operating systems must Milvus version 0.7.6a15 or later. For more information, see [Install cloud-init](~~57803~~).'."\n" ."\n" .' - The operating system must support the SHA-512 encryption algorithm.'."\n" ."\n" .' - To ensure that the imported image supports disk resizing and file system resizing, the image must meet the following requirements:'."\n" ."\n" .' - The operating system kernel version must be later than 3.6.'."\n" ."\n" .' - The growpart command is supported. To support this command, install the `cloud-utils-growpart` package. The installation method varies by operating system. For more information, see [Resize partitions and file systems (Linux)](~~2949817#bb3b1f02e51pj~~).'."\n" ."\n" .' - The resize2fs command is supported. To support this command, install the `e2fsprogs` package. This package is installed by default on the operating system. If it is not installed, install it manually.'."\n" ."\n" .' - The latest version of Alibaba Cloud cloud-init is installed on the operating system. Cloud-init 19.1 must Milvus version 19.1.3 or later. Cloud-init 0.7.6a on some earlier operating systems must Milvus version 0.7.6a15 or later. For more information, see [Install cloud-init](~~57803~~).'."\n" .'- If the system architecture of the custom image that you want to import is arm64, set the RTC clock to use the UTC time standard. For more information, see [Linux time and time zone description](~~405080~~).'."\n" ."\n" .'- Configure the image detection parameters when you import an image. This helps the system optimize your image. For more information, see [Image detection overview](~~439819~~).', 'changeSet' => [ ['createdAt' => '2025-05-13T02:30:21.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2025-03-14T05:36:37.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2024-12-05T05:48:15.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-11-14T03:11:28.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-10-09T06:37:20.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2024-06-12T01:37:59.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-08-23T07:30:57.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-05-26T09:19:15.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-04-19T09:18:48.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-04-12T07:13:11.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2022-12-23T09:03:30.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-07-11T06:12:56.000Z', 'description' => 'Error codes changed, Request parameters changed'], ['createdAt' => '2021-06-17T08:45:19.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ImportImage'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:ImportImage', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Image', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:image/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ImageId\\": \\"m-bp67acfmxazb4p****\\",\\n \\"TaskId\\": \\"t-bp67acfmxazb4p****\\",\\n \\"RegionId\\": \\"cn-hangzhou\\"\\n}","type":"json"}]', ], 'ImportKeyPair' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29035', 'abilityTreeNodes' => ['FEATUREecsJP60NY'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'KeyPairName', 'in' => 'query', 'schema' => ['description' => 'The name of the key pair. The name must be unique. The name must be 2 to 128 characters in length and must start with a letter or Chinese character. It cannot start with http:// or https://. The name can contain characters that are categorized as letter in Unicode, including letters, Chinese characters, and digits. The name can contain colons (:), underscores (_), periods (.), or hyphens (-).', 'type' => 'string', 'required' => true, 'example' => 'testKeyPairName', 'title' => ''], ], [ 'name' => 'PublicKeyBody', 'in' => 'query', 'schema' => ['description' => 'The public key of the key pair.', 'type' => 'string', 'required' => true, 'example' => 'ABC1234567', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the enterprise resource group to which the SSH key pair belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The tags.', 'type' => 'array', 'items' => [ 'description' => 'The tags.', 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The key of tag N of the key pair. Valid values of N: 1 to 20. The tag key cannot be an empty string. 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' => 'TestKey', 'title' => ''], 'Value' => ['description' => 'The value of tag N of the key pair. Valid values of N: 1 to 20. The tag value can be an empty string. The tag value can be up to 128 characters in length. It cannot contain http:// or https://.', 'type' => 'string', 'required' => false, 'example' => 'TestValue', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 20, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], 'KeyPairName' => ['description' => 'The name of the key pair.', 'type' => 'string', 'example' => 'testKeyPairName', 'title' => ''], 'KeyPairFingerPrint' => ['description' => 'The fingerprint of the key pair. The public key fingerprint format is defined in RFC 4716 and uses the MD5 message digest algorithm.', 'type' => 'string', 'example' => '89:f0:ba:62:ac:b8:aa:e1:61:5e:fd:81:69:86:6d:6b:f0:c0:5a:**', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidKeyPairName.Malformed', 'errorMessage' => 'Specified Key Pair name is not valid.', 'description' => ''], ['errorCode' => 'InvalidPublicKeyBody.Malformed', 'errorMessage' => 'The PublicKeyBody format is not supported.', 'description' => 'The public key format is not supported.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter "PublicKeyBody" that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'KeyPair.AlreadyExist', 'errorMessage' => 'The key pair already exist.', 'description' => 'A key pair with the same name already exists. Key pair names must be unique.'], ], 403 => [ ['errorCode' => 'QuotaExceed.KeyPair', 'errorMessage' => 'The key pair quota exceeds.', 'description' => ''], ], [ ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => 'The specified resource group does not exist.'], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error.', 'description' => ''], ], ], 'title' => 'ImportKeyPair', 'summary' => 'Imports the public key part of an RSA key pair generated by other tools. After the key pair is imported, Alibaba Cloud stores the public key for you. You must securely store the private key of the key pair.', 'description' => '## Description'."\n" ."\n" .'When you call this operation, take note of the following items:'."\n" ."\n" .'- You can have a maximum of 500 key pairs in each region.'."\n" .'- The imported key pair must support one of the following encryption methods:'."\n" .' - rsa'."\n" .' - dsa'."\n" .' - ssh-rsa'."\n" .' - ssh-dss'."\n" .' - ecdsa', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2023-07-17T10:03:59.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'ImportKeyPair'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ecs:ImportKeyPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'KeyPair', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:keypair/*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"KeyPairName\\": \\"testKeyPairName\\",\\n \\"KeyPairFingerPrint\\": \\"89:f0:ba:62:ac:b8:aa:e1:61:5e:fd:81:69:86:6d:6b:f0:c0:5a:**\\"\\n}","type":"json"}]', ], 'InstallCloudAssistant' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29299', 'abilityTreeNodes' => ['FEATUREecsXZ3H4M'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The IDs of instances. You can specify up to 50 instance IDs in a single request.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The IDs of instances. You can specify up to 50 instance IDs in a single request.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'InstanceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The ID of the instance.', 'type' => 'array', 'items' => ['description' => 'The request ID.', 'type' => 'string', 'required' => false, 'example' => 'i-bp1iudwa5b1tqa****', 'title' => ''], 'required' => true, 'example' => 'i-bp1iudwa5b1tqa****', 'maxItems' => 100, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E', 'title' => ''], ], 'description' => 'The request ID.', 'title' => '', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'RegionId.ApiNotSupported', 'errorMessage' => 'The api is not supported in this region.', 'description' => 'The API operation cannot be called in the specified region. Check whether the specified RegionId parameter is valid.'], ['errorCode' => 'MissingParam.InstanceId', 'errorMessage' => 'The parameter instanceId is missing or empty.', 'description' => ''], ], 403 => [ ['errorCode' => 'InstanceIds.ExceedLimit', 'errorMessage' => 'The number of instance IDs exceeds the upper limit.', 'description' => 'The number of specified instance IDs exceeds the upper limit.'], ['errorCode' => 'Operation.Forbidden', 'errorMessage' => 'The operation is not permitted.', 'description' => 'The operation is not supported.'], ['errorCode' => 'InvalidInstanceId.OSTypeUnsupported', 'errorMessage' => 'The OS type of the instance %s corresponding to the parameter InstanceId does not support the operation.', 'description' => 'The operating system type of the instance corresponding to the parameter InstanceId does not support this operation.'], ], [ ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The RegionId provided does not exist in our records.', 'description' => 'Region information error'], ['errorCode' => 'InvalidInstance.NotFound', 'errorMessage' => 'The specified instance does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError.Dispatch', 'errorMessage' => 'An error occurred when you dispatched the request.', 'description' => 'An error occurred while the request is being sent. Try again later.'], ], ], 'title' => 'InstallCloudAssistant', 'summary' => 'Installs Cloud Assistant Agent on Elastic Compute Service (ECS) instances. After you install Cloud Assistant Agent on ECS instances, restart the instances for the installation to take effect.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'After you call the InstallCloudAssistant operation to install Cloud Assistant Agent on an ECS instance, call the [RebootInstance](~~25502~~) operation to restart the instance to make the installation take effect.', 'requestParamsDescription' => ' ', 'responseParamsDescription' => ' ', 'extraInfo' => ' ', 'changeSet' => [ ['createdAt' => '2025-01-14T08:07:16.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-02-25T07:27:48.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '1000', 'countWindow' => 60, 'regionId' => '*', 'api' => 'InstallCloudAssistant'], ], 'product' => ['code' => 'ecs', 'title' => '云服务器 ECS'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ecs:InstallCloudAssistant', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'ECS', 'resourceType' => 'Instance', 'arn' => 'acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]', 'translator' => 'manual', ], 'InvokeCommand' => [ 'summary' => 'Specify parameters such as CommandId, InstanceId, and ResourceGroupId to trigger a Cloud Assistant command on one or more ECS instances.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '29300', 'abilityTreeNodes' => ['FEATUREecsXZ3H4M'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the command. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which to assign the command executions. When you set this parameter, take note of the following items:'."\n" ."\n" .'- The instances specified by InstanceId.N must belong to the specified resource group.'."\n" ."\n" .'- After the command is run, you can call the [DescribeInvocations](~~64840~~) or [DescribeInvocationResults](~~64845~~) operation with ResourceGroupId set to query the execution results in the specified resource group.', 'type' => 'string', 'required' => false, 'example' => 'rg-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'CommandId', 'in' => 'query', 'schema' => ['description' => 'The command ID. You can call the [DescribeCommands](~~64843~~) operation to query all available command IDs.'."\n" ."\n" .'> Common Cloud Assistant commands can be run based on their names. For more information, see [View and run common Cloud Assistant commands](~~429635~~).', 'type' => 'string', 'required' => true, 'example' => 'c-e996287206324975b5fbe1d****', 'title' => ''], ], [ 'name' => 'RepeatMode', 'in' => 'query', 'schema' => ['description' => 'Specifies how to run the command. Valid values:'."\n" ."\n" .'- Once: immediately runs the command.'."\n" ."\n" .'- Period: runs the command based on a schedule. If you set this parameter to `Period`, you must also configure the `Frequency` parameter.'."\n" ."\n" .'- NextRebootOnly: runs the command the next time the instance is started.'."\n" ."\n" .'- EveryReboot: The command is run every time the instances start.'."\n" ."\n" .'- DryRun: Specifies whether to perform only a dry run, without performing the actual request. The command does not take effect. The system checks the request, including the request parameters, instance execution environment, and Cloud Assistant Agent running status.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If you do not specify `Frequency`, the default value is `Once`.'."\n" ."\n" .'- If you specify the `Frequency` parameter, `Period` is used as the value of RepeatMode regardless of whether RepeatMode is set to Period.'."\n" ."\n" .'Take note of the following items when you specify this property:'."\n" ."\n" .'- You can call the [StopInvocation](~~64838~~) operation to stop the pending or scheduled executions of the command.'."\n" ."\n" .'- If you set this parameter to `Period` or `EveryReboot`, you can call the [DescribeInvocationResults](~~64845~~) operation with `IncludeHistory` set to true to query the results of historical scheduled executions.', 'type' => 'string', 'required' => false, 'example' => 'Once', 'title' => ''], ], [ 'name' => 'Timed', 'in' => 'query', 'schema' => ['description' => '> This parameter is no longer used and does not take effect.', 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], [ 'name' => 'Frequency', 'in' => 'query', 'schema' => ['description' => 'The schedule on which to run the command. You can configure a command to run at a fixed interval based on a rate expression, run only once at a specific time, or run at specific times based on a cron expression.'."\n" ."\n" .'- To run a command at a fixed interval, use a rate expression to specify the interval. You can specify the interval in seconds, minutes, hours, or days. This option is suitable for scenarios in which tasks need to be executed at a fixed interval. Specify the interval in the following format: `rate()`. For example, specify `rate(5m)` to run the command every 5 minutes. When you specify an interval, take note of the following limits:'."\n" ."\n" .' - The interval can be anywhere from 60 seconds to 7 days, but must be longer than the timeout period of the scheduled task.'."\n" ."\n" .' - The interval is the amount of time that elapses between two consecutive executions. The interval is irrelevant to the amount of time that is required to run the command once. For example, assume that you set the interval to 5 minutes and that it takes 2 minutes to run the command each time. Each time the command is run, the system waits 3 minutes before the system runs the command again.'."\n" ."\n" .' - A task is not immediately executed after the task is created. For example, assume that you set the interval to 5 minutes for a task. The task begins to be executed 5 minutes after it is created.'."\n" ."\n" .'- To run a command only once at a specific time, specify a point in time and a time zone. Specify the point in time in the `at(yyyy-MM-dd HH:mm:ss