'1.0', 'info' => ['style' => 'RPC', 'product' => 'ebs', 'version' => '2021-07-30'], 'directories' => [ [ 'children' => ['ListReplicaEdgeSupported', 'CreateDiskReplicaPair', 'ModifyDiskReplicaPair', 'DescribeDiskReplicaPairs'], 'type' => 'directory', 'title' => 'Replication pairs', ], [ 'children' => ['CreateDiskReplicaGroup', 'DescribeDiskReplicaGroups', 'ModifyDiskReplicaGroup'], 'type' => 'directory', 'title' => 'Replication groups', ], [ 'children' => ['ApplyLensService', 'DescribeLensServiceStatus', 'CancelLensService', 'DescribeLensMonitorDisks'], 'type' => 'directory', 'title' => 'EBS lens', ], [ 'children' => [ 'DescribeSolutionInstanceConfiguration', 'ListReports', 'GetReport', 'AddDiskReplicaPair', 'BindEnterpriseSnapshotPolicy', 'ChangeResourceGroup', 'ClearPairDrill', 'ClearReplicaGroupDrill', 'CreateApp', 'CreateDedicatedBlockStorageCluster', 'CreateDiagnoseReport', 'CreateEnterpriseSnapshotPolicy', 'DeleteApp', 'DeleteDiskReplicaGroup', 'DeleteDiskReplicaPair', 'DeleteEnterpriseSnapshotPolicy', 'DescribeApps', 'DescribeDedicatedBlockStorageClusterDisks', 'DescribeDedicatedBlockStorageClusters', 'DescribeDiagnoseReport', 'DescribeDiskMonitorData', 'DescribeDiskReplicaPairProgress', 'DescribeEnterpriseSnapshotPolicy', 'DescribeEvents', 'DescribeMetricData', 'DescribePairDrills', 'DescribeRegions', 'DescribeReplicaGroupDrills', 'DescribeUserTagKeys', 'DescribeUserTagValues', 'FailoverDiskReplicaGroup', 'FailoverDiskReplicaPair', 'ListTagResources', 'ModifyApp', 'ModifyDedicatedBlockStorageClusterAttribute', 'QueryDedicatedBlockStorageClusterDiskThroughputStatus', 'QueryDedicatedBlockStorageClusterInventoryData', 'RemoveDiskReplicaPair', 'ReprotectDiskReplicaGroup', 'ReprotectDiskReplicaPair', 'SetDedicatedBlockStorageClusterDiskThroughput', 'StartDiskReplicaGroup', 'StartDiskReplicaPair', 'StartPairDrill', 'StartReplicaGroupDrill', 'StopDiskReplicaGroup', 'StopDiskReplicaPair', 'TagResources', 'UnbindEnterpriseSnapshotPolicy', 'UntagResources', 'UpdateEnterpriseSnapshotPolicy', 'UpdateSolutionInstanceAttribute', ], 'type' => 'directory', 'title' => 'Others', ], ], 'components' => [ 'schemas' => [], ], 'apis' => [ 'AddDiskReplicaPair' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '115801', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query the IDs of existing replication pairs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.GroupStatusCannotAddPair', 'errorMessage' => 'The pair cannot be added in group current status.', 'description' => 'The replication pair cannot be added to the replication pair-consistent group while the group is in the current state.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => 'The operation is not supported while the replication pair-consistent group and the replication pair do not belong to the same region and zone.'], ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => 'The operation is not supported while the state of the replication pair is not the same as that of the replication pair-consistent group.'], ['errorCode' => 'OperationDenied.PairInAnotherGroup', 'errorMessage' => 'The operation is not allowed because pair is already in another group.', 'description' => 'The operation is not supported while the replication pair is added to another replication pair-consistent group.'], ['errorCode' => 'OperationDenied.PairInitializing', 'errorMessage' => 'The operation is not allowed due to pair initializing, please try again later.', 'description' => 'The operation is not supported while the replication pair is being initialized. Try again later.'], ['errorCode' => 'OperationDenied.PairStatusCannotAddToGroup', 'errorMessage' => 'The pair cannot be added in pair current status.', 'description' => 'The replication pair cannot be added to the replication pair-consistent group while the pair is in the current state.'], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The operation is not allowed due to quota exceed.', 'description' => 'The quota for performing this operation has been exceeded.'], ['errorCode' => 'OperationDenied.PairsExceedInGroup', 'errorMessage' => 'The operation is not allowed due to too much pair in the group.', 'description' => 'The operation is not supported while the maximum number of replication pairs in the replication pair-consistent group has been exceeded.'], ['errorCode' => 'OperationDenied.GroupTotalDiskCapacityLimit', 'errorMessage' => 'The disk space in the replication pair-consistent group exceeds the upper limit.', 'description' => 'The disk space in the replication pair-consistent group exceeds the upper limit.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'AddDiskReplicaPair', 'summary' => 'Adds a replication pair to a replication pair-consistent group. You can use a replication pair-consistent group to batch manage replication pairs. When you call this operation, you can specify parameters, such as ReplicaGroupId, ReplicaPairId, and ClientToken, in the request.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which the replication pair-consistent group feature is available, see [Overview](~~314563~~).'."\n" .'* A replication pair and a replication pair-consistent group replicate in the same direction if they have the same primary region (production region), primary zone (production zone), secondary region (disaster recovery region), and secondary zone (disaster recovery zone). A replication pair can be added only to a replication pair-consistent group that replicates in the same direction as the replication pair.'."\n" .'* Before you can add a replication pair to a replication pair-consistent group, make sure that the pair and the group are in the **Created** (`created`) or **Stopped** (`stopped`) state.'."\n" .'* Up to 17 replication pairs can be added to a single replication pair-consistent group.'."\n" .'* After replication pairs are added to a replication pair-consistent group, the recovery point objective (RPO) of the group takes effect on the pairs in place of their original RPOs.'."\n", 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddDiskReplicaPair'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:AddDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'ApplyLensService' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '138241', 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], '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****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'title' => 'Activate EBS lens', 'summary' => 'Activates EBS Lens (CloudLens for EBS).', 'changeSet' => [ ['createdAt' => '2023-03-22T01:59:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ApplyLensService'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ApplyLensService', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], 'BindEnterpriseSnapshotPolicy' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '159099', 'abilityTreeNodes' => ['FEATUREdiskTL976Y'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID . You can call the [DescribeRegions](~~354276~~) operation to query the most recent list of regions in which snapshot policy is supported.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The id of the policy.', 'type' => 'string', 'required' => true, 'example' => 'esp-xxx'], ], [ 'name' => 'DiskTargets', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => 'the disk targets', 'description' => 'The list of disks.', 'type' => 'array', 'items' => ['description' => 'The id of a disk.', 'type' => 'string', 'required' => false, 'example' => 'd-xxx', 'title' => ''], 'required' => false, 'maxItems' => 10, ], ], [ '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 value, but you must ensure that it 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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Response', 'description' => 'Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'EF4CA176-3358-5B74-B317-B1908B4B1F7D'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"EF4CA176-3358-5B74-B317-B1908B4B1F7D\\"\\n}","errorExample":""},{"type":"xml","example":"\\n xxx\\n","errorExample":""}]', 'title' => 'BindEnterpriseSnapshotPolicy', 'summary' => 'Bind disks into a enterprise-level snapshot policy.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:BindEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], ], ], 'CancelLensService' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '138257', 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], '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****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'title' => 'Cancel EBS lens', 'summary' => 'Cancels EBS Lens (CloudLens for EBS).', 'changeSet' => [ ['createdAt' => '2023-03-22T01:59:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CancelLensService'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:CancelLensService', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', ], 'ChangeResourceGroup' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '152482', 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the resource. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The type of the resource. Valid values:'."\n" ."\n" .'* dedicatedblockstoragecluster: dedicated block storage cluster.'."\n" .'* diskreplicapair: replication pair.'."\n" .'* diskreplicagroup: replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'diskreplicapair'], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the resource. For example, if you set ResourceType to diskreplicapair, set this parameter to the ID of a replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-123'], ], [ 'name' => 'NewResourceGroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the new resource group. You can view the available resource groups in the Resource Management console. For more information, see [View basic information of a resource group](~~151181~~).', 'type' => 'string', 'required' => true, 'example' => 'rg-123'], ], [ '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'TagResponse', 'description' => 'TagResponse'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceId is not found in our records.', 'description' => ''], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => ''], ['errorCode' => 'MissingParameter.ResourceGroup', 'errorMessage' => 'The parameter - Resource Group should not be null', 'description' => ''], ['errorCode' => 'MissingParameter.ResourceType', 'errorMessage' => 'The parameter - ResourceType should not be null', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","type":"json"}]', 'title' => 'ChangeResourceGroup', 'summary' => 'Changes the resource group to which an Elastic Block Storage (EBS) resource belongs.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ChangeResourceGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ClearPairDrill' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '186459', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the [DescribeRegions](~~354276~~) operation to query the most recent list of regions in which async replication is supported.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PairId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query the most recent list of replication pairs, including replication pair IDs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-xxxx'], ], [ 'name' => 'DrillId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the drill. You can call the [DescribePairDrills](~~2584480~~) operation to query the disaster recovery drills that were performed on replication pairs in a specific region.'."\n", 'type' => 'string', 'required' => true, 'example' => 'drill-xxxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"20758A-585D-4A41-A9B2-28DA8F4F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n 20758A-585D-4A41-A9B2-28DA8F4F****\\n","errorExample":""}]', 'title' => 'ClearPairDrill', 'summary' => 'Clears the disaster recovery drills that were initiated from the secondary disk of a replication pair and deletes the auto-created drill disks.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:ClearPairDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#PairId}'], ], ], ], ], ], 'ClearReplicaGroupDrill' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '189138', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID. You can call the [DescribeRegions](~~354276~~) operation to query the most recent list of regions in which async replication is supported.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'GroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the replication pair-consistent group. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the most recent list of replication pair-consistent groups, including group IDs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-xxxx'], ], [ 'name' => 'DrillId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the drill. You can call the [DescribeReplicaGroupDrills](~~2584481~~) operation to query disaster recovery drills that were performed on replication pairs in a specific region.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-drill-xxxx'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'ClearReplicaGroupDrill', 'summary' => 'Clears the disaster recovery drills that were initiated from the secondary disks of a replication pair-consistent group and deletes the auto-created drill disks.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:ClearReplicaGroupDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#GroupId}'], ], ], ], ], ], 'CreateApp' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '193444', 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ 'name' => 'AppName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The name of the App.', 'type' => 'string', 'required' => true, 'example' => 'App1'], ], [ 'name' => 'AppTags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The user-defined tags. Multiple tags are separated by.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'controlledBy', 'title' => ''], 'TagValue' => ['description' => 'The tag value of the dedicated cluster.', 'type' => 'string', 'required' => false, 'example' => 'ear', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => true, 'example' => 'default', 'maxItems' => 100, ], ], [ 'name' => 'SubscribeStatus', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The subscription status of the App usage report. Valid values:'."\n" .'- UnSubscribe'."\n" .'- Subscribe.', 'type' => 'string', 'required' => true, 'example' => 'Subscribe'], ], [ 'name' => 'SubscribePeriod', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The send interval of the App usage report. Valid values:'."\n" .'- Weekly'."\n" .'- Biweekly'."\n" .'- Monthly.'."\n" .'Default value: Weekly.', 'type' => 'string', 'required' => true, 'example' => 'Weekly'], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The description of the App.', 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ 'name' => 'ReportSendEnabled', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Specifies whether to send reports to email and internal messages.', 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~2680071~~) to query the most recent region list.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Owner', 'in' => 'query', 'schema' => ['description' => 'The Alibaba Cloud UID of the baseline owner.', 'type' => 'string', 'required' => false, 'example' => '1/0', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'A string generated by the server that serves as a request identifier for the client.', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'LensResponse', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'E604ABBF-FD0F-5080-BE2B-BCF674A9E941', 'title' => ''], 'Code' => ['description' => 'The status code. A value of 200 indicates success.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'UserCode' => ['description' => 'The status code.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Message' => ['description' => 'The additional information. If the request is successful, success is returned. If the request fails, a specific error code is returned.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'Success' => ['description' => 'Indicates whether the App was created successfully. Valid values: true: The App was created successfully. false: The App failed to be created.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'HttpStatusCode' => ['description' => 'The error code description.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'DynamicCode' => ['description' => 'The dynamic error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'DynamicMessage' => ['description' => 'The dynamic message. This parameter is not in use. Ignore this parameter.', 'type' => 'string', 'example' => '-', 'title' => ''], 'AccessDeniedDetail' => ['description' => 'The detailed reason why access was denied.', 'type' => 'string', 'example' => 'None', 'title' => ''], 'AppId' => ['description' => 'The App ID.', 'type' => 'string', 'example' => 'app-bd5e3533', 'title' => ''], 'AppName' => ['description' => 'The App name.', 'type' => 'string', 'example' => 'TestApp_g5t', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ['errorCode' => 'App.NumberExceed', 'errorMessage' => 'The number of apps exceeded.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Create an app', 'summary' => 'Centralized role: Creates an App.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E604ABBF-FD0F-5080-BE2B-BCF674A9E941\\",\\n \\"Code\\": \\"OK\\",\\n \\"UserCode\\": \\"OK\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true,\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"200\\",\\n \\"DynamicMessage\\": \\"-\\",\\n \\"AccessDeniedDetail\\": \\"None\\",\\n \\"AppId\\": \\"app-bd5e3533\\",\\n \\"AppName\\": \\"TestApp_g5t\\"\\n}","type":"json"}]', ], 'CreateDedicatedBlockStorageCluster' => [ 'summary' => 'Creates a dedicated block storage cluster by calling the CreateDedicatedBlockStorageCluster operation with parameters such as Azone, Capacity, Type, and PeriodUnit.', 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '116777', 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], 'autoTest' => true, 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the dedicated block storage cluster. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan'], ], [ 'name' => 'Azone', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The zone ID of the dedicated block storage cluster. You can call [DescribeZones](~~25610~~) to query the zone list.', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan-b'], ], [ 'name' => 'DbscName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The name of the dedicated block storage cluster.', 'type' => 'string', 'required' => true, 'example' => 'myDBSCCluster'], ], [ 'name' => 'Capacity', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The capacity of the dedicated block storage cluster. Valid values: 61440 to 2334720 GiB (2280 TiB). Minimum increment: 12288 GiB.'."\n" ."\n" .'> When the capacity of the dedicated block storage cluster is less than 576 TiB, the maximum throughput per TiB does not exceed 52 MB/s. When the capacity of the dedicated block storage cluster is greater than 576 TiB, the maximum throughput per TiB does not exceed 26 MB/s.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'maximum' => '2334720', 'minimum' => '61440', 'example' => '61440'], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The performance type of the dedicated block storage cluster. Valid values:'."\n" ."\n" .'- Standard: basic. You can create PL0 ESSDs in this type of dedicated block storage cluster.'."\n" .'- Premium: performance. You can create PL1 ESSDs in this type of dedicated block storage cluster.'."\n" ."\n" .'Default value: Premium.'."\n" ."\n" .'For more information about standard SSDs, see [ESSDs](~~122389~~).', 'type' => 'string', 'required' => true, 'enum' => ['Standard', 'Premium', 'Elastic'], 'example' => 'Premium', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the resource group to which the dedicated block storage cluster belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs*******'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The list of tags. A maximum of 20 tags can be specified.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['description' => 'The tag key of the dedicated block storage cluster.', 'type' => 'string', 'required' => true, 'example' => 'tag-key', 'title' => ''], 'Value' => ['description' => 'The tag value of the dedicated block storage cluster.', 'type' => 'string', 'required' => true, 'example' => 'tag-value', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'title' => '', 'example' => '', ], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The subscription duration of the instance. Valid values: 6, 7, 8, 9, 10, 11, 12, 24, and 36.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '12', 'title' => ''], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The unit of the subscription duration specified by the `Period` parameter. Only Month is supported.', 'type' => 'string', 'enum' => ['Month'], 'required' => false, 'example' => 'Month', ], ], [ 'name' => 'DbscId', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['description' => 'This parameter is deprecated.', 'type' => 'string', 'deprecated' => true, 'required' => false, 'example' => 'test1233', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****'], 'OrderId' => ['title' => '', 'description' => 'The order ID.', 'type' => 'string', 'example' => '50155660025****'], 'DbscId' => ['title' => '', 'description' => 'The ID of the dedicated block storage cluster.', 'type' => 'string', 'example' => 'dbsc-f8z4d3k4nsgg9okb****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidPayMethod', 'errorMessage' => 'The specified pay method is not valid.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => ''], ['errorCode' => 'MissingParameter.ResourceType', 'errorMessage' => 'The parameter - ResourceType should not be null', 'description' => ''], ['errorCode' => 'InvalidResourceGroup.NotFound', 'errorMessage' => 'The ResourceGroup provided does not exist in our records.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"20758A-585D-4A41-A9B2-28DA8F4F****\\",\\n \\"OrderId\\": \\"50155660025****\\",\\n \\"DbscId\\": \\"dbsc-f8z4d3k4nsgg9okb****\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Create a dedicated block storage cluster', 'description' => '## Operation description'."\n" ."\n" .'- Dedicated Block Storage Cluster is a block storage service that is physically isolated from other public cloud block storage clusters and provides exclusive access to all cluster resources for the owner. For more information, see [What is Dedicated Block Storage Cluster](~~208883~~).'."\n" ."\n" .'- Cloud disks created on a dedicated block storage cluster can be attached only to ECS instances in the same zone. Before you create a dedicated block storage cluster, plan the region and zone for the resources.'."\n" ."\n" .'- Dedicated block storage clusters are classified into basic and performance types. Select the appropriate cluster performance type based on your business requirements when you create a cluster.'."\n" ."\n" .'- You are charged for creating a dedicated block storage cluster. For more information, see [Billing](~~208884~~).', 'changeSet' => [ ['createdAt' => '2023-06-26T09:01:29.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-05-17T03:57:02.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-04-06T09:57:07.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-12-31T03:01:55.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-12-08T03:24:31.000Z', 'description' => 'Error codes changed, Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDedicatedBlockStorageCluster'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateDedicatedBlockStorageCluster', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/*'], ], ], 'additionalActions' => [ ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], ], ], ], 'CreateDiagnoseReport' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '227401', 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ 'name' => 'DiagnoseType', 'in' => 'query', 'schema' => ['description' => 'The diagnosis type. The only valid value is:'."\n" ."\n" .'- Performance: performance diagnosis', 'type' => 'string', 'required' => true, 'example' => 'Performance', 'title' => ''], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'd-asb1s8***', 'title' => '', 'required' => false], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. The only valid value is:'."\n" ."\n" .'- Disk: a cloud disk', 'type' => 'string', 'example' => 'Disk', 'title' => '', 'required' => false], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time for the diagnosis, in UTC. The time must be in the ISO 8601 format (yyyy-MM-ddTHH:mm:ssZ).', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '2024-09-01T02:26:00Z'], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time for the diagnosis, in UTC. The time must be in the ISO 8601 format (yyyy-MM-ddTHH:mm:ssZ).', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '2024-09-07T16:49:25Z'], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Call the [DescribeRegions](https://help.aliyun.com/zh/ecs/developer-reference/api-ebs-2021-07-30-describeregions?spm=a2c4g.11186623.0.i7) operation to find all regions supported by EBS Data Insight.', 'type' => 'string', 'required' => false, 'example' => 'cn-zhangjiakou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client-generated token to ensure request idempotency. This lets you safely retry the request without creating a duplicate diagnostic report. The token can contain a maximum of 64 ASCII characters.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'CreateDiagnoseReportResponse', 'description' => 'The response object.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'ReportId' => ['description' => 'The report ID.', 'type' => 'string', 'example' => 'report-qe2s****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'CreateDiagnoseReport', 'summary' => 'Creates a diagnostic report for a specified resource.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"ReportId\\": \\"report-qe2s****\\"\\n}","type":"json"}]', ], 'CreateDiskReplicaGroup' => [ 'summary' => 'Creates a replication pair-consistent group.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the replication pair-consistent group resides. This is the same as the region of the production site.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'SourceZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the zone where the production site is located.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing-f', 'title' => ''], ], [ 'name' => 'DestinationRegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the disaster recovery site is located.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'DestinationZoneId', 'in' => 'query', 'schema' => ['description' => 'The ID of the zone where the disaster recovery site is located.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai-e', 'title' => ''], ], [ 'name' => 'GroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the replication pair-consistent 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', 'maxLength' => 128, 'minLength' => 2, 'required' => false, 'example' => 'myreplicagrouptest', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the replication pair-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' => 'A client token to ensure the idempotence of the request. Generate a unique value from your client for this parameter. The \\`ClientToken\\` parameter 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-42665544****', 'title' => ''], ], [ 'name' => 'RPO', 'in' => 'query', 'schema' => [ 'description' => 'The recovery point objective (RPO) of the replication pair-consistent group, in seconds. The only supported value is 900.', 'enumValueTitles' => [900 => '900'], 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900', 'title' => '', ], ], [ 'name' => 'Bandwidth', 'in' => 'query', 'schema' => ['description' => 'The bandwidth in Kbps.'."\n" ."\n" .'> This parameter is not yet available.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => '5'], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the replication pair-consistent group belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs*******', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The tags to add to the resource. You can add up to 20 tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the tag.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'tag-value'], 'Key' => ['description' => 'The key of the tag.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'tag-key'], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'example' => '', ], ], [ 'name' => 'EnableRtc', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable replication time control (RTC). Valid values:'."\n" ."\n" .'- false: Disable RTC.'."\n" ."\n" .'- true: Enable RTC.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> If you set this parameter to true, RTC is enabled for the replication pair-consistent group. RTC is also enabled for all asynchronous replication pairs that are added to the group.', 'type' => 'boolean', 'title' => '', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', 'title' => ''], 'ReplicaGroupId' => ['description' => 'The ID of the replication pair-consistent group.', 'type' => 'string', 'example' => 'pg-xxxxxxx', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The operation is not allowed due to quota exceed.', 'description' => 'The quota for performing this operation has been exceeded.'], ['errorCode' => 'OperationDenied.TooMuchEmptyGroup', 'errorMessage' => 'Operation failed because of too many empty groups.', 'description' => 'You have created excessive empty replication pair-consistent groups.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\",\\n \\"ReplicaGroupId\\": \\"pg-xxxxxxx\\"\\n}","type":"json"}]', 'title' => 'CreateDiskReplicaGroup', 'description' => '## Operation Description'."\n" ."\n" .'Replication pair-consistent groups help you manage asynchronous replication for multiple disks in disaster recovery scenarios. You can centrally manage operations for these disks. The groups ensure that data on all disks can be recovered to the same point in time. This provides disaster recovery protection for one or more instances.'."\n" ."\n" .'When you create a replication pair-consistent group, note the following:'."\n" ."\n" .'- For information about the regions that support replication pair-consistent groups, see [Async replication overview](~~314563~~).'."\n" ."\n" .'- Replication pair-consistent groups support asynchronous disaster recovery across zones in the same region or across regions.'."\n" ."\n" .'- A replication pair can be added to a replication pair-consistent group only if the pair and the group have the same data replication direction. This means their production regions, production zones, disaster recovery regions, and disaster recovery zones must be the same.'."\n" ."\n" .'- After a replication pair is added to a replication pair-consistent group, the original Recovery Point Object (RPO) of the pair becomes invalid. Data is then replicated based on the RPO of the group.', 'changeSet' => [ ['createdAt' => '2025-07-07T11:22:38.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-03-08T11:10:44.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2022-08-16T11:40:00.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDiskReplicaGroup'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/*'], ], ], ], ], ], 'CreateDiskReplicaPair' => [ 'summary' => 'Creates a disk replication pair.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'paid', 'abilityTreeCode' => '42802', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'SourceZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the source disk (primary disk).', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing-f', 'title' => ''], ], [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the source disk (primary disk).', 'type' => 'string', 'required' => true, 'example' => 'd-iq80sgp4d0xbk24q****', 'title' => ''], ], [ 'name' => 'DestinationRegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the destination disk (secondary disk). You can call the [DescribeRegions](~~354276~~) operation to query the regions that support asynchronous replication.', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'DestinationDiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the destination disk (secondary disk).', 'type' => 'string', 'required' => true, 'example' => 'd-sa1f82p58p1tdw9g****', 'title' => ''], ], [ 'name' => 'DestinationZoneId', 'in' => 'query', 'schema' => ['description' => 'The zone ID of the destination disk (secondary disk).', 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai-e', 'title' => ''], ], [ 'name' => 'PairName', 'in' => 'query', 'schema' => ['description' => 'The name of the replication pair. 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 (\\_), periods (.), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'TestReplicaPair', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the replication pair. The description must be 2 to 256 characters in length. It cannot start with `http://` or `https://`.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'ChargeType', 'in' => 'query', 'schema' => ['description' => 'The billing method of the replication pair. Valid values:'."\n" ."\n" .'- PREPAY: subscription.'."\n" ."\n" .'- POSTPAY: pay-as-you-go.'."\n" ."\n" .'Default value: POSTPAY.', 'type' => 'string', 'required' => false, 'example' => 'PREPAY', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The subscription duration of the replication pair. This parameter is required when `ChargeType` is set to PREPAY. The unit of the duration is specified by `PeriodUnit`. Valid values: 1, 2, 3, 6, 12, 24, 36, and 60.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '1', 'title' => ''], ], [ 'name' => 'PeriodUnit', 'in' => 'query', 'schema' => ['description' => 'The unit of the subscription duration. Valid value: Month.', 'type' => 'string', 'required' => false, 'example' => 'Month', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token to ensure the idempotence of the request. Generate a value from your client to make sure that the value is unique among different requests. The ClientToken parameter 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-42665544****', 'title' => ''], ], [ 'name' => 'Bandwidth', 'in' => 'query', 'schema' => ['description' => 'The bandwidth for asynchronous data replication between disks. The unit is Kbps. Valid values:'."\n" ."\n" .'- 10240'."\n" ."\n" .'- 20480'."\n" ."\n" .'- 51200'."\n" ."\n" .'- 102400'."\n" ."\n" .'Default value: 10240.'."\n" .'When ChargeType is set to POSTPAY, you cannot specify this parameter. The system uses a value of 0, which means that the bandwidth is dynamically allocated based on data writes.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10240', 'title' => ''], ], [ 'name' => 'RPO', 'in' => 'query', 'schema' => ['description' => 'The recovery point objective (RPO) of the replication pair. The unit is seconds. Currently, only 900 is supported.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900', 'title' => ''], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the replication pair belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs****', 'title' => ''], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The list of tags. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag information.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the tag.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'TestValue'], 'Key' => ['description' => 'The key of the tag.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'TestKey'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'example' => '', ], ], [ 'name' => 'EnableRtc', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable replication time control (RTC). Valid values:'."\n" ."\n" .'- false: Disables RTC.'."\n" ."\n" .'- true: Enables RTC.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> If the replication pair is added to a replication group, the setting of this parameter is the same as that of the replication group.', 'type' => 'boolean', 'title' => '', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', 'title' => ''], 'ReplicaPairId' => ['description' => 'The ID of the replication pair.', 'type' => 'string', 'example' => 'pair-cn-dsa****', 'title' => ''], 'OrderId' => ['description' => 'The order ID.', 'type' => 'string', 'example' => '123456****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', 'description' => 'The request and a previous request contains the same client token but different parameters.'], ], 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The operation is not allowed due to quota exceed.', 'description' => 'The quota for performing this operation has been exceeded.'], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\",\\n \\"ReplicaPairId\\": \\"pair-cn-dsa****\\",\\n \\"OrderId\\": \\"123456****\\"\\n}","type":"json"}]', 'title' => 'CreateDiskReplicaPair', 'description' => '## Description'."\n" ."\n" .''."\n" ."\n" .'Asynchronous replication is a feature that provides cross-region data protection using the data replication capabilities of Elastic Block Storage. The feature asynchronously replicates data from a disk in one region to another disk in a different region to provide cross-region disaster recovery and backup for your data. You can use this feature to build disaster recovery capabilities for critical services, protect database data, and improve business continuity. For more information about the feature notes and billing, see [Overview of asynchronous replication for disks](~~314563~~). The asynchronous replication feature is billed for bandwidth on a subscription basis. Pay-as-you-go billing for traffic is also supported.'."\n" ."\n" .''."\n" ."\n" .''."\n" ."\n" .'Async replication is a feature that provides cross-region data protection based on the data replication capabilities of Elastic Block Storage (EBS). The feature asynchronously replicates data from a disk in one region to a disk in another region for disaster recovery. You can use this feature to build disaster recovery capabilities for critical services, protect database data, and improve business continuity. The async replication feature is billed for bandwidth on a subscription basis.'."\n" ."\n" .''."\n" ."\n" .'Currently, the asynchronous replication feature is available only for Enhanced SSD (ESSD) disks and has certain limitations.'."\n" ."\n" .'Before you create a replication pair, note the following:'."\n" ."\n" .'- Prepare a source disk (primary disk) and a destination disk (secondary disk). The source disk is the disk that you want to protect with disaster recovery, and the destination disk is the replication target. You can call the [CreateDisk](~~25513~~) operation to create the disks.'."\n" ."\n" .'- The secondary disk must be in a different region from the primary disk. For more information about the regions that support asynchronous replication, see [Overview of asynchronous replication for disks](~~314563~~).'."\n" ."\n" .'- This operation creates a replication pair between the primary and secondary disks. After you create the pair, you must call the [StartDiskReplicaPair](~~354205~~) operation to activate it. Activating the replication pair starts the periodic, cross-region data replication from the primary disk to the secondary disk.', 'changeSet' => [ ['createdAt' => '2025-07-07T11:22:38.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-03-29T08:24:47.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2023-03-08T11:10:44.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2022-12-13T03:44:43.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2022-08-29T07:13:41.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDiskReplicaPair'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/*'], ], ], 'additionalActions' => [ ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], ], ], ], 'CreateEnterpriseSnapshotPolicy' => [ 'summary' => 'Creates an enterprise-level snapshot policy by calling CreateEnterpriseSnapshotPolicy.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '159104', 'abilityTreeNodes' => ['FEATUREdisk493RYF'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID. You can call DescribeRegions to query the regions that support asynchronous replication.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The Policy Name.', 'type' => 'string', 'required' => true, 'example' => 'xx'], ], [ 'name' => 'TargetType', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The type. Valid values:'."\n" ."\n" .'- DISK', 'enumValueTitles' => ['DISK' => 'DISK'], 'type' => 'string', 'required' => true, 'example' => 'DISK', ], ], [ 'name' => 'State', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The status. Valid values:'."\n" ."\n" .'- DISABLED'."\n" .'- ENABLED', 'enumValueTitles' => ['DISABLED' => 'DISABLED', 'ENABLED' => 'ENABLED'], 'type' => 'string', 'example' => 'ENABLED', 'required' => false, ], ], [ 'name' => 'Desc', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The description.', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], [ 'name' => 'Schedule', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The schedule rule.', 'type' => 'object', 'properties' => [ 'CronExpression' => ['title' => '', 'description' => 'The cycle and time at which the policy is executed. Specify the value in a cron expression.'."\n" ."\n" .'For example, `0 0 4 1/1 * ?` specifies that the snapshot operation is performed at 4:00 AM every day, starting from the first day of each month.', 'type' => 'string', 'required' => true, 'example' => '0 0 */24 * * *'], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'RetainRule', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The retention rule.', 'type' => 'object', 'properties' => [ 'Number' => ['title' => '', 'description' => 'The number of snapshots to retain. Valid values: 1 to 256.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], 'TimeInterval' => ['title' => '', 'description' => 'The time interval of the retention rule. The unit is specified by the TimeUnit parameter. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '14'], 'TimeUnit' => [ 'title' => '', 'description' => 'The unit of the retention time. Valid values:'."\n" ."\n" .'- DAYS'."\n" .'- WEEKS', 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], 'type' => 'string', 'required' => false, 'example' => 'DAYS', ], ], 'required' => true, 'example' => '', ], ], [ 'name' => 'StorageRule', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The advanced snapshot feature.', 'type' => 'object', 'properties' => [ 'EnableImmediateAccess' => [ 'title' => '', 'description' => 'Specifies whether to enable instant access for snapshots. Valid values:'."\n" ."\n" .'- true'."\n" .'- false', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'false', ], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'CrossRegionCopyInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The snapshot replication information.', 'type' => 'object', 'properties' => [ 'Enabled' => [ 'title' => '', 'description' => 'Specifies whether to enable cross-region replication. Valid values:'."\n" ."\n" .'- true'."\n" .'- false', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'false', ], 'Regions' => [ 'title' => '', 'description' => 'The destination region information.', 'type' => 'array', 'items' => [ 'description' => 'The replication destination region information. This parameter is optional.', 'type' => 'object', 'properties' => [ 'RegionId' => ['title' => '', 'description' => 'The ID of the destination region for snapshot replication. You can invoke [DescribeDiskReplicaPairs](~~354206~~) to query the region information of existing asynchronous replication relationships.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], 'RetainDays' => ['title' => '', 'description' => 'The number of days to retain snapshots in the destination region. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '7'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The tag key-value pairs. Valid values of n: 1 to 20.', 'type' => 'array', 'items' => [ 'description' => 'The tag.', 'type' => 'object', 'properties' => [ 'Key' => ['title' => '', 'description' => 'The tag key of the resource.', 'type' => 'string', 'required' => true, 'example' => 'tag-key'], 'Value' => ['title' => '', 'description' => 'The tag value of the resource.', 'type' => 'string', 'required' => true, 'example' => 'tag-value'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'Ensures the idempotence of the request. Generate a parameter value from your client that is unique across 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-42665544****', 'title' => ''], ], [ 'name' => 'SpecialRetainRules', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The special retention rules.', 'type' => 'object', 'properties' => [ 'Enabled' => [ 'title' => '', 'description' => 'Specifies whether to enable special retention. Valid values:'."\n" ."\n" .'- true'."\n" .'- false', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'true', ], 'Rules' => [ 'title' => '', 'description' => 'The list of special retention rules.', 'type' => 'array', 'items' => [ 'description' => 'The special retention rules.', 'type' => 'object', 'properties' => [ 'SpecialPeriodUnit' => [ 'title' => '', 'description' => 'The period unit for specially retained snapshots. For example, if this parameter is set to WEEKS, the first snapshot of each week is specially retained. The retention duration is determined by TimeUnit and TimeInterval. Valid values:'."\n" ."\n" .'- WEEKS'."\n" .'- MONTHS'."\n" .'- YEARS', 'enumValueTitles' => ['MONTHS' => 'MONTHS', 'YEARS' => 'YEARS', 'WEEKS' => 'WEEKS'], 'type' => 'string', 'example' => 'WEEKS', 'required' => false, ], 'TimeInterval' => ['title' => '', 'description' => 'The time interval of the retention rule. The unit is specified by the TimeUnit parameter. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '14'], 'TimeUnit' => [ 'title' => '', 'description' => 'The unit of the retention time for special snapshots. Valid values:'."\n" ."\n" .'- DAYS'."\n" .'- WEEKS', 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], 'type' => 'string', 'example' => 'WEEKS', 'required' => false, ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'PolicyId' => ['title' => '', 'description' => 'The snapshot policy ID.', 'type' => 'string', 'example' => 'esp-xxx'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'F13483A9-17E2-5085-9B2E-2155B0487FF7'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PolicyId\\": \\"esp-xxx\\",\\n \\"RequestId\\": \\"F13483A9-17E2-5085-9B2E-2155B0487FF7\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Create an enterprise-level snapshot policy', 'changeSet' => [ ['createdAt' => '2024-10-08T07:16:45.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEnterpriseSnapshotPolicy'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/*'], ], ], ], ], ], 'DeleteApp' => [ 'summary' => 'Deletes an App for the centralized role.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '193443', 'abilityTreeNodes' => ['FEATUREdisk7F2R1Z'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Owner', 'in' => 'query', 'schema' => ['description' => 'The application owner.', 'type' => 'string', 'required' => false, 'example' => 'anchashi', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'A string generated by the server that serves as a client request identifier.', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID.', 'type' => 'string', 'required' => false, 'example' => 'app-xxx', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'LensResponse', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '1F58EB6E-7B7A-5437-9612-F14D50822A61', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Delete an App', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1F58EB6E-7B7A-5437-9612-F14D50822A61\\"\\n}","type":"json"}]', ], 'DeleteDiskReplicaGroup' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '115800', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the IDs of replication pair-consistent groups.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.GroupHasPair', 'errorMessage' => 'The group cannot be deleted due to not empty.', 'description' => 'The replication pair-consistent group contains replication pairs and cannot be deleted.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'DeleteDiskReplicaGroup', 'summary' => 'Deletes a replication pair-consistent group.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which the replication pair-consistent group feature is available, see [Overview](~~314563~~).'."\n" .'* Before you can delete a replication pair-consistent group, make sure that no replication pairs exist in the group.'."\n" .'* The replication pair-consistent group that you want to delete must be in the **Created** (`created`), **Creation Failed** (`create_failed`), **Stopped** (`stopped`), **Failovered** (`failovered`), **Deleting** (`deleting`), **Deletion Failed** (`delete_failed`), or **Invalid** (`invalid`) state.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'DeleteDiskReplicaPair' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '48744', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the primary disk in the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query the region information of replication pairs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotency 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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n A37597A6-BB99-19B3-85EA-4C2B91F0****\\n","errorExample":""}]', 'title' => 'DeleteDiskReplicaPair', 'summary' => 'Deletes replication pairs.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which async replication is available, see [Overview](~~314563~~).'."\n" .'* Only replication pairs that are in the **Stopped** (`stopped`), **Invalid** (`invalid`), or **Failovered** (`failovered`) state can be deleted. This operation deletes only replication pairs. The primary and secondary disks in the deleted replication pairs are retained.'."\n" .'* To delete a replication pair, you must call this operation in the region where the primary disk is located. After the replication pair is deleted, the functionality limits are lifted from the primary and secondary disks. For example, you can attach the secondary disk, resize the disk, or read data from or write data to the disk.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'DeleteEnterpriseSnapshotPolicy' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '159101', 'abilityTreeNodes' => ['FEATUREdiskAAH44P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID . You can call the [DescribeRegions](~~354276~~) operation to query the most recent list of regions in which snapshot policy is supported.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['title' => 'the id of the snapshot policy', 'description' => 'The id of the policy.', 'type' => 'string', 'required' => true, 'example' => 'esp-xxx'], ], [ '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-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Response', 'description' => 'Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'B9F716DF-FAFD-50FD-B962-BCE0C837639A'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B9F716DF-FAFD-50FD-B962-BCE0C837639A\\"\\n}","errorExample":""},{"type":"xml","example":"\\n xxx\\n","errorExample":""}]', 'title' => 'DeleteEnterpriseSnapshotPolicy', 'summary' => 'Delete a enterprise-level snapshot policy.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], ], ], 'DescribeApps' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '193441', 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ 'name' => 'AppNames', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'List of apps to query. If empty, all app information is queried.', 'type' => 'array', 'items' => ['description' => 'Application name.', 'type' => 'string', 'required' => false, 'example' => 'default', 'title' => ''], 'required' => false, 'example' => 'App1,App2', 'maxItems' => 100, ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'Region ID. You can call [DescribeRegions](~~354276~~) to query the list of regions supported by EBS Data Insights.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'Owner', 'in' => 'query', 'schema' => ['description' => 'User UID.', 'type' => 'string', 'required' => false, 'example' => '1485558146415628', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'A string generated by the server that serves as an identifier for the client request.', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ 'name' => 'AppIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the apps to operate on. A formatted JSON array that supports up to 100 AppIds, separated by commas (,).', 'type' => 'array', 'items' => ['description' => 'The IDs of the apps to operate on. A formatted JSON array that supports up to 100 AppIds, separated by commas (,).', 'type' => 'string', 'required' => false, 'example' => 'app-25603551', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'DescribeAppsResponse', 'type' => 'object', 'properties' => [ 'AppInfos' => [ 'title' => '', 'description' => 'App information.', 'type' => 'array', 'items' => [ 'description' => 'Detailed information about the application.', 'type' => 'object', 'properties' => [ 'AppName' => ['description' => 'Optional value. AppName takes effect only when ReportType is set to present.', 'type' => 'string', 'example' => 'app1', 'title' => ''], 'AppTags' => [ 'title' => '', 'description' => 'Tags contained in the user app.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'Tag key.', 'type' => 'string', 'example' => 'ebs', 'title' => ''], 'TagValue' => ['description' => 'Tag value.', 'type' => 'string', 'example' => 'test', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => 'default', ], 'SubscribeStatus' => ['description' => 'Subscription status. Valid values:'."\n" .'- Subscribe: subscribed.'."\n" .'- UnSubscribe: not subscribed.', 'type' => 'string', 'example' => 'Subscribe', 'title' => ''], 'SubscribePeriod' => ['description' => 'Report subscription period.', 'type' => 'string', 'example' => 'Weekly', 'title' => ''], 'Description' => ['description' => 'Event description.', 'type' => 'string', 'example' => '这个app用于统计云盘全网用量', 'title' => ''], 'ReportSendEnabled' => ['description' => 'Indicates whether report sending is enabled.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SlsSendEnabled' => ['description' => 'Indicates whether SLS delivery is enabled.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'EventBridgeSendEnabled' => ['description' => 'Indicates whether EventBridge delivery is enabled.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'MonitorSendEnabled' => ['description' => 'Indicates whether Monitor delivery is enabled.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'ModifyTime' => ['description' => 'Modification time (UTC).', 'type' => 'integer', 'format' => 'int64', 'example' => '2025-11-14T02:11:32Z', 'title' => ''], 'Default' => ['description' => 'Default time zone.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'AppId' => ['description' => 'Application ID.', 'type' => 'string', 'example' => 'app-bd5e3533', 'title' => ''], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'A1C00637-AC84-5EFD-89B5-D5CE39F0F2B1', 'title' => ''], 'Code' => ['description' => 'Internal error code.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'UserCode' => ['description' => 'User error code.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Message' => ['description' => 'Message.', 'type' => 'string', 'example' => 'success', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful.', 'type' => 'boolean', 'example' => 'True', 'title' => ''], 'HttpStatusCode' => ['description' => 'HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'DynamicCode' => ['description' => 'Dynamic error code.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'DynamicMessage' => ['description' => 'Dynamic error message, used to replace the %s variable in the ErrMessage return parameter.', 'type' => 'string', 'example' => '-', 'title' => ''], 'AccessDeniedDetail' => ['description' => 'Detailed reason for access denial.', 'type' => 'string', 'example' => 'None', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Query application details', 'summary' => 'Centralized role: Query app information', 'description' => '## API Description'."\n" ."\n" .'Query the tag key-value pairs of cloud disks and snapshots contained in user-defined apps. You can use filterTagKey to narrow the query scope.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeApps', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AppInfos\\": [\\n {\\n \\"AppName\\": \\"app1\\",\\n \\"AppTags\\": [\\n {\\n \\"TagKey\\": \\"ebs\\",\\n \\"TagValue\\": \\"test\\"\\n }\\n ],\\n \\"SubscribeStatus\\": \\"Subscribe\\",\\n \\"SubscribePeriod\\": \\"Weekly\\",\\n \\"Description\\": \\"这个app用于统计云盘全网用量\\",\\n \\"ReportSendEnabled\\": true,\\n \\"SlsSendEnabled\\": false,\\n \\"EventBridgeSendEnabled\\": false,\\n \\"MonitorSendEnabled\\": false,\\n \\"ModifyTime\\": 0,\\n \\"Default\\": true,\\n \\"AppId\\": \\"app-bd5e3533\\"\\n }\\n ],\\n \\"RequestId\\": \\"A1C00637-AC84-5EFD-89B5-D5CE39F0F2B1\\",\\n \\"Code\\": \\"OK\\",\\n \\"UserCode\\": \\"OK\\",\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"OK\\",\\n \\"DynamicMessage\\": \\"-\\",\\n \\"AccessDeniedDetail\\": \\"None\\"\\n}","type":"json"}]', ], 'DescribeDedicatedBlockStorageClusterDisks' => [ 'summary' => 'Queries information about one or more cloud disks that you have created in a dedicated block storage cluster.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '124946', 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the dedicated block storage cluster. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The maximum number of entries per page for a paged query. Maximum value: 500.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10'], ], [ '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' => 'DbscId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The dedicated block storage cluster ID.', 'type' => 'string', 'required' => true, 'example' => 'dbsc-cn-od43bf****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], 'NextToken' => ['title' => '', 'description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'AAAAAdDWBF2'], 'Disks' => [ 'description' => 'The collection of cloud disk information.', 'type' => 'object', 'properties' => [ 'Disk' => [ 'title' => '', 'description' => 'The collection of cloud disk information.', 'type' => 'array', 'items' => [ 'description' => 'The collection of cloud disk information.', 'type' => 'object', 'properties' => [ 'DiskId' => ['description' => 'The cloud disk ID.', 'type' => 'string', 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], 'DiskName' => ['description' => 'The cloud disk name.', 'type' => 'string', 'example' => 'testDiskName', 'title' => ''], 'Status' => ['description' => 'The cloud disk status. For more information, see [Cloud disk status](~~25689~~). Valid values:'."\n" ."\n" .'- In_use.'."\n" .'- Available.'."\n" .'- Attaching.'."\n" .'- Detaching.'."\n" .'- Creating.'."\n" .'- ReIniting.', 'type' => 'string', 'example' => 'In_use', 'title' => ''], 'Type' => ['description' => 'The type of the cloud disk. Valid values:'."\n" ."\n" .'- system: system cloud disk.'."\n" .'- data: data cloud disk.', 'type' => 'string', 'example' => 'system', 'title' => ''], 'PerformanceLevel' => ['description' => 'The performance level of the ESSD. Valid values:'."\n" ."\n" .'- PL0: a maximum of 10,000 random read/write IOPS per cloud disk.'."\n" .'- PL1: a maximum of 50,000 random read/write IOPS per cloud disk.'."\n" .'- PL2: a maximum of 100,000 random read/write IOPS per cloud disk.'."\n" .'- PL3: a maximum of 1,000,000 random read/write IOPS per cloud disk.', '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" .'>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 storage set ID.', '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' => ''], 'DeleteAutoSnapshot' => ['description' => 'Indicates whether automatic snapshots are deleted when the cloud disk is released. Valid values:'."\n" ."\n" .'- true: Automatic snapshots are deleted when the cloud disk is released.'."\n" .'- false: Automatic snapshots are retained when the cloud 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' => ''], 'MountInstanceNum' => ['description' => 'The number of instances to which the shared storage is attached.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'Description' => ['description' => 'The cloud disk description.', 'type' => 'string', 'example' => 'testDescription', 'title' => ''], 'Device' => ['description' => 'The device name of the instance to which the cloud disk is attached, such as /dev/xvdb. Note the following items:'."\n" ."\n" .'- This parameter has a value only when the `Status` parameter is set to `In_use`. This parameter is empty in other states.'."\n" ."\n" .'- For cloud disks with the multi-attach feature enabled, this value is always empty. You can view all attachment information of the cloud disk from the returned `Attachment` list.'."\n" ."\n" .'> This parameter will be deprecated. To ensure code compatibility, do not use this parameter.', 'type' => 'string', 'example' => '/dev/xvdb', 'title' => ''], 'Portable' => ['description' => 'Indicates whether the cloud 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 remains unchanged throughout the lifecycle of the cloud disk.', 'type' => 'string', 'example' => 'm-bp13aqm171qynt3u***', 'title' => ''], 'KMSKeyId' => ['description' => 'The KMS key ID used by the cloud disk.', 'type' => 'string', 'example' => '0e478b7a-4262-4802-b8cb-00d3fb40****', 'title' => ''], 'DeleteWithInstance' => ['description' => 'Indicates whether the cloud disk is released when the instance is released. Valid values:'."\n" ."\n" .'- true: The cloud disk is released when the instance is released.'."\n" .'- false: The cloud disk is retained when the instance is released.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'DetachedTime' => ['description' => 'The time when the cloud 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" .'If no snapshot was specified when the cloud disk was created, this value is empty. This value remains unchanged throughout the lifecycle of the cloud disk.', 'type' => 'string', 'example' => 's-bp67acfmxazb4p****', 'title' => ''], 'InstanceId' => ['description' => 'The instance ID of the instance to which the cloud disk is mounted. Note the following items:'."\n" ."\n" .'- This parameter has a value only when the `Status` parameter is set to `In_use`. This parameter is empty in other states.'."\n" ."\n" .'- For cloud disks with the multi-attach attribute enabled, this value is always empty. You can view all mount information of the cloud disk from the returned `Attachment` list.', 'type' => 'string', 'example' => 'i-bp67acfmxazb4q****', 'title' => ''], 'Size' => ['description' => 'The cloud disk size. Unit: GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '60', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the cloud disk.', 'type' => 'string', 'example' => 'cn-heyuan', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the cloud disk.', 'type' => 'string', 'example' => 'cn-heyuan-i', 'title' => ''], 'AttachedTime' => ['description' => 'The time when the cloud disk was last attached. The time follows the [ISO 8601](~~25696~~) standard in the yyyy-MM-ddThh:mmZ format. The time is displayed in UTC.', 'type' => 'string', 'example' => '2021-06-07T06:08:56Z', 'title' => ''], 'Category' => ['description' => 'The category of the cloud disk or local disk is cloud_essd, which indicates an ESSD.', 'type' => 'string', 'example' => 'cloud_essd', 'title' => ''], 'MultiAttach' => ['description' => 'Indicates whether the multi-attach feature is enabled for the cloud disk.', 'type' => 'string', 'example' => 'Disabled', 'title' => ''], 'Tags' => [ 'description' => 'The tags of the cloud disk.', 'type' => 'array', 'items' => [ 'description' => 'The tags of the cloud 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' => '', ], 'DiskChargeType' => ['description' => 'The billing method of the cloud disk. Valid values:'."\n" ."\n" .'- PrePaid: subscription.'."\n" .'- PostPaid: pay-as-you-go.', 'type' => 'string', 'example' => 'PrePaid', 'title' => ''], 'IOPS' => ['description' => 'The maximum number of read/write (I/O) operations per second. Unit: operations/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '4000', 'title' => ''], 'Throughput' => ['description' => 'The amount of data that can be transferred per unit of time. Unit: MB/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], 'ProvisionedIops' => ['description' => 'The provisioned read/write IOPS of the ESSD AutoPL cloud 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 cloud disks](~~368372~~).', 'type' => 'integer', 'format' => 'int64', 'example' => '40000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Indicates whether the burst (performance burst) feature is enabled. 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 cloud disks](~~368372~~).', 'type' => 'boolean', 'example' => 'false', 'title' => ''], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\",\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"Disks\\": {\\n \\"Disk\\": [\\n {\\n \\"DiskId\\": \\"d-bp67acfmxazb4p****\\",\\n \\"DiskName\\": \\"testDiskName\\",\\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 \\"DeleteAutoSnapshot\\": false,\\n \\"StorageClusterId\\": \\"dbsc-j5e1sf2vaf5he8m2****\\",\\n \\"Encrypted\\": false,\\n \\"MountInstanceNum\\": 1,\\n \\"Description\\": \\"testDescription\\",\\n \\"Device\\": \\"/dev/xvdb\\",\\n \\"Portable\\": false,\\n \\"ImageId\\": \\"m-bp13aqm171qynt3u***\\",\\n \\"KMSKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fb40****\\",\\n \\"DeleteWithInstance\\": true,\\n \\"DetachedTime\\": \\"2021-06-07T21:01:22Z\\",\\n \\"SourceSnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"InstanceId\\": \\"i-bp67acfmxazb4q****\\",\\n \\"Size\\": 60,\\n \\"RegionId\\": \\"cn-heyuan\\",\\n \\"ZoneId\\": \\"cn-heyuan-i\\",\\n \\"AttachedTime\\": \\"2021-06-07T06:08:56Z\\",\\n \\"Category\\": \\"cloud_essd\\",\\n \\"MultiAttach\\": \\"Disabled\\",\\n \\"Tags\\": [\\n {\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ],\\n \\"DiskChargeType\\": \\"PrePaid\\",\\n \\"IOPS\\": 4000,\\n \\"Throughput\\": 100,\\n \\"ProvisionedIops\\": 40000,\\n \\"BurstingEnabled\\": false\\n }\\n ]\\n }\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query cloud disks in a dedicated block storage cluster', 'description' => '- The following two methods are supported to view returned data:'."\n" .' - Method 1: Use `NextToken` to set a query token. Set its value to the `NextToken` value returned by the previous call to DescribeDisks, and use `MaxResults` to set the maximum number of entries per page.'."\n" .' - Method 2: Use `PageSize` to set the number of entries per page, and use `PageNumber` to set the page number.'."\n" ."\n" .' You can use only one of the preceding methods. When a large number of entries are returned, we recommend that you use Method 1. If you set `NextToken`, the `PageSize` and `PageNumber` request parameters do not take effect, and `TotalCount` in the returned data is invalid.'."\n" ."\n" .'- Cloud disks with the multi-attach feature enabled can be attached to multiple instances. You can view all attachment information of a cloud disk based on 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 of CLI](~~110340~~).', 'changeSet' => [ ['createdAt' => '2023-04-06T09:57:07.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDedicatedBlockStorageClusterDisks'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDedicatedBlockStorageClusterDisks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], ], ], 'DescribeDedicatedBlockStorageClusters' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '104950', 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['description' => 'The region ID of the dedicated block storage cluster. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan', 'title' => ''], ], [ 'name' => 'AzoneId', 'in' => 'formData', 'schema' => ['description' => 'The zone ID of the dedicated block storage cluster. You can call the [DescribeZones](~~25610~~) operation to query the most recent zone list.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cn-heyuan-b', 'title' => ''], ], [ 'name' => 'DedicatedBlockStorageClusterId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'The IDs of the dedicated block storage clusters. You can specify the IDs of multiple dedicated block storage clusters in a request.'."\n", 'type' => 'array', 'items' => ['description' => 'The ID of dedicated block storage cluster N. You can specify the IDs of multiple dedicated block storage clusters in a single request.'."\n", 'type' => 'string', 'required' => false, 'example' => 'dbsc-f8z4d3k4nsgg9okb****', 'title' => ''], 'required' => false, 'maxItems' => 10, 'title' => '', ], ], [ 'name' => 'Status', 'in' => 'formData', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The states of dedicated block storage clusters. Valid values:'."\n" ."\n" .'* Preparing'."\n" .'* Running'."\n" .'* Expired'."\n" .'* Offline'."\n" ."\n" .'Multiple states can be specified. Valid values of N: 1, 2, 3, and 4.'."\n", 'type' => 'array', 'items' => ['description' => 'The state of the dedicated block storage cluster. Valid values:'."\n" ."\n" .'* Preparing'."\n" .'* Running'."\n" .'* Expired'."\n" .'* Offline'."\n" ."\n" .'N indicates that multiple states can be specified. Valid values of N: 1, 2, 3, and 4.'."\n", 'type' => 'string', 'required' => false, 'example' => 'Running', 'title' => ''], 'required' => false, 'enumValueTitles' => ['Running' => 'Running', 'Offline' => 'Offline', 'Expired' => 'Expired', 'Preparing' => 'Preparing'], 'maxItems' => 10, ], ], [ 'name' => 'Category', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The category of disks that can be created in the dedicated block storage cluster.'."\n" ."\n" .'Set the value to cloud_essd. Only enhanced SSDs (ESSDs) can be created in dedicated block storage clusters.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cloud_essd'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The tags. Up to 20 tags are supported.'."\n", 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'Key' => ['title' => '', 'description' => 'The tag key of the dedicated block storage cluster.'."\n", 'type' => 'string', 'required' => false, 'example' => 'TestKey'], 'Value' => ['title' => '', 'description' => 'The tag value of the dedicated block storage cluster.'."\n", 'type' => 'string', 'required' => false, 'example' => 'TestValue'], ], 'required' => false, 'title' => '', ], 'required' => false, 'maxItems' => 21, ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the resource group to which the dedicated block storage cluster belongs.'."\n", 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs4****'], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The query token. Set the value to the NextToken value that is returned in the last call.'."\n", 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The maximum number of entries to return in each request that uses a token to perform a query.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page. Valid values: 1 to 100.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'A string generated by the server as an identifier for clients to send requests.'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-426655440000'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response.'."\n", 'type' => 'object', 'properties' => [ 'DedicatedBlockStorageClusters' => [ 'description' => 'Details about the dedicated block storage clusters.'."\n", 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'DedicatedBlockStorageClusterId' => ['description' => 'The ID of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'dbsc-f8z4d3k4nsgg9okb****', 'title' => ''], 'DedicatedBlockStorageClusterName' => ['description' => 'The name of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'myDBSCCluster', 'title' => ''], 'Description' => ['description' => 'The description of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'RegionId' => ['description' => 'The region ID of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'cn-heyuan', 'title' => ''], 'ZoneId' => ['description' => 'The zone ID of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'cn-heyuan-b', 'title' => ''], 'Status' => ['title' => '', 'description' => 'The state of the dedicated block storage cluster. Valid values:'."\n" ."\n" .'* Preparing'."\n" .'* Running'."\n" .'* Expired'."\n" .'* Offline'."\n", 'type' => 'string', 'example' => 'Running'], 'Category' => ['description' => 'The category of disks that can be created in the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'cloud_essd', 'title' => ''], 'Type' => ['description' => 'The type of the dedicated block storage cluster. Valid values:'."\n" ."\n" .'* Standard: basic dedicated block storage cluster. ESSDs at performance level 0 (PL0 ESSDs) can be created in basic dedicated block storage clusters.'."\n" .'* Premium: performance dedicated block storage cluster. ESSDs at performance level 1 (PL1 ESSDs) can be created in performance dedicated block storage clusters.'."\n", 'type' => 'string', 'example' => 'Standard', 'title' => ''], 'PerformanceLevel' => ['title' => '', 'description' => 'The performance level of disks. Valid values:'."\n" ."\n" .'* PL0'."\n" .'* PL1'."\n" .'* PL2'."\n" .'* PL3'."\n" ."\n" .'> This parameter is valid only when the SupportedCategory value is cloud_essd.'."\n", 'type' => 'string', 'example' => 'PL0'], 'SupportedCategory' => ['description' => 'This parameter is not supported.'."\n", 'type' => 'string', 'example' => 'cloud_essd', 'title' => ''], 'CreateTime' => ['description' => 'The time when the dedicated block storage cluster was created. The value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'string', 'example' => '1657113211', 'title' => ''], 'ExpiredTime' => ['description' => 'The time when the dedicated block storage cluster expires. The value is a UNIX timestamp. Unit: seconds.'."\n", 'type' => 'string', 'example' => '1673020800', 'title' => ''], 'DedicatedBlockStorageClusterCapacity' => [ 'description' => 'Details about the storage capacity of the dedicated block storage cluster.'."\n", 'type' => 'object', 'properties' => [ 'AvailableCapacity' => ['title' => '', 'description' => 'The available capacity of the dedicated block storage cluster. Unit: GiB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], 'TotalCapacity' => ['title' => '', 'description' => 'The total capacity of the dedicated block storage cluster. Unit: GiB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], 'DeliveryCapacity' => ['title' => '', 'description' => 'The capacity to be delivered for the dedicated block storage cluster. Unit: GiB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '0'], 'UsedCapacity' => ['title' => '', 'description' => 'The used capacity of the dedicated block storage cluster. Unit: GiB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1440'], 'ClusterDeliveryCapacity' => ['title' => '', 'description' => 'The capacity of the dedicated block storage cluster that is to be delivered in orders. Unit: GB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '0'], 'ClusterAvailableCapacity' => ['title' => '', 'description' => 'The capacity of the dedicated block storage cluster that was delivered in orders. Unit: GB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], 'AvailableDeviceCapacity' => ['title' => '', 'description' => 'The total capacity of the dedicated block storage cluster that was delivered in disk creation orders. Unit: GB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], 'TotalDeviceCapacity' => ['title' => '', 'description' => 'The total capacity of the dedicated block storage cluster that is to be delivered in disk creation orders. Unit: GB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '61440'], 'UsedDeviceCapacity' => ['title' => '', 'description' => 'The capacity of the dedicated block storage cluster that was used to create disks. Unit: GB.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '32000'], 'AvailableSpaceCapacity' => ['title' => '', 'description' => 'This parameter is displayed only if Thin Provision is enabled.'."\n", 'type' => 'number', 'format' => 'double', 'example' => '40000.3'], 'TotalSpaceCapacity' => ['title' => '', 'description' => 'This parameter is displayed only if Thin Provision is enabled.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '73728'], 'UsedSpaceCapacity' => ['title' => '', 'description' => 'This parameter is displayed only if Thin Provision is enabled.'."\n", 'type' => 'number', 'format' => 'double', 'example' => '33727.7'], ], 'title' => '', ], 'AliUid' => ['description' => 'The user ID.'."\n", 'type' => 'string', 'example' => '12345601234560***', 'title' => ''], 'StorageDomain' => ['description' => 'StorageDomain'."\n", 'type' => 'string', 'example' => 'StorageDomain', 'title' => ''], 'EnableThinProvision' => ['description' => 'Indicates whether Thin Provision is enabled.'."\n", 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'SizeOverSoldRatio' => ['description' => 'The capacity oversold ratio.'."\n", 'type' => 'number', 'format' => 'double', 'example' => '1.2', 'title' => ''], 'Tags' => [ 'title' => 'the dbsc tags', 'description' => 'The tags of the dedicated block storage cluster.'."\n", 'type' => 'array', 'items' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'TagKey' => ['title' => '', 'description' => 'The tag key of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'testKey'], 'TagValue' => ['title' => '', 'description' => 'The tag value of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'testValue'], ], 'title' => '', ], ], 'ResourceGroupId' => ['title' => 'the resource group id', 'description' => 'The ID of the resource group to which the dedicated block storage cluster belongs. You can call the [ListResourceGroups](~~158855~~) operation to obtain the ID of the resource group.'."\n", 'type' => 'string', 'example' => 'rg-aekzsoux****'], ], 'title' => '', ], 'title' => '', ], 'NextToken' => ['title' => '', 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", 'type' => 'string', 'example' => 'AAAAAdDWBF2'], 'PageNumber' => ['title' => '', 'description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '20'], 'RequestId' => ['title' => 'RrequestId', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.NotSupported', 'errorMessage' => 'The specified disk category is not supported.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidZoneId.NotFound', 'errorMessage' => 'The specified ZoneId does not exist.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"DedicatedBlockStorageClusters\\": [\\n {\\n \\"DedicatedBlockStorageClusterId\\": \\"dbsc-f8z4d3k4nsgg9okb****\\",\\n \\"DedicatedBlockStorageClusterName\\": \\"myDBSCCluster\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"RegionId\\": \\"cn-heyuan\\",\\n \\"ZoneId\\": \\"cn-heyuan-b\\",\\n \\"Status\\": \\"Running\\",\\n \\"Category\\": \\"cloud_essd\\",\\n \\"Type\\": \\"Standard\\",\\n \\"PerformanceLevel\\": \\"PL0\\",\\n \\"SupportedCategory\\": \\"cloud_essd\\",\\n \\"CreateTime\\": \\"1657113211\\",\\n \\"ExpiredTime\\": \\"1673020800\\",\\n \\"DedicatedBlockStorageClusterCapacity\\": {\\n \\"AvailableCapacity\\": 61440,\\n \\"TotalCapacity\\": 61440,\\n \\"DeliveryCapacity\\": 0,\\n \\"UsedCapacity\\": 1440,\\n \\"ClusterDeliveryCapacity\\": 0,\\n \\"ClusterAvailableCapacity\\": 61440,\\n \\"AvailableDeviceCapacity\\": 61440,\\n \\"TotalDeviceCapacity\\": 61440,\\n \\"UsedDeviceCapacity\\": 32000,\\n \\"AvailableSpaceCapacity\\": 40000.3,\\n \\"TotalSpaceCapacity\\": 73728,\\n \\"UsedSpaceCapacity\\": 33727.7\\n },\\n \\"AliUid\\": \\"12345601234560***\\",\\n \\"StorageDomain\\": \\"StorageDomain\\",\\n \\"EnableThinProvision\\": true,\\n \\"SizeOverSoldRatio\\": 1.2,\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"testKey\\",\\n \\"TagValue\\": \\"testValue\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-aekzsoux****\\"\\n }\\n ],\\n \\"NextToken\\": \\"AAAAAdDWBF2\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 20,\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n 11B55F58-D3A4-4A9B-9596-342420D0****\\n AAAAAdDWBF2\\n \\n dbsc-f8z4d3k4nsgg9okb****\\n myDBSCCluster\\n This is description.\\n cn-heyuan\\n cn-heyuan-b\\n Running\\n cloud_essd\\n Standard\\n PL0\\n cloud_essd\\n 2022-07-07 16:45:45\\n 2023-03-09 00:00:00\\n \\n 61440\\n 61440\\n \\n \\n","errorExample":""}]', 'title' => 'DescribeDedicatedBlockStorageClusters', 'summary' => 'Queries dedicated clusters.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'> The Dedicated Block Storage Cluster feature is available only in the China (Heyuan), Indonesia (Jakarta), and China (Shenzhen) regions.'."\n" ."\n" .'* You can specify multiple request parameters to be queried. Specified parameters are evaluated by using the AND operator. Only the specified parameters are included in the filter conditions.'."\n" .'* We recommend that you use NextToken and MaxResults to perform paged queries. We recommend that you use MaxResults to specify the maximum number of entries to return in each request. The return value of NextToken is a pagination token, which can be used in the next request to retrieve a new page of results. When you call the DescribeDedicatedBlockStorageClusters operation to retrieve a new page of results, set NextToken to the NextToken value that is returned in the previous call and specify MaxResults to limit the number of entries returned.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDedicatedBlockStorageClusters', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/*'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], ], ], 'DescribeDiagnoseReport' => [ 'summary' => 'Queries diagnostic reports.', 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '227402', 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ 'name' => 'DiagnoseType', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The type of diagnosis. Valid values:'."\n" ."\n" .'- Performance: performance diagnostics', 'type' => 'string', 'example' => 'Performance', 'required' => false], ], [ 'name' => 'ResourceIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The resource ID.', 'type' => 'array', 'items' => ['description' => 'The list of resource IDs.', 'type' => 'string', 'required' => false, 'example' => 'd-bp14d1obw9qijunh8div', 'title' => ''], 'required' => false, 'example' => 'd-asb1s8***', 'maxItems' => 100, ], ], [ 'name' => 'ReportIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The diagnostic report ID.', 'type' => 'array', 'items' => ['description' => 'The list of diagnostic reports.', 'type' => 'string', 'required' => false, 'example' => 'report-da21a****', 'title' => ''], 'required' => false, 'example' => 'report-asb1s8***', 'maxItems' => 100, ], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The start time of the resource diagnosis. 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' => '2024-08-26T01:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end time of the resource diagnosis. 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' => '2024-08-26T02:06:00Z', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The status of the diagnostic report. Valid values:'."\n" .'- Running'."\n" .'- Success'."\n" .'- TimeOut'."\n" .'- Fail', 'type' => 'string', 'required' => false, 'example' => 'Running', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~354276~~) to query the regions supported by EBS Lens.', 'type' => 'string', 'required' => false, 'example' => 'cn-zhangjiakou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'A string generated by the server that serves as a client request identifier.', 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries per page for a paged query. Valid values: 1 to 30.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '1000', 'minimum' => '1', 'default' => '10', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The pagination token that marks the position from which to start reading. An empty value indicates reading from the beginning.', 'type' => 'string', 'required' => false, 'example' => 'adf8a2534f1c0a23e0b5e8707e68181f', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'DescribeDiagnoseReportResponse', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'."\n", 'title' => ''], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], 'NextToken' => ['description' => 'The pagination token returned in this call.', 'type' => 'string', 'example' => 'f07b150eadfa1d7a', 'title' => ''], 'Reports' => [ 'description' => 'The list of diagnostic reports.', 'type' => 'array', 'items' => [ 'description' => 'The list of diagnostic reports.', 'type' => 'object', 'properties' => [ 'Status' => ['description' => 'The status of the diagnostic report. Valid values:'."\n" .'- Running'."\n" .'- Success'."\n" .'- TimeOut'."\n" .'- Fail'."\n" ."\n" .'The Severity and Events fields are valid only when Status is set to Success.', 'type' => 'string', 'example' => 'Success', 'title' => ''], 'ReportId' => ['description' => 'The diagnostic report ID.', 'type' => 'string', 'example' => 'report-sag8d****', 'title' => ''], 'ResourceType' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- Disk', 'type' => 'string', 'example' => 'Disk', 'title' => ''], 'Severity' => ['description' => 'The severity level of the diagnosis. The severity levels in ascending order are:'."\n" ."\n" .'- Info: Associated information that may be related to an anomaly.'."\n" .'- Warn: Associated information that may cause an anomaly.'."\n" .'- Critical: A critical anomaly exists.', 'type' => 'string', 'example' => 'Warn', 'title' => ''], 'FinishedTime' => ['description' => 'The time when the diagnostic report was completed, in Unix/POSIX timestamp (seconds).', 'type' => 'integer', 'format' => 'int64', 'example' => '1727239295', 'title' => ''], 'DiagnoseStartTime' => ['description' => 'The start timestamp of the resource diagnosis.', 'type' => 'integer', 'format' => 'int64', 'example' => '1727229294', 'title' => ''], 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'd-wz95ycu****', 'title' => ''], 'Events' => [ 'description' => 'The list of diagnosed issues.', 'type' => 'array', 'items' => [ 'description' => 'The list of diagnosed issues.', 'type' => 'object', 'properties' => [ 'RecommendParams' => ['description' => 'The parameters for the recommended action after the event occurs.', 'type' => 'string', 'example' => '4096', 'title' => ''], 'Description' => ['description' => 'The event description.', 'type' => 'string', 'example' => 'test', 'title' => ''], 'RecommendAction' => ['description' => 'The recommended action after the event occurs. Valid values:'."\n" ."\n" .'- ModifyDiskSpec: change cloud disk specifications'."\n" .'- CreateSnapshot: create a snapshot'."\n" .'- ResizeDisk: expand the cloud disk'."\n" .'- AdjustProvision: adjust provisioned performance'."\n" .'- ModifyInstanceSpec: change instance specifications', 'type' => 'string', 'example' => 'ResizeDisk', 'title' => ''], 'StartTime' => ['description' => 'The start timestamp of the event, in milliseconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1755756214000', 'title' => ''], 'Severity' => ['description' => 'The severity level of the diagnosed issue. The severity levels in ascending order are:'."\n" ."\n" .'- Info: Associated information that may be related to an anomaly.'."\n" .'- Warn: Associated information that may cause an anomaly.'."\n" .'- Critical: A critical anomaly exists.', 'type' => 'string', 'example' => 'Warn', 'title' => ''], 'EventName' => ['description' => 'The issue name. Valid values:'."\n" ."\n" .'- NoSnapshot: data protection'."\n" .'- BurstIOTriggered: I/O burst'."\n" .'- CostOptimizationNeeded: cost optimization'."\n" .'- DiskSpecNotMatchedWithInstance: instance and cloud disk specification mismatch'."\n" .'- DiskIONo4kAligned: non-4K-aligned read/write'."\n" .'- DiskIOHang: IOHang occurred on the cloud disk'."\n" .'- InstanceIOPSExceedInstanceMaxLimit: instance IOPS reached the upper limit'."\n" .'- InstanceBPSExceedInstanceMaxLimit: instance BPS reached the upper limit'."\n" .'- DiskIOPSExceedInstanceMaxLimit: cloud disk IOPS reached the instance upper limit'."\n" .'- DiskBPSExceedInstanceMaxLimit: cloud disk BPS reached the instance upper limit'."\n" .'- DiskIOPSExceedDiskMaxLimit: cloud disk IOPS reached the cloud disk upper limit'."\n" .'- DiskBPSExceedDiskMaxLimit: cloud disk BPS reached the cloud disk upper limit', 'type' => 'string', 'example' => 'DiskIOPSExceedDiskMaxLimit', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'DiagnoseEndTime' => ['description' => 'The end timestamp of the resource diagnosis.', 'type' => 'integer', 'format' => 'int64', 'example' => '1727239294', 'title' => ''], 'CreationTime' => ['description' => 'The time when the diagnostic report was created, in Unix/POSIX timestamp (seconds).', 'type' => 'integer', 'format' => 'int64', 'example' => '1727239294', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-zhangjiakou', 'title' => ''], 'DiagnoseType' => ['description' => 'The type of diagnosis.', 'type' => 'string', 'example' => 'Performance', 'title' => ''], 'AliUid' => ['description' => 'The user ID.', 'type' => 'integer', 'format' => 'int64', 'example' => '196380451****', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****\\\\n\\",\\n \\"TotalCount\\": 10,\\n \\"NextToken\\": \\"f07b150eadfa1d7a\\",\\n \\"Reports\\": [\\n {\\n \\"Status\\": \\"Success\\",\\n \\"ReportId\\": \\"report-sag8d****\\",\\n \\"ResourceType\\": \\"Disk\\",\\n \\"Severity\\": \\"Warn\\",\\n \\"FinishedTime\\": 1727239295,\\n \\"DiagnoseStartTime\\": 1727229294,\\n \\"ResourceId\\": \\"d-wz95ycu****\\",\\n \\"Events\\": [\\n {\\n \\"RecommendParams\\": \\"4096\\",\\n \\"Description\\": \\"test\\",\\n \\"RecommendAction\\": \\"ResizeDisk\\",\\n \\"StartTime\\": 1755756214000,\\n \\"Severity\\": \\"Warn\\",\\n \\"EventName\\": \\"DiskIOPSExceedDiskMaxLimit\\"\\n }\\n ],\\n \\"DiagnoseEndTime\\": 1727239294,\\n \\"CreationTime\\": 1727239294,\\n \\"RegionId\\": \\"cn-zhangjiakou\\",\\n \\"DiagnoseType\\": \\"Performance\\",\\n \\"AliUid\\": 0\\n }\\n ]\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query resource diagnostic reports', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeDiagnoseReport', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeDiskMonitorData' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '138275', 'abilityTreeNodes' => ['FEATUREdiskLP80G7'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the disk.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DiskId', 'in' => 'query', 'schema' => ['description' => 'The ID of the disk.'."\n", 'type' => 'string', 'required' => true, 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range during which you want to query the near real-time monitoring data of the disk. Specify the time in the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC.'."\n", 'type' => 'string', 'required' => true, 'example' => '2022-06-01T03:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range during which you want to query the near real-time monitoring data of the disk. Specify the time in the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time must be in UTC.'."\n", 'type' => 'string', 'required' => true, 'example' => '2022-06-01T05:00:00Z', 'title' => ''], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => ['description' => 'The interval at which the near real-time monitoring data is collected. Unit: seconds. Valid values:'."\n" ."\n" .'* 5'."\n" .'* 60'."\n" ."\n" .'Default value: 5.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '5', 'title' => ''], ], [ 'name' => 'Type', 'in' => 'query', 'schema' => ['description' => 'The type of the monitoring data. Valid values:'."\n" ."\n" .'* basic: baseline performance data.'."\n" .'* pro: burst performance data, such as burst I/O operations.'."\n", 'type' => 'string', 'required' => false, 'example' => 'basic', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'TotalCount' => ['description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '15', 'title' => ''], 'MonitorData' => [ 'description' => 'The near real-time monitoring data of the disk.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The near real-time monitoring data of the disk.'."\n", 'type' => 'object', 'properties' => [ 'ReadBPS' => ['description' => 'The read bandwidth of the disk. Unit: MByte/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '10', 'title' => ''], 'WriteBPS' => ['description' => 'The write bandwidth of the disk. Unit: MByte/s.', 'type' => 'integer', 'format' => 'int64', 'example' => '204', 'title' => ''], 'DiskId' => ['description' => 'The ID of the disk.'."\n", 'type' => 'string', 'example' => 'd-bp1bq5g3dxxo1x4o****', 'title' => ''], 'ReadIOPS' => ['description' => 'The maximum number of read IOPS.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '2000', 'title' => ''], 'WriteIOPS' => ['description' => 'The maximum number of write IOPS.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '2000', 'title' => ''], 'IOPSPercent' => ['description' => 'The percentage of IOPS.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '80(%)', 'title' => ''], 'BPSPercent' => ['description' => 'The percentage of BPS.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '80(%)', 'title' => ''], 'Timestamp' => ['description' => 'The timestamp that is used to query the near real-time monitoring data of the disk. The time follows the [ISO 8601](~~25696~~) standard in the `yyyy-MM-ddTHH:mm:ssZ` format. The time is displayed in UTC.'."\n", 'type' => 'string', 'example' => '2022-06-01T08:00:00Z', 'title' => ''], 'BurstIOCount' => ['description' => 'The number of burst I/O operations.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '0', 'title' => ''], 'ReadBlockSize' => ['description' => 'Read IO block size. Unit: Bytes', 'type' => 'integer', 'format' => 'int64', 'example' => '4096', 'title' => ''], 'WriteBlockSize' => ['description' => 'Write IO block size. Unit: Bytes', 'type' => 'integer', 'format' => 'int64', 'example' => '4096', 'title' => ''], 'ReadLatency' => ['description' => 'Read IO latency. Unit: microsecond', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], 'WriteLatency' => ['description' => 'Write IO latency. Unit: microsecond', 'type' => 'integer', 'format' => 'int64', 'example' => '100', 'title' => ''], ], 'title' => '', ], 'title' => '', ], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TotalCount\\": 15,\\n \\"MonitorData\\": [\\n {\\n \\"ReadBPS\\": 10,\\n \\"WriteBPS\\": 204,\\n \\"DiskId\\": \\"d-bp1bq5g3dxxo1x4o****\\",\\n \\"ReadIOPS\\": 2000,\\n \\"WriteIOPS\\": 2000,\\n \\"IOPSPercent\\": 0,\\n \\"BPSPercent\\": 0,\\n \\"Timestamp\\": \\"2022-06-01T08:00:00Z\\",\\n \\"BurstIOCount\\": 0,\\n \\"ReadBlockSize\\": 4096,\\n \\"WriteBlockSize\\": 4096,\\n \\"ReadLatency\\": 100,\\n \\"WriteLatency\\": 100\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\n 15\\n \\n 10\\n 204\\n d-bp1bq5g3dxxo1x4o****\\n 2000\\n 2000\\n 2022-06-01T08:00:00Z\\n 0\\n \\n","errorExample":""}]', 'title' => 'DescribeDiskMonitorData', 'summary' => 'Queries fine-grained monitoring data of a disk.', 'description' => '## Usage notes'."\n" ."\n" .'* CloudLens for EBS is in invitational preview in the China (Hangzhou), China (Shanghai), China (Zhangjiakou), China (Shenzhen), and China (Hong Kong) regions. To use the feature, [submit a ticket](https://workorder-intl.console.aliyun.com/#/ticket/createIndex).'."\n" .'* Up to 400 monitoring data entries can be returned at a time. An error is returned if the value calculated based on the following formula is greater than 400: `(EndTime - StartTime)/Period`.'."\n" .'* You can query the monitoring data collected in the last three days. An error is returned if the time specified by `StartTime` is more than three days prior to the current time.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDiskMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeDiskReplicaGroups' => [ 'summary' => 'Queries information about one or more replication pair-consistent groups in a specified region.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '115793', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair-consistent group.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return on a single page. You can use this parameter with NextToken.'."\n" ."\n" .'Valid values: 1 to 500.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set this parameter to the NextToken value returned from the previous call to this operation. You do not need to set this parameter for the first call. If you set NextToken, the PageSize and PageNumber parameters are ignored, and the TotalCount in the response is invalid.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ 'name' => 'GroupIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of the replication pair-consistent groups. You can specify one or more group IDs. Separate multiple IDs with a comma (,).'."\n" ."\n" .'If you do not specify this parameter, all replication pair-consistent groups in the current region are queried. You can specify up to 100 group IDs.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'Site', 'in' => 'query', 'schema' => ['description' => 'The site to query. This parameter is used when replication pairs are deployed across zones.'."\n" ."\n" .'- If you do not specify this parameter, the records and status information of replication pairs at the production site are returned.'."\n" ."\n" .'- If you specify this parameter, only the records and status information of replication pairs at the specified site are returned. Valid values:'."\n" ."\n" .' - production: The production site.'."\n" ."\n" .' - backup: The disaster recovery site.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'production'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'required' => false, 'example' => '5'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" .'Valid values: 1 to 100.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'required' => false, 'example' => '10'], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the replication pair-consistent group belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-aekz*****', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the replication group. Fuzzy search is supported.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'pg-name***'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The tags. The list can contain up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'The information about the tag.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the tag of the replication pair-consistent group.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'tag-value'], 'Key' => ['description' => 'The key of the tag of the replication pair-consistent group.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'tag-key'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'], 'NextToken' => ['description' => 'The query token returned in this call.', 'type' => 'string', 'title' => '', 'example' => 'AAAAAdDWBF2****'], 'ReplicaGroups' => [ 'description' => 'The information about the replication pair-consistent groups.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'GroupName' => ['description' => 'The name of the replication pair-consistent group.', 'type' => 'string', 'example' => 'myreplicagrouptest', 'title' => ''], 'Site' => ['description' => 'The site of the replication pair and the replication pair-consistent group. Valid values:'."\n" ."\n" .'- production: The production site.'."\n" ."\n" .'- backup: The disaster recovery site.', 'type' => 'string', 'title' => '', 'example' => 'production'], 'Description' => ['description' => 'The description of the replication pair-consistent group.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'StandbyZone' => ['description' => 'The initial destination zone of the replication group.', 'type' => 'string', 'title' => '', 'example' => 'cn-shanghai-e'], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the replication group belongs.', 'type' => 'string', 'title' => '', 'example' => 'rg-aek2a*******'], 'LastRecoverPoint' => ['description' => 'The time when the last asynchronous replication was completed for the replication pair-consistent group. This parameter is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1637835114', 'title' => ''], 'ReplicaGroupId' => ['description' => 'The ID of the replication pair-consistent group.', 'type' => 'string', 'example' => 'pg-myreplica****', 'title' => ''], 'RPO' => ['description' => 'The recovery point objective (RPO) of the replication pair-consistent group. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '180', 'title' => ''], 'SourceRegionId' => ['description' => 'The region ID of the production site.', 'type' => 'string', 'example' => 'cn-beijing', 'title' => ''], 'DestinationRegionId' => ['description' => 'The region ID of the disaster recovery site.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], 'Bandwidth' => ['description' => 'The bandwidth. Unit: Kbit/s. This parameter is not yet available. The return value is preset by the system.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '0'], 'PrimaryZone' => ['description' => 'The initial source zone of the replication group.', 'type' => 'string', 'title' => '', 'example' => 'cn-beijing-h'], 'SourceZoneId' => ['description' => 'The zone ID of the production site.', 'type' => 'string', 'example' => 'cn-beijing-f', 'title' => ''], 'Tags' => [ 'title' => '', 'description' => 'The tags of the replication group.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The key of the tag of the replication group.', 'type' => 'string', 'example' => 'testKey', 'title' => ''], 'TagValue' => ['description' => 'The value of the tag of the replication group.', 'type' => 'string', 'example' => 'testValue', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'Status' => ['description' => 'The status of the replication pair-consistent group. Valid values:'."\n" ."\n" .'- invalid: The replication pair-consistent group is invalid. This status indicates that a replication pair in the group is abnormal.'."\n" ."\n" .'- creating: The replication pair-consistent group is being created.'."\n" ."\n" .'- created: The replication pair-consistent group is created.'."\n" ."\n" .'- create\\_failed: The replication pair-consistent group failed to be created.'."\n" ."\n" .'- manual\\_syncing: The replication pair-consistent group is performing a one-time synchronization. The group is also in this state during the first one-time synchronization.'."\n" ."\n" .'- syncing: The replication pair-consistent group is synchronizing data. The group is in this state when data is asynchronously replicated from the primary disk to the secondary disk for a subsequent time.'."\n" ."\n" .'- normal: Normal. When data replication is complete in the current asynchronous replication cycle, the group is in this state.'."\n" ."\n" .'- stopping: The replication pair-consistent group is being stopped.'."\n" ."\n" .'- stopped: The replication pair-consistent group is stopped.'."\n" ."\n" .'- stop\\_failed: The replication pair-consistent group failed to be stopped.'."\n" ."\n" .'- failovering: A failover is being performed.'."\n" ."\n" .'- failovered: The failover is complete.'."\n" ."\n" .'- failover\\_failed: The failover failed.'."\n" ."\n" .'- reprotecting: A reverse replication is being performed.'."\n" ."\n" .'- reprotect\\_failed: The reverse replication failed.'."\n" ."\n" .'- deleting: The replication pair-consistent group is being deleted.'."\n" ."\n" .'- delete\\_failed: The replication pair-consistent group failed to be deleted.'."\n" ."\n" .'- deleted: The replication pair-consistent group is deleted.', 'type' => 'string', 'example' => 'created', 'title' => ''], 'PairNumber' => ['description' => 'The number of replication pairs in the replication pair-consistent group.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '2'], 'PrimaryRegion' => ['description' => 'The initial source region of the replication group.', 'type' => 'string', 'title' => '', 'example' => 'cn-beijing'], 'PairIds' => [ 'description' => 'The list of replication pair IDs in the replication pair-consistent group.', 'type' => 'array', 'items' => ['description' => 'The IDs of the replication pairs in the replication pair-consistent group.', 'type' => 'string', 'format' => 'byte', 'example' => 'pair-cn-dsa****,pair-cn-asd****', 'title' => ''], 'title' => '', 'example' => '', ], 'EnableRtc' => ['description' => 'Specifies whether to enable replication time control (RTC). Valid values:'."\n" ."\n" .'- false: Disables RTC.'."\n" ."\n" .'- true: Enables RTC.'."\n" ."\n" .'> If you set this parameter to true, RTC is enabled for the replication pair-consistent group and all asynchronous replication pairs that are added to the group.', 'type' => 'boolean', 'title' => '', 'example' => 'true'], 'DestinationZoneId' => ['description' => 'The zone ID of the disaster recovery site.', 'type' => 'string', 'example' => 'cn-shanghai-e', 'title' => ''], 'StandbyRegion' => ['description' => 'The initial destination region of the replication group.', 'type' => 'string', 'title' => '', 'example' => 'cn-shanghai'."\n"], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1'], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10'], 'TotalCount' => ['description' => 'The total number of entries returned.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '60'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****\\",\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"ReplicaGroups\\": [\\n {\\n \\"GroupName\\": \\"myreplicagrouptest\\",\\n \\"Site\\": \\"production\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"StandbyZone\\": \\"cn-shanghai-e\\",\\n \\"ResourceGroupId\\": \\"rg-aek2a*******\\",\\n \\"LastRecoverPoint\\": 1637835114,\\n \\"ReplicaGroupId\\": \\"pg-myreplica****\\",\\n \\"RPO\\": 180,\\n \\"SourceRegionId\\": \\"cn-beijing\\",\\n \\"DestinationRegionId\\": \\"cn-shanghai\\",\\n \\"Bandwidth\\": 0,\\n \\"PrimaryZone\\": \\"cn-beijing-h\\",\\n \\"SourceZoneId\\": \\"cn-beijing-f\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"testKey\\",\\n \\"TagValue\\": \\"testValue\\"\\n }\\n ],\\n \\"Status\\": \\"created\\",\\n \\"PairNumber\\": 2,\\n \\"PrimaryRegion\\": \\"cn-beijing\\",\\n \\"PairIds\\": [\\n \\"pair-cn-dsa****,pair-cn-asd****\\"\\n ],\\n \\"EnableRtc\\": true,\\n \\"DestinationZoneId\\": \\"cn-shanghai-e\\",\\n \\"StandbyRegion\\": \\"cn-shanghai\\\\n\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 60\\n}","type":"json"}]', 'title' => 'DescribeDiskReplicaGroups', 'description' => '## Description'."\n" ."\n" .'To perform a paged query, you can use the MaxResults and NextToken parameters.'."\n" ."\n" .'When you query the first page, set `MaxResults` to specify the number of entries to return. The `NextToken` value in the response is the token used to query subsequent pages. To query a subsequent page, set `NextToken` to the value from the previous response and set MaxResults to specify the number of entries for the current page.', 'changeSet' => [ ['createdAt' => '2025-07-07T11:22:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-08-14T06:34:59.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-07-19T12:22:55.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => 'Request parameters changed, Response parameters changed, Response parameters changed'], ['createdAt' => '2022-10-28T08:41:19.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2022-08-16T11:40:00.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2022-06-06T02:07:57.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskReplicaGroups'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeDiskReplicaGroups', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/*'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'DescribeDiskReplicaPairProgress' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '118925', 'abilityTreeNodes' => ['FEATUREdiskAQUAFH', 'FEATUREdiskVW208V'], ], 'parameters' => [ [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~)operation to query the IDs of existing replication pairs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-tl32ribst0z', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribeReplicaPairProgressResponse', 'description' => 'DescribeReplicaPairProgressResponse'."\n", 'type' => 'object', 'properties' => [ 'Progress' => ['title' => '', 'description' => 'The replication progress of the replication pair.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '100'], 'RecoverPoint' => ['title' => '', 'description' => 'The timestamp that indicates the last recovery point in time. The value is returned only after the replication pair works for replicating data.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1661917424'], 'RequestId' => ['description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'."\n", 'title' => ''], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Progress\\": 100,\\n \\"RecoverPoint\\": 1661917424,\\n \\"RequestId\\": \\"AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****\\\\n\\"\\n}","type":"json"}]', 'title' => 'DescribeDiskReplicaPairProgress', 'summary' => 'Queries the replication progress of a replication pair.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDiskReplicaPairProgress', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'DescribeDiskReplicaPairs' => [ 'summary' => 'Queries information about one or more replication pairs in a specified region.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '42727', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region where the primary or secondary disk of the replication pair resides. Call the [DescribeRegions](~~354276~~) operation to query the regions that support asynchronous replication.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return on each page. Use this parameter with NextToken.'."\n" ."\n" .'Valid values: 1 to 500.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => '1'], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set this parameter to the NextToken value returned from the previous call to this operation. You do not need to set this parameter for the first call. If you set NextToken, the PageSize and PageNumber parameters are ignored, and the TotalCount value in the response is invalid.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ 'name' => 'PairIds', 'in' => 'query', 'schema' => ['description' => 'The IDs of replication pairs. Specify one or more replication pair IDs. The IDs must be in the `pair-cn-dsa****,pair-cn-asd****` format.'."\n" ."\n" .'If you leave this parameter empty, all replication pairs in the current region are queried. You can specify up to 100 replication pair IDs.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'pair-cn-dsa****'], ], [ 'name' => 'Site', 'in' => 'query', 'schema' => ['description' => 'The site from which to query data. Query data from the production site or the disaster recovery site. Valid values:'."\n" ."\n" .'- production: the production site.'."\n" ."\n" .'- backup: the disaster recovery site.'."\n" ."\n" .'Default value: production.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'production'], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group. Specify the ID of a replication pair-consistent group to query the replication pairs in the group. The ID must be in the `pg-****` format.'."\n" ."\n" .'If you leave this parameter empty, all replication pairs in the current region are queried.'."\n" ."\n" .'> If you set this parameter to `-`, replication pairs that are not in any replication pair-consistent group are returned.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'pg-****'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'required' => false, 'example' => '5'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page.'."\n" .'Valid values: 1 to 100.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'required' => false, 'example' => '10'], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the resource group to which the replication pair belongs.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs******', 'title' => ''], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['description' => 'The name of the replication pair. Fuzzy matching is supported.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'name***'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The tags. You can specify up to 20 tags.', 'type' => 'array', 'items' => [ 'description' => 'The tag.', 'type' => 'object', 'properties' => [ 'Value' => ['description' => 'The value of the tag.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'TestValue'], 'Key' => ['description' => 'The key of the tag.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'TestKey'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 21, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The response schema.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****'], 'NextToken' => ['description' => 'The query token returned from this call.', 'type' => 'string', 'title' => '', 'example' => 'AAAAAdDWBF2****'], 'ReplicaPairs' => [ 'description' => 'The replication pairs.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Site' => ['description' => 'The site type of the replication pair or replication pair-consistent group. Valid values:'."\n" ."\n" .'- production: the production site.'."\n" ."\n" .'- backup: the disaster recovery site.', 'type' => 'string', 'title' => '', 'example' => 'production'], 'DestinationDiskId' => ['description' => 'The ID of the secondary disk.', 'type' => 'string', 'example' => 'd-asdfjl2342kj2l3k4****', 'title' => ''], 'Description' => ['description' => 'The description of the replication pair.', 'type' => 'string', 'example' => 'This is description.', 'title' => ''], 'StandbyZone' => ['description' => 'The initial destination zone of the replication pair.', 'type' => 'string', 'title' => '', 'example' => 'cn-shanghai-b'], 'ResourceGroupId' => ['description' => 'The ID of the resource group to which the replication pair belongs.', 'type' => 'string', 'title' => '', 'example' => 'rg-acfmvs*****'], 'DestinationRegion' => ['description' => 'The region of the secondary disk.', 'type' => 'string', 'example' => 'cn-shanghai', 'title' => ''], 'ReplicaPairId' => ['description' => 'The ID of the replication pair.', 'type' => 'string', 'example' => 'pair-cn-dsa****', 'title' => ''], 'LastRecoverPoint' => ['description' => 'The time when the last asynchronous replication was completed. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1649751977'], 'ReplicaGroupId' => ['description' => 'The ID of the replication pair-consistent group to which the replication pair belongs.', 'type' => 'string', 'title' => '', 'example' => 'pg-xxxx****'], 'SourceDiskId' => ['description' => 'The ID of the primary disk.', 'type' => 'string', 'example' => 'd-bp131n0q38u3a4zi****', 'title' => ''], 'RPO' => ['description' => 'The recovery point objective (RPO) of the replication pair. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '900'], 'PairName' => ['description' => 'The name of the replication pair.', 'type' => 'string', 'example' => 'TestReplicaPair', 'title' => ''], 'Bandwidth' => ['description' => 'The bandwidth used for asynchronous replication. Unit: Kbit/s.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '10240'], 'ExpiredTime' => ['description' => 'The expiration time of the replication pair. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'example' => '1649750977', 'title' => ''], 'PrimaryZone' => ['description' => 'The initial source zone of the replication pair.', 'type' => 'string', 'title' => '', 'example' => 'cn-beijing-a'], 'SourceZoneId' => ['description' => 'The zone of the primary disk.', 'type' => 'string', 'title' => '', 'example' => 'cn-beijing-a'], 'Tags' => [ 'title' => '', 'description' => 'The tags of the replication pair.', 'type' => 'array', 'items' => [ 'description' => 'The tag.', 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The key of the tag.', 'type' => 'string', 'example' => 'testKey', 'title' => ''], 'TagValue' => ['description' => 'The value of the tag.', 'type' => 'string', 'example' => 'testValue', 'title' => ''], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'Status' => ['description' => 'The status of the replication pair. Valid values:'."\n" ."\n" .'- invalid: The replication pair is invalid. This status indicates that the replication pair is not working correctly.'."\n" ."\n" .'- creating: The replication pair is being created.'."\n" ."\n" .'- created: The replication pair is created.'."\n" ."\n" .'- create\\_failed: The replication pair failed to be created.'."\n" ."\n" .'- initial\\_syncing: The replication pair is in the initial synchronization state. After a replication pair is created and started, it enters this state during the first asynchronous replication of data from the primary disk to the secondary disk.'."\n" ."\n" .'- manual\\_syncing: The replication pair is being manually synchronized. After the manual synchronization is complete, the replication pair returns to the stopped state. If it is the first one-time synchronization, the status is also manual\\_syncing.'."\n" ."\n" .'- syncing: The replication pair is synchronizing data. The replication pair is in this state when data is asynchronously replicated from the primary disk to the secondary disk for a second or subsequent time.'."\n" ."\n" .'- normal: The replication pair is in the normal state. The replication pair enters this state when data replication is complete in the current replication cycle.'."\n" ."\n" .'- stopping: The replication pair is being stopped.'."\n" ."\n" .'- stopped: The replication pair is stopped.'."\n" ."\n" .'- stop\\_failed: The replication pair failed to be stopped.'."\n" ."\n" .'- failovering: A failover is in progress.'."\n" ."\n" .'- failovered: The failover is complete.'."\n" ."\n" .'- failover\\_failed: The failover failed.'."\n" ."\n" .'- reprotecting: A reverse replication is in progress.'."\n" ."\n" .'- reprotect\\_failed: The reverse replication failed.'."\n" ."\n" .'- deleting: The replication pair is being deleted.'."\n" ."\n" .'- delete\\_failed: The replication pair failed to be deleted.'."\n" ."\n" .'- deleted: The replication pair is deleted.', 'type' => 'string', 'title' => '', 'example' => 'created'], 'PrimaryRegion' => ['description' => 'The initial source region of the replication pair.', 'type' => 'string', 'title' => '', 'example' => 'cn-beijing'], 'CreateTime' => ['description' => 'The creation time. This value is a UNIX timestamp. Unit: seconds.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '1649750977'], 'SourceRegion' => ['description' => 'The region of the primary disk.', 'type' => 'string', 'example' => 'cn-beijing', 'title' => ''], 'StatusMessage' => ['description' => 'The status message of the replication pair. This parameter is returned when the Status is `invalid` or `create_failed`. Valid values:'."\n" ."\n" .'- PrePayOrderExpired: The subscription replication pair has expired.'."\n" ."\n" .'- PostPayOrderCeaseService: The service for the pay-as-you-go replication pair is suspended, usually due to an overdue payment.'."\n" ."\n" .'- DeviceRemoved: The primary or secondary disk is deleted.'."\n" ."\n" .'- DeviceKeyChanged: The `DeviceKey` mapping of the primary or secondary disk has changed.'."\n" ."\n" .'- DeviceSizeChanged: The `DeviceSize` of the primary or secondary disk has changed.'."\n" ."\n" .'- OperationDenied.QuotaExceed: The number of created replication pairs exceeds the quota.', 'type' => 'string', 'title' => '', 'example' => 'PrePayOrderExpired'], 'EnableRtc' => ['description' => 'Specifies whether real-time control (RTC) is enabled. Valid values:'."\n" ."\n" .'- false: Disabled.'."\n" ."\n" .'- true: Enabled.'."\n" ."\n" .'> If the replication pair is in a replication pair-consistent group, the value of this parameter is the same as that of the group.', 'type' => 'boolean', 'title' => '', 'example' => ''], 'ChargeType' => ['description' => 'The billing method of the replication pair.'."\n" .'Valid values:'."\n" ."\n" .'- PREPAY: subscription.'."\n" ."\n" .'- POSTPAY: pay-as-you-go.', 'type' => 'string', 'title' => '', 'example' => 'PREPAY'], 'DestinationZoneId' => ['description' => 'The zone of the secondary disk.', 'type' => 'string', 'title' => '', 'example' => 'cn-shanghai-b'], 'ReplicaGroupName' => ['description' => 'The name of the replication pair-consistent group to which the replication pair belongs.', 'type' => 'string', 'title' => '', 'example' => 'pg-name****'], 'StandbyRegion' => ['description' => 'The initial destination region of the replication pair.', 'type' => 'string', 'title' => '', 'example' => 'cn-shanghai'], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'PageNumber' => ['description' => 'The page number.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '1'], 'PageSize' => ['description' => 'The number of entries per page.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'example' => '10'], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '60'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAA478A0-BEE6-1D42-BEB6-A9CFEAD6****\\",\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"ReplicaPairs\\": [\\n {\\n \\"Site\\": \\"production\\",\\n \\"DestinationDiskId\\": \\"d-asdfjl2342kj2l3k4****\\",\\n \\"Description\\": \\"This is description.\\",\\n \\"StandbyZone\\": \\"cn-shanghai-b\\",\\n \\"ResourceGroupId\\": \\"rg-acfmvs*****\\",\\n \\"DestinationRegion\\": \\"cn-shanghai\\",\\n \\"ReplicaPairId\\": \\"pair-cn-dsa****\\",\\n \\"LastRecoverPoint\\": 1649751977,\\n \\"ReplicaGroupId\\": \\"pg-xxxx****\\",\\n \\"SourceDiskId\\": \\"d-bp131n0q38u3a4zi****\\",\\n \\"RPO\\": 900,\\n \\"PairName\\": \\"TestReplicaPair\\",\\n \\"Bandwidth\\": 10240,\\n \\"ExpiredTime\\": 1649750977,\\n \\"PrimaryZone\\": \\"cn-beijing-a\\",\\n \\"SourceZoneId\\": \\"cn-beijing-a\\",\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"testKey\\",\\n \\"TagValue\\": \\"testValue\\"\\n }\\n ],\\n \\"Status\\": \\"created\\",\\n \\"PrimaryRegion\\": \\"cn-beijing\\",\\n \\"CreateTime\\": 1649750977,\\n \\"SourceRegion\\": \\"cn-beijing\\",\\n \\"StatusMessage\\": \\"PrePayOrderExpired\\",\\n \\"EnableRtc\\": false,\\n \\"ChargeType\\": \\"PREPAY\\",\\n \\"DestinationZoneId\\": \\"cn-shanghai-b\\",\\n \\"ReplicaGroupName\\": \\"pg-name****\\",\\n \\"StandbyRegion\\": \\"cn-shanghai\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 60\\n}","type":"json"}]', 'title' => 'DescribeDiskReplicaPairs', 'description' => '## Description'."\n" ."\n" .'- For information about the regions that support asynchronous replication, see [Overview of asynchronous replication for disks](~~314563~~).'."\n" ."\n" .'- If the primary or secondary disk of an asynchronous replication pair is in the specified region, the query returns information about that replication pair.'."\n" ."\n" .'- To perform a paged query, use the MaxResults and NextToken parameters. For the first page, set MaxResults to limit the number of entries returned. The `NextToken` value in the response is the token for the next page. For subsequent pages, set `NextToken` to the value from the previous response and set `MaxResults` to limit the number of entries.', 'changeSet' => [ ['createdAt' => '2025-07-07T11:22:39.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-08-14T06:34:59.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2024-06-17T08:54:58.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2023-01-03T02:17:05.000Z', 'description' => 'Request parameters changed, Response parameters changed, Response parameters changed'], ['createdAt' => '2022-12-13T03:44:44.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2022-07-18T03:50:13.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2021-11-03T14:00:38.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2021-11-03T14:00:38.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskReplicaPairs'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDiskReplicaPairs', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/*'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'DescribeEnterpriseSnapshotPolicy' => [ 'summary' => 'Queries enterprise-level snapshot policies by specifying parameters such as PolicyIds, ResourceGroupId, and Tag.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '159098', 'abilityTreeNodes' => ['FEATUREdiskHAF1DK'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'PolicyIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The list of snapshot policy IDs.', 'type' => 'array', 'items' => ['description' => 'The policy ID.', 'type' => 'string', 'required' => false, 'example' => 'esp-xxx', 'title' => ''], 'required' => false, 'maxItems' => 10, 'example' => '', ], ], [ 'name' => 'DiskIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The list of cloud disk IDs.', 'type' => 'array', 'items' => ['description' => 'The cloud disk ID.', 'type' => 'string', 'required' => false, 'example' => '"d-bp67acfmxazb4p****"', 'title' => ''], 'required' => false, 'maxItems' => 10, 'example' => '', ], ], [ 'name' => 'ResourceGroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The resource group ID.', 'type' => 'string', 'required' => false, 'example' => 'rg-acfmvs****'], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The pagination token (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. If NextToken is specified, the PageSize and PageNumber request parameters do not take effect, and the TotalCount value in the response is invalid.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The maximum number of entries to return in this call. You can use this parameter together with NextToken.'."\n" ."\n" .'Valid values: 1 to 500.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page in a paging query. Valid values: 1 to 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number in a paging query.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Ensures the idempotence of the request. The value is generated from your client and must be 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' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The tag key-value pairs. Valid values of N: 1 to 20.', 'type' => 'array', 'items' => [ 'description' => 'The tag.', 'type' => 'object', 'properties' => [ 'Key' => ['title' => '', 'description' => 'The tag key of the resource.', 'type' => 'string', 'required' => true, 'example' => 'tag-key'], 'Value' => ['title' => '', 'description' => 'The tag value of the resource.', 'type' => 'string', 'required' => true, 'example' => 'tag-value'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 10, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'Policies' => [ 'title' => '', 'description' => 'The list of policies.', 'type' => 'array', 'items' => [ 'description' => 'The policy details.', 'type' => 'object', 'properties' => [ 'Name' => ['title' => '', 'description' => 'The snapshot policy name.', 'type' => 'string', 'example' => 'xxx'], 'PolicyId' => ['title' => '', 'description' => 'The snapshot policy ID.', 'type' => 'string', 'example' => 'esp-xxx'], 'TargetType' => ['title' => '', 'description' => 'The type. Valid values:'."\n" ."\n" .'- DISK', 'type' => 'string', 'example' => 'DISK'], 'State' => ['title' => '', 'description' => 'The status. Valid values:'."\n" ."\n" .'- DISABLED'."\n" .'- ENABLED', 'type' => 'string', 'example' => 'DISABLED'], 'ManagedForEcs' => ['title' => '', 'description' => 'The snapshot managed status.', 'type' => 'boolean', 'example' => 'false'], 'Desc' => ['title' => '', 'description' => 'The snapshot policy description.', 'type' => 'string', 'example' => 'xxx'], 'Schedule' => [ 'title' => '', 'description' => 'The snapshot policy schedule rule.', 'type' => 'object', 'properties' => [ 'CronExpression' => ['title' => '', 'description' => 'The cron expression.', 'type' => 'string', 'example' => '1 1 1 */1 * ?'], ], 'example' => '', ], 'RetainRule' => [ 'title' => '', 'description' => 'The snapshot policy retention rule.', 'type' => 'object', 'properties' => [ 'Number' => ['title' => '', 'description' => 'The retention count.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'TimeInterval' => ['title' => '', 'description' => 'The time interval of the retention rule. The unit is specified by the TimeUnit parameter. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '14'], 'TimeUnit' => ['title' => '', 'description' => 'The retention time unit.', 'type' => 'string', 'example' => 'DAYS'], ], 'example' => '', ], 'StorageRule' => [ 'title' => '', 'description' => 'The snapshot policy storage rule.', 'type' => 'object', 'properties' => [ 'EnableImmediateAccess' => ['title' => '', 'description' => 'Indicates whether instant access is enabled for snapshots.', 'type' => 'boolean', 'example' => 'false'], ], 'example' => '', ], 'CrossRegionCopyInfo' => [ 'title' => '', 'description' => 'The snapshot cross-region copy information.', 'type' => 'object', 'properties' => [ 'Enabled' => ['title' => '', 'description' => 'Indicates whether cross-region copy is enabled.', 'type' => 'boolean', 'example' => 'true'], 'Regions' => [ 'title' => '', 'description' => 'The destination region information.', 'type' => 'array', 'items' => [ 'description' => 'The copy destination region information.', 'type' => 'object', 'properties' => [ 'RegionId' => ['title' => '', 'description' => 'The snapshot copy destination region.', 'type' => 'string', 'example' => 'cn-hangzhou'], 'RetainDays' => ['title' => '', 'description' => 'The number of days to retain snapshots at the destination region.', 'type' => 'integer', 'format' => 'int32', 'example' => '7'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'CreateTime' => ['title' => '', 'description' => 'The creation time in UTC ISO 8601 format.', 'type' => 'string', 'example' => '2023-06-24T06:03:35Z'], 'TargetCount' => ['title' => '', 'description' => 'The number of bound targets.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'Tags' => [ 'title' => '', 'description' => 'the pair tags', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['title' => '', 'description' => 'The tag key of the resource.', 'type' => 'string', 'example' => 'key'], 'TagValue' => ['title' => '', 'description' => 'The tag value of the resource.', 'type' => 'string', 'example' => 'value'], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'ResourceGroupId' => ['title' => '', 'description' => 'the resource group', 'type' => 'string', 'example' => 'rg-xxx'], 'SpecialRetainRules' => [ 'title' => '', 'description' => 'The special retention rules for the snapshot policy.', 'type' => 'object', 'properties' => [ 'Enabled' => ['title' => '', 'description' => 'Indicates whether special retention is enabled.', 'type' => 'boolean', 'example' => 'true'], 'Rules' => [ 'title' => '', 'description' => 'The special retention rules.', 'type' => 'array', 'items' => [ 'description' => 'The special retention rules.', 'type' => 'object', 'properties' => [ 'SpecialPeriodUnit' => ['title' => '', 'description' => 'The special period unit.', 'type' => 'string', 'example' => 'WEEKS'], 'TimeInterval' => ['title' => '', 'description' => 'The time interval of the retention rule. The unit is specified by the TimeUnit parameter. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'TimeUnit' => ['title' => '', 'description' => 'The retention time unit.', 'type' => 'string', 'example' => 'WEEKS'], ], 'title' => '', 'example' => '', ], 'example' => '', ], ], 'example' => '', ], 'DiskIds' => [ 'title' => '', 'description' => 'The list of bound cloud disk IDs.', 'type' => 'array', 'items' => ['description' => 'The cloud disk ID.', 'type' => 'string', 'example' => '"d-bp67acfmxazb4p****"'."\n", 'title' => ''], 'example' => '', ], ], 'title' => '', 'example' => '', ], 'example' => '', ], 'PageNumber' => ['title' => '', 'description' => 'The page number for paged queries.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page for paged queries.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '10'], 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => '549BB71F-6778-53CE-AA73-E94ACE802AB4'], 'NextToken' => ['title' => '', 'description' => 'The pagination token (Token) returned for the next query.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Policies\\": [\\n {\\n \\"Name\\": \\"xxx\\",\\n \\"PolicyId\\": \\"esp-xxx\\",\\n \\"TargetType\\": \\"DISK\\",\\n \\"State\\": \\"DISABLED\\",\\n \\"ManagedForEcs\\": false,\\n \\"Desc\\": \\"xxx\\",\\n \\"Schedule\\": {\\n \\"CronExpression\\": \\"1 1 1 */1 * ?\\"\\n },\\n \\"RetainRule\\": {\\n \\"Number\\": 10,\\n \\"TimeInterval\\": 14,\\n \\"TimeUnit\\": \\"DAYS\\"\\n },\\n \\"StorageRule\\": {\\n \\"EnableImmediateAccess\\": false\\n },\\n \\"CrossRegionCopyInfo\\": {\\n \\"Enabled\\": true,\\n \\"Regions\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"RetainDays\\": 7\\n }\\n ]\\n },\\n \\"CreateTime\\": \\"2023-06-24T06:03:35Z\\",\\n \\"TargetCount\\": 10,\\n \\"Tags\\": [\\n {\\n \\"TagKey\\": \\"key\\",\\n \\"TagValue\\": \\"value\\"\\n }\\n ],\\n \\"ResourceGroupId\\": \\"rg-xxx\\",\\n \\"SpecialRetainRules\\": {\\n \\"Enabled\\": true,\\n \\"Rules\\": [\\n {\\n \\"SpecialPeriodUnit\\": \\"WEEKS\\",\\n \\"TimeInterval\\": 1,\\n \\"TimeUnit\\": \\"WEEKS\\"\\n }\\n ]\\n },\\n \\"DiskIds\\": [\\n \\"\\\\\\"d-bp67acfmxazb4p****\\\\\\"\\\\n\\"\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 10,\\n \\"RequestId\\": \\"549BB71F-6778-53CE-AA73-E94ACE802AB4\\",\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query enterprise-level snapshot policies', 'changeSet' => [ ['createdAt' => '2024-10-08T07:16:41.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2024-01-08T01:54:20.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeEnterpriseSnapshotPolicy'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/*'], ], ], ], ], ], 'DescribeEvents' => [ 'methods' => ['post', 'get'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '191205', 'abilityTreeNodes' => ['FEATUREdisk2F270T'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. Call DescribeRegions to query the list of regions where EBS Lens is supported.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'EventName', 'in' => 'query', 'schema' => [ 'description' => 'The event name. Valid values:'."\n" ."\n" .'- NoSnapshot: Data protection'."\n" ."\n" .'- BurstIOTriggered: Burst IO'."\n" ."\n" .'- CostOptimizationNeeded: Cost optimization'."\n" ."\n" .'- DiskSpecNotMatchedWithInstance: The disk specifications do not match the instance type.'."\n" ."\n" .'- DiskIONo4kAligned: Read/write operations are not 4K-aligned.'."\n" ."\n" .'- DiskIOHang: An I/O hang event occurred on the disk.'."\n" ."\n" .'- InstanceIOPSExceedInstanceMaxLimit: The IOPS of the instance reached the upper limit.'."\n" ."\n" .'- InstanceBPSExceedInstanceMaxLimit: The BPS of the instance reached the upper limit.'."\n" ."\n" .'- DiskIOPSExceedInstanceMaxLimit: The IOPS of the disk reached the upper limit of the instance.'."\n" ."\n" .'- DiskBPSExceedInstanceMaxLimit: The BPS of the disk reached the upper limit of the instance.'."\n" ."\n" .'- DiskIOPSExceedDiskMaxLimit: The IOPS of the disk reached the upper limit of the disk.'."\n" ."\n" .'- DiskBPSExceedDiskMaxLimit: The BPS of the disk reached the upper limit of the disk.', 'enumValueTitles' => [], 'type' => 'string', 'required' => false, 'example' => 'DiskIOHang', 'title' => '', ], ], [ 'name' => 'ResourceId', 'in' => 'query', 'schema' => ['description' => 'The resource ID.', 'type' => 'string', 'required' => false, 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The resource type. Valid values:'."\n" ."\n" .'- disk: disk', 'type' => 'string', 'required' => false, 'example' => 'disk', 'title' => ''], ], [ 'name' => 'Status', 'in' => 'query', 'schema' => ['description' => 'The event status. Valid values:'."\n" ."\n" .'- WillExecute: Pending'."\n" ."\n" .'- Executing: In progress'."\n" ."\n" .'- Executed: Processed'."\n" ."\n" .'- Ignore: Ignored'."\n" ."\n" .'- Expired: Expired'."\n" ."\n" .'- Deleted: Deleted', 'type' => 'string', 'required' => false, 'example' => 'WillExecute', 'title' => ''], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['description' => 'The beginning of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2023-06-01T03:00:00Z', 'title' => ''], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['description' => 'The end of the time range to query. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in UTC.', 'type' => 'string', 'required' => false, 'example' => '2023-06-01T04:00:00Z', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return on each page. If you set this parameter, you must use it with the `NextToken` parameter to perform a paged query.'."\n" ."\n" .'Valid values: 1 to 100.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'maximum' => '100', 'minimum' => '1', 'default' => '10', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The query token. Set it to the NextToken value returned from the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****', 'title' => ''], ], [ 'name' => 'EventLevel', 'in' => 'query', 'schema' => ['description' => 'The event level. Valid values:'."\n" ."\n" .'- **INFO**: Notification'."\n" ."\n" .'- **WARN**: Warning'."\n" ."\n" .'- **CRITICAL**: Critical', 'type' => 'string', 'required' => false, 'example' => 'WARN', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'Id of the request', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], 'TotalCount' => ['description' => 'The total number of entries returned for the paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1', 'title' => ''], 'NextToken' => ['description' => 'The token to use for the next query. If this parameter is empty, all results have been returned.', 'type' => 'string', 'example' => 'AAAAAdDWBF2****', 'title' => ''], 'ResourceEvents' => [ 'description' => 'The list of events.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'EventType' => ['description' => 'The event type. Possible values:'."\n" ."\n" .'1. Notification'."\n" ."\n" .'2. SystemException'."\n" ."\n" .'3. Alert', 'type' => 'string', 'example' => 'Alert', 'title' => ''], 'EventName' => ['description' => 'The event name. Possible values:'."\n" ."\n" .'- NoSnapshot: Data protection'."\n" ."\n" .'- BurstIOTriggered: Burst IO'."\n" ."\n" .'- CostOptimizationNeeded: Cost optimization'."\n" ."\n" .'- DiskSpecNotMatchedWithInstance: The disk specifications do not match the instance type.'."\n" ."\n" .'- DiskIONo4kAligned: Read/write operations are not 4K-aligned.'."\n" ."\n" .'- DiskIOHang: An I/O hang event occurred on the disk.'."\n" ."\n" .'- InstanceIOPSExceedInstanceMaxLimit: The IOPS of the instance reached the upper limit.'."\n" ."\n" .'- InstanceBPSExceedInstanceMaxLimit: The BPS of the instance reached the upper limit.'."\n" ."\n" .'- DiskIOPSExceedInstanceMaxLimit: The IOPS of the disk reached the upper limit of the instance.'."\n" ."\n" .'- DiskBPSExceedInstanceMaxLimit: The BPS of the disk reached the upper limit of the instance.'."\n" ."\n" .'- DiskIOPSExceedDiskMaxLimit: The IOPS of the disk reached the upper limit of the disk.'."\n" ."\n" .'- DiskBPSExceedDiskMaxLimit: The BPS of the disk reached the upper limit of the disk.', 'type' => 'string', 'example' => 'DiskIOHang', 'title' => ''], 'ResourceId' => ['description' => 'The resource ID.', 'type' => 'string', 'example' => 'd-bp67acfmxazb4p****'."\n", 'title' => ''], 'ResourceType' => ['description' => 'The resource type.', 'type' => 'string', 'example' => 'disk', 'title' => ''], 'Status' => ['description' => 'The event status. Possible values:'."\n" ."\n" .'1. WillExecute: Pending'."\n" ."\n" .'2. Executing: In progress'."\n" ."\n" .'3. Executed: Processed'."\n" ."\n" .'4. Ignore: Ignored'."\n" ."\n" .'5. Expired: Expired'."\n" ."\n" .'6. Deleted: Deleted', 'type' => 'string', 'example' => 'WillExecute', 'title' => ''], 'StartTime' => ['description' => 'The start time of the event. This value is a UNIX timestamp in milliseconds.', 'type' => 'string', 'example' => '1684204822000', 'title' => ''], 'Description' => ['description' => 'The event description.', 'type' => 'string', 'example' => '可通过购买4296预配置IOPS以获得成本优化,根据您过往7天使用情况,预计成本可以下降16%。', 'title' => ''], 'RecommendAction' => ['description' => 'The recommended action after the event occurred. Possible values:'."\n" ."\n" .'- ModifyDiskSpec: Upgrade or downgrade the disk.'."\n" ."\n" .'- CreateSnapshot: Create a snapshot.'."\n" ."\n" .'- ResizeDisk: Scale out the disk.'."\n" ."\n" .'- AdjustProvision: Adjust the provisioned performance.'."\n" ."\n" .'- ModifyInstanceSpec: Upgrade or downgrade the instance.', 'type' => 'string', 'example' => 'AdjustProvision', 'title' => ''], 'RecommendParams' => ['description' => 'The parameters for the recommended action.', 'type' => 'string', 'example' => '4296', 'title' => ''], 'EventLevel' => ['description' => 'The event level. Possible values:'."\n" ."\n" .'1. INFO'."\n" ."\n" .'2. WARN'."\n" ."\n" .'3. CRITICAL', 'type' => 'string', 'example' => 'INFO', 'title' => ''], 'EndTime' => ['description' => 'The end time of the event. This value is a UNIX timestamp in milliseconds.', 'type' => 'string', 'example' => '1679538083000', 'title' => ''], 'ExtraAttributes' => ['description' => 'The additional properties. Possible fields include the following:'."\n" ."\n" .'- EcsInstanceId: The ID of the ECS instance to which the disk is attached.'."\n" ."\n" .'- Adapter: The mount target of the disk.', 'type' => 'string', 'example' => '{\\"EcsInstanceId\\":\\"i-uf6dkn9qpcw6y94g7ag7\\",\\"Adapter\\":\\"hda\\"}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'App.NumberExceed', 'errorMessage' => 'The number of apps exceeded.', 'description' => ''], ['errorCode' => 'DocumentConvertFailed.ExceedFileSizeLimit', 'errorMessage' => 'The conversion has been failed, exceed file size limit.', 'description' => 'english description1'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => ''], ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', 'description' => 'The request and a previous request contains the same client token but different parameters.'], ['errorCode' => 'InvalidDiskSize.NotSupported', 'errorMessage' => 'The specified parameter size is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.EndTime', 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => ''], ], 403 => [ ['errorCode' => 'AliCroup2CloudUserCannotBuyNotInnerCommodity', 'errorMessage' => 'There is no group cloud commodity label, and users within the group are not allowed to purchase.', 'description' => 'There is no group cloud commodity label, and users within the group are not allowed to purchase.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'IncorrectDiskStatus.CreatingSnapshot', 'errorMessage' => 'A previous snapshot creation is in process.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'InvalidDiskCategory.NotSupported', 'errorMessage' => 'The specified disk category is not supported.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'title' => 'DescribeEvents', 'summary' => 'Queries threat events for disks.', 'changeSet' => [ ['createdAt' => '2024-12-06T09:03:30.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-08-19T03:21:55.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeEvents'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'ebs:DescribeEvents', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"TotalCount\\": 1,\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\",\\n \\"ResourceEvents\\": [\\n {\\n \\"EventType\\": \\"Alert\\",\\n \\"EventName\\": \\"DiskIOHang\\",\\n \\"ResourceId\\": \\"d-bp67acfmxazb4p****\\\\n\\",\\n \\"ResourceType\\": \\"disk\\",\\n \\"Status\\": \\"WillExecute\\",\\n \\"StartTime\\": \\"1684204822000\\",\\n \\"Description\\": \\"可通过购买4296预配置IOPS以获得成本优化,根据您过往7天使用情况,预计成本可以下降16%。\\",\\n \\"RecommendAction\\": \\"AdjustProvision\\",\\n \\"RecommendParams\\": \\"4296\\",\\n \\"EventLevel\\": \\"INFO\\",\\n \\"EndTime\\": \\"1679538083000\\",\\n \\"ExtraAttributes\\": \\"{\\\\\\\\\\\\\\"EcsInstanceId\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"i-uf6dkn9qpcw6y94g7ag7\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"Adapter\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"hda\\\\\\\\\\\\\\"}\\"\\n }\\n ]\\n}","type":"json"}]', ], 'DescribeLensMonitorDisks' => [ 'summary' => 'Queries information about one or more of your Elastic Block Storage (EBS) disks.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '216732', 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call the DescribeRegions operation to query the list of regions that support EBS Lens.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DiskIds', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'A list of disk IDs.', 'type' => 'array', 'items' => ['description' => 'The disk ID.', 'type' => 'string', 'required' => false, 'example' => 'd-cd40hxfu0v*****', 'title' => ''], 'required' => false, 'example' => '[\'d-1\', \'d-2\']', 'maxItems' => 100, ], ], [ 'name' => 'DiskCategory', 'in' => 'query', 'schema' => ['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: Enhanced SSD (ESSD).'."\n" ."\n" .'- cloud\\_auto: ESSD AutoPL disk.'."\n" ."\n" .'- cloud\\_essd\\_entry: ESSD Entry disk.', 'type' => 'string', 'example' => 'cloud_auto', 'title' => '', 'required' => false], ], [ 'name' => 'LensTags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'description' => 'A list of event tags. This parameter is used to filter disks for which the specified types of events occurred within the last 24 hours. Valid values:'."\n" ."\n" .'- NoSnapshot: data protection'."\n" ."\n" .'- BurstIOTriggered: burst I/O'."\n" ."\n" .'- CostOptimizationNeeded: cost optimization'."\n" ."\n" .'- DiskSpecNotMatchedWithInstance: The disk specifications do not match the instance type.'."\n" ."\n" .'- DiskIONo4kAligned: non-4K aligned read/write'."\n" ."\n" .'- DiskIOHang: An I/O hang occurred on the disk.'."\n" ."\n" .'- InstanceIOPSExceedInstanceMaxLimit: The IOPS of the instance has reached its upper limit.'."\n" ."\n" .'- InstanceBPSExceedInstanceMaxLimit: The BPS of the instance has reached its upper limit.'."\n" ."\n" .'- DiskIOPSExceedInstanceMaxLimit: The IOPS of the disk has reached the upper limit of the instance.'."\n" ."\n" .'- DiskBPSExceedInstanceMaxLimit: The BPS of the disk has reached the upper limit of the instance.'."\n" ."\n" .'- DiskIOPSExceedDiskMaxLimit: The IOPS of the disk has reached its upper limit.'."\n" ."\n" .'- DiskBPSExceedDiskMaxLimit: The BPS of the disk has reached its upper limit.', 'type' => 'array', 'items' => ['description' => 'The event tag of the disk.', 'type' => 'string', 'required' => false, 'example' => 'NoSnapshot', 'title' => ''], 'required' => false, 'maxItems' => 100, 'title' => '', 'example' => '', ], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The token used to start the next query. Set this parameter to the NextToken value returned from a previous call to this operation.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The number of entries per page. Maximum value: 100.'."\n" .'Default value:'."\n" ."\n" .'- 10\\.'."\n" ."\n" .'- If you set this parameter to a value greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'title' => '', 'required' => false, 'example' => '10'], ], [ 'name' => 'DiskIdPattern', 'in' => 'query', 'schema' => ['description' => 'A regular expression to filter disk IDs in a fuzzy query.', 'type' => 'string', 'required' => false, 'example' => 'd-cd40hxfu0v*', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribeLensMonitorDisksResponse', 'description' => 'DescribeLensMonitorDisksResponse', 'type' => 'object', 'properties' => [ 'DiskInfos' => [ 'description' => 'The list of disk information.', 'type' => 'array', 'items' => [ 'description' => 'The disk information.', 'type' => 'object', 'properties' => [ 'DiskId' => ['description' => 'The disk ID.', 'type' => 'string', 'example' => 'd-cd401****', 'title' => ''], 'DiskName' => ['description' => 'The disk name.', 'type' => 'string', 'example' => 'disk-28c6b****', 'title' => ''], 'DiskType' => ['description' => 'The type of the disk. Valid values:'."\n" ."\n" .'- system: system disk.'."\n" ."\n" .'- data: data disk.', 'type' => 'string', 'example' => 'system', 'title' => ''], 'DiskStatus' => ['description' => 'The status of the disk. Valid values:'."\n" ."\n" .'- Available: in use.'."\n" ."\n" .'- Deleted: deleted.', 'type' => 'string', 'example' => 'Available', 'title' => ''], 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'DiskCategory' => ['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: ESSD.'."\n" ."\n" .'- cloud\\_auto: ESSD AutoPL disk.'."\n" ."\n" .'- cloud\\_essd\\_entry: ESSD Entry disk.', 'type' => 'string', 'example' => 'cloud_essd', 'title' => ''], 'PerformanceLevel' => ['description' => 'The performance level of the ESSD. Valid values:'."\n" ."\n" .'- PL0: A maximum of 10,000 random read/write IOPS per disk.'."\n" ."\n" .'- PL1: A maximum of 50,000 random read/write IOPS per disk.'."\n" ."\n" .'- PL2: A maximum of 100,000 random read/write IOPS per disk.'."\n" ."\n" .'- PL3: A maximum of 1,000,000 random read/write IOPS per disk.', 'type' => 'string', 'example' => 'PL0', 'title' => ''], 'Tags' => [ 'description' => 'The collection of tags for the disk.', 'type' => 'array', 'items' => [ 'description' => 'The tag of the disk.', 'type' => 'object', 'properties' => [ 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'example' => 'user', 'title' => ''], 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'example' => 'tag1', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'ZoneId' => ['description' => 'The ID of the zone to which the disk belongs.', 'type' => 'string', 'example' => 'cn-hangzhou-j', 'title' => ''], 'Size' => ['description' => 'The size of the disk, in GiB.', 'type' => 'integer', 'format' => 'int32', 'example' => '64', 'title' => ''], 'Iops' => ['description' => 'The maximum number of input/output operations per second (IOPS).', 'type' => 'integer', 'format' => 'int32', 'example' => '4000', 'title' => ''], 'Bps' => ['description' => 'The maximum throughput. Unit: MB/s.', 'type' => 'integer', 'format' => 'int32', 'example' => '300', '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 returned only when `DiskCategory` is set to `cloud_auto`. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'integer', 'format' => 'int32', 'example' => '4000', 'title' => ''], 'BurstingEnabled' => ['description' => 'Indicates whether the performance burst feature is enabled. Valid values:'."\n" ."\n" .'- true: Yes.'."\n" ."\n" .'- false: No.'."\n" ."\n" .'This parameter is returned only when `DiskCategory` is set to `cloud_auto`. For more information, see [ESSD AutoPL disks](~~368372~~).', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'LensTags' => [ 'description' => 'A collection of event tags for the disk. The event tags indicate the events that occurred on the disk in the last 24 hours. The data may have a delay of up to 1 hour.', 'type' => 'array', 'items' => ['description' => 'The event tag of the disk.', 'type' => 'string', 'example' => '["NoSnapshot", "DiskIOHang"]', 'title' => ''], 'title' => '', 'example' => '', ], 'SharingEnabled' => ['description' => 'Indicates whether the disk is a shared disk.', 'type' => 'string', 'example' => 'true', 'title' => ''], ], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'NextToken' => ['description' => 'The token to use to retrieve the next page of results. This value is not returned when there are no more results to return.', 'type' => 'string', 'title' => '', 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], 'TotalCount' => ['description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'example' => '6'], 'RequestId' => ['description' => 'The ID of the request. This ID is returned for every request, regardless of the result.', 'type' => 'string', 'title' => '', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DiskInfos\\": [\\n {\\n \\"DiskId\\": \\"d-cd401****\\",\\n \\"DiskName\\": \\"disk-28c6b****\\",\\n \\"DiskType\\": \\"system\\",\\n \\"DiskStatus\\": \\"Available\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"DiskCategory\\": \\"cloud_essd\\",\\n \\"PerformanceLevel\\": \\"PL0\\",\\n \\"Tags\\": [\\n {\\n \\"TagValue\\": \\"user\\",\\n \\"TagKey\\": \\"tag1\\"\\n }\\n ],\\n \\"ZoneId\\": \\"cn-hangzhou-j\\",\\n \\"Size\\": 64,\\n \\"Iops\\": 4000,\\n \\"Bps\\": 300,\\n \\"ProvisionedIops\\": 4000,\\n \\"BurstingEnabled\\": true,\\n \\"LensTags\\": [\\n \\"[\\\\\\"NoSnapshot\\\\\\", \\\\\\"DiskIOHang\\\\\\"]\\"\\n ],\\n \\"SharingEnabled\\": \\"true\\"\\n }\\n ],\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"TotalCount\\": 6,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","type":"json"}]', 'title' => 'DescribeLensMonitorDisks', 'changeSet' => [ ['createdAt' => '2025-04-29T10:57:08.000Z', 'description' => 'Response parameters changed'], ['createdAt' => '2025-01-03T10:09:07.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeLensMonitorDisks'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeLensMonitorDisks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeLensServiceStatus' => [ 'methods' => ['post', 'get'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '138260', 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [], '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****'], 'Status' => ['description' => 'The status of EBS Lens. Valid values:'."\n" ."\n" .'- Applying: The service is being applied for.'."\n" ."\n" .'- UnAvailable: The service is unavailable.'."\n" ."\n" .'- Available: The service is available.', 'type' => 'string', 'example' => 'Available', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'title' => 'Query EBS lens service status', 'summary' => 'Queries the status of the EBS Lens service activated by the user.', 'changeSet' => [ ['createdAt' => '2023-03-22T01:59:35.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeLensServiceStatus'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeLensServiceStatus', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Status\\": \\"Available\\"\\n}","type":"json"}]', ], 'DescribeMetricData' => [ 'summary' => 'Queries the monitoring metrics of a resource.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '185234', 'abilityTreeNodes' => ['FEATUREdiskLP80G7'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'MetricName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The name of the metric. Valid values:'."\n" ."\n" .'- disk\\_bps\\_percent'."\n" .'- disk\\_iops\\_percent'."\n" .'- disk\\_read\\_block\\_size'."\n" .'- disk\\_read\\_bps'."\n" .'- disk\\_read\\_iops'."\n" .'- disk\\_write\\_block\\_size'."\n" .'- disk\\_write\\_bps'."\n" .'- disk\\_write\\_iops', 'type' => 'string', 'required' => true, 'example' => 'disk_bps_percent'], ], [ 'name' => 'StartTime', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The beginning of the time range to query metric data. The start time can be up to 30 days before the current time. If you leave both the StartTime and EndTime parameters empty, the system queries the metrics for the most recent period. The time must be in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'required' => false, 'example' => '2023-11-21T01:50:00Z'], ], [ 'name' => 'EndTime', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The end of the time range to query metric data. The time cannot be later than the current time. The time must be in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time is displayed in UTC.', 'type' => 'string', 'required' => false, 'example' => '2023-11-21T02:00:00Z'], ], [ 'name' => 'Period', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The interval at which to query metric data. Unit: seconds. The default value is 5. Valid values:'."\n" ."\n" .'- 5: 5-second precision. You can query data within a 12-hour time range.'."\n" .'- 10: 10-second precision. You can query data within a 24-hour time range.'."\n" .'- 60: 60-second precision. You can query data within a 7-day time range.'."\n" .'- 300: 300-second precision. You can query data within a 30-day time range.'."\n" .'- 600: 600-second precision. You can query data within a 30-day time range.'."\n" .'- 3600: 3600-second precision. You can query data within a 30-day time range.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'enumValueTitles' => [], 'example' => '60', ], ], [ 'name' => 'Dimensions', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'A map of dimensions in the JSON format. The map specifies the dimensions to query. The following keys are supported:'."\n" ."\n" .'- DiskId: The disk name, such as d-xxx.'."\n" .'- DeviceType: The disk category. \\`system\\` indicates a system disk and \\`data\\` indicates a data disk.'."\n" .'- DeviceCategory: The disk type, such as cloud\\_essd.'."\n" .'- EcsInstanceId: The name of the ECS instance to which the disk is attached, such as i-xxx.'."\n" .'- Azone: The zone, such as cn-hangzhou-a.'."\n" ."\n" .'The returned results are the intersection of all specified dimension-based filter conditions.', 'type' => 'string', 'required' => false, 'example' => '{"DiskId":["d-bp14xxxx","d-bp11xxxx"], "DeviceCategory": ["cloud_essd"]}'], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'cn-shanghai'], ], [ 'name' => 'AggreOps', 'in' => 'query', 'schema' => ['description' => 'The method for aggregating data over time. Valid values:'."\n" ."\n" .'- SUM\\_OVER\\_TIME'."\n" .'- COUNT\\_OVER\\_TIME'."\n" .'- AVG\\_OVER\\_TIME'."\n" .'- MAX\\_OVER\\_TIME'."\n" .'- MIN\\_OVER\\_TIME'."\n" .'- SUM\\_OVER\\_TIME\\_LCRO: The sum of values in a left-closed, right-open interval.'."\n" .'- AVG\\_OVER\\_TIME\\_LCRO: The average of values in a left-closed, right-open interval.'."\n" .'- SUM\\_OVER\\_TIME\\_LORC: The sum of values in a left-open, right-closed interval.'."\n" .'- AVG\\_OVER\\_TIME\\_LORC: The average of values in a left-open, right-closed interval.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'AVG_OVER_TIME'], ], [ 'name' => 'AggreOverLineOps', 'in' => 'query', 'schema' => ['description' => 'The method for aggregating data across different lines. Valid values:'."\n" ."\n" .'- NON: No aggregation is performed.'."\n" .'- SUM: The sum of values.'."\n" .'- AVG: The average of values.'."\n" .'- COUNT: The number of values.'."\n" .'- MAX: The maximum value.'."\n" .'- MIN: The minimum value.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'NON'], ], [ 'name' => 'GroupByLabels', 'in' => 'query', 'style' => 'simple', 'schema' => [ 'description' => 'A list of fields for grouping and aggregation.', 'type' => 'array', 'items' => ['description' => 'The field for grouping. The following fields are supported:'."\n" ."\n" .'- DiskId: The disk name, such as d-xxx.'."\n" .'- DeviceType: The disk category. \\`system\\` indicates a system disk and \\`data\\` indicates a data disk.'."\n" .'- DeviceCategory: The disk type, such as cloud\\_essd.'."\n" .'- EcsInstanceId: The name of the ECS instance to which the disk is attached, such as i-xxx.'."\n" .'- Azone: The zone, such as cn-hangzhou-a.', 'type' => 'string', 'required' => false, 'title' => '', 'example' => 'DeviceType'], 'required' => false, 'title' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribeMetricDataResponse', 'description' => 'DescribeMetricDataResponse', 'type' => 'object', 'properties' => [ 'TotalCount' => ['title' => '', 'description' => 'The total number of data entries returned.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'DataList' => [ 'title' => '', 'description' => 'A collection of monitoring data for the disk.', 'type' => 'array', 'items' => [ 'description' => 'A list of returned data.', 'type' => 'object', 'properties' => [ 'Labels' => ['description' => 'The labels.', 'type' => 'any', 'title' => '', 'example' => '{"DiskId": "d-1234"}'], 'Datapoints' => ['description' => 'A list of monitoring data. The list contains a series of consecutive second-level timestamps and the corresponding metric values.', 'type' => 'any', 'title' => '', 'example' => '{"1699258861": 1,"1699259461": 0}'], ], 'title' => '', ], ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], 'Warnings' => [ 'description' => 'A list of warning messages.', 'type' => 'array', 'items' => ['description' => 'The warning message.', 'type' => 'string', 'title' => '', 'example' => 'not complete.'], 'title' => '', ], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TotalCount\\": 1,\\n \\"DataList\\": [\\n {\\n \\"Labels\\": \\"{\\\\\\"DiskId\\\\\\": \\\\\\"d-1234\\\\\\"}\\",\\n \\"Datapoints\\": \\"{\\\\\\"1699258861\\\\\\": 1,\\\\\\"1699259461\\\\\\": 0}\\"\\n }\\n ],\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\",\\n \\"Warnings\\": [\\n \\"not complete.\\"\\n ]\\n}","type":"json"}]', 'title' => 'DescribeMetricData', 'changeSet' => [ ['createdAt' => '2025-07-02T09:50:11.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-04-29T10:57:08.000Z', 'description' => 'Request parameters changed, Response parameters changed'], ['createdAt' => '2024-11-07T13:16:45.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeMetricData'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [], ], 'DescribePairDrills' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '186462', 'abilityTreeNodes' => ['FEATUREdiskAQUAFH', 'FEATUREdiskVW208V'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the primary or secondary disk in the async replication pair. You can call the [DescribeRegions](~~354276~~) operation to query the most recent list of regions in which async replication is supported.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'DrillId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the drill.'."\n", 'type' => 'string', 'required' => false, 'example' => 'drill-xxxx'], ], [ 'name' => 'PairId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query a list of asynchronous replication pairs, including replication pair IDs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-xxxx'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The maximum number of entries to be returned. You can use this parameter together with NextToken.'."\n" ."\n" .'Valid values: 1 to 500.'."\n" ."\n" .'Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10'], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The pagination token that is used in the next request to retrieve a new page of results. Set the value to the NextToken value returned in the previous call to the DescribeDiskReplicaPairs operation. Leave this parameter empty the first time you call this operation. When you specify NextToken, the PageSize and PageNumber request parameters do not take effect and the TotalCount response parameter is invalid.'."\n", 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page. Valid values: 1 to 100.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribePairDrillResponse', 'description' => 'The schema of the response.'."\n", 'type' => 'object', 'properties' => [ 'Drills' => [ 'description' => 'The information of disaster recovery drills that were performed on the replication pair.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'DrillId' => ['title' => '', 'description' => 'The ID of the drill.'."\n", 'type' => 'string', 'example' => 'drill-xxx'], 'Status' => [ 'title' => '', 'description' => 'The status of the drill. Valid values:'."\n" ."\n" .'* execute_failed'."\n" .'* executed'."\n" .'* executing'."\n" .'* clear_failed'."\n" .'* clearing'."\n", 'type' => 'string', 'enumValueTitles' => [], 'example' => 'executing', ], 'DrillDiskId' => ['title' => '', 'description' => 'The ID of the drill disk.'."\n", 'type' => 'string', 'example' => 'd-xxx'], 'DrillDiskStatus' => [ 'title' => '', 'description' => 'The status of the drill disk. Valid values:'."\n" ."\n" .'* created'."\n" .'* deleted'."\n" .'* creating'."\n" .'* deleting'."\n" ."\n" .'> This parameter can also display error code details if your drill disk fails to be created or deleted.'."\n", 'type' => 'string', 'enumValueTitles' => [], 'example' => 'created', ], 'StartAt' => ['title' => '', 'description' => 'The beginning time of the drill. The value of this parameter is a timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1690855888'], 'RecoverPoint' => ['title' => '', 'description' => 'The recovery point of the drill. The value of this parameter is a timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1690855931'], 'StatusMessage' => ['title' => '', 'description' => 'The error message that was displayed if the drill failed to be executed.'."\n", 'type' => 'string', 'example' => 'PAIR_SYNCPOINT_NOT_FOUND'], ], 'description' => '', 'title' => '', ], 'title' => '', ], 'NextToken' => ['title' => '', 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results.'."\n", 'type' => 'string', 'example' => 'AAAAAdDWBF2****'."\n"], 'PageNumber' => ['title' => '', 'description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C46FF5A8-C5F0-4024-8262-B16B6392****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"Drills\\": [\\n {\\n \\"DrillId\\": \\"drill-xxx\\",\\n \\"Status\\": \\"executing\\",\\n \\"DrillDiskId\\": \\"d-xxx\\",\\n \\"DrillDiskStatus\\": \\"created\\",\\n \\"StartAt\\": 1690855888,\\n \\"RecoverPoint\\": 1690855931,\\n \\"StatusMessage\\": \\"PAIR_SYNCPOINT_NOT_FOUND\\"\\n }\\n ],\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\\\n\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"C46FF5A8-C5F0-4024-8262-B16B6392****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n \\n drill-xxx\\n executing\\n d-xxx\\n created\\n 1690855888\\n 1690855931\\n PAIR_SYNCPOINT_NOT_FOUND\\n \\n AAAAAdDWBF2****\\n 1\\n 10\\n 1\\n C46FF5A8-C5F0-4024-8262-B16B6392****\\n","errorExample":""}]', 'title' => 'DescribePairDrills', 'summary' => 'Queries the disaster recovery drills that were performed on the replication pair whose secondary disk resides in a specific region.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribePairDrills', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#PairId}'], ], ], ], ], ], 'DescribeRegions' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '61960', 'abilityTreeNodes' => ['FEATUREdisk0EX8WR'], ], 'parameters' => [ [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['description' => 'The type of resource. Valid values:'."\n" ."\n" .'* ear: async replication'."\n" .'* lens: CloudLens for EBS'."\n" .'* dbsc: Dedicated Block Storage Cluster'."\n" ."\n" .'Default value: ear.', 'type' => 'string', 'required' => false, 'example' => 'ear', 'title' => ''], ], [ 'name' => 'AcceptLanguage', 'in' => 'query', 'schema' => ['description' => 'The language in which the regions and zones are named. This parameter corresponds to the `LocalName` response parameter. Valid values:'."\n" ."\n" .'* zh-CN: Chinese'."\n" .'* en-US: English'."\n" .'* ja: Japanese'."\n" ."\n" .'Default value: zh-CN.'."\n", 'type' => 'string', 'required' => false, 'example' => 'zh-CN', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the region.'."\n", 'type' => 'string', 'required' => false, 'example' => 'cn-beijing', 'default' => 'cn-shanghai', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '17EE62D8-064E-5404-8B0D-72122478****'], 'Regions' => [ 'description' => 'Details about the regions.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LocalName' => ['description' => 'The name of the region.'."\n", 'type' => 'string', 'example' => 'China (Hangzhou)', 'title' => ''], 'RegionEndpoint' => ['description' => 'The endpoint of the region.'."\n", 'type' => 'string', 'example' => 'ebs.cn-hangzhou.aliyuncs.com', 'title' => ''], 'RegionId' => ['description' => 'The ID of the region.'."\n", 'type' => 'string', 'example' => 'cn-hangzhou', 'title' => ''], 'Zones' => [ 'description' => 'Details about the zones.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'LocalName' => ['description' => 'The name of the zone.'."\n", 'type' => 'string', 'example' => 'Hangzhou Zone H', 'title' => ''], 'ZoneId' => ['description' => 'The ID of the zone.'."\n", 'type' => 'string', 'example' => 'cn-hangzhou-h', 'title' => ''], 'ResourceTypes' => [ 'description' => 'The type of resource list.', 'type' => 'array', 'items' => ['description' => 'The type of resource. Valid values:'."\n" ."\n" .'- ear: async replication'."\n" ."\n" .'- lens: CloudLens for EBS'."\n" ."\n" .'- dbsc: Dedicated Block Storage Cluster', 'type' => 'string', 'example' => 'ear', 'title' => ''], 'title' => '', ], ], 'description' => '', 'title' => '', ], 'title' => '', ], ], 'description' => '', 'title' => '', ], 'title' => '', ], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"17EE62D8-064E-5404-8B0D-72122478****\\",\\n \\"Regions\\": [\\n {\\n \\"LocalName\\": \\"China (Hangzhou)\\",\\n \\"RegionEndpoint\\": \\"ebs.cn-hangzhou.aliyuncs.com\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Zones\\": [\\n {\\n \\"LocalName\\": \\"Hangzhou Zone H\\",\\n \\"ZoneId\\": \\"cn-hangzhou-h\\",\\n \\"ResourceTypes\\": [\\n \\"ear\\"\\n ]\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"","errorExample":""}]', 'title' => 'DescribeRegions', 'summary' => 'Queries the details of regions in which Elastic Block Storage (EBS) features (such as async replication, CloudLens for EBS, and Dedicated Block Storage Cluster) are supported.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeRegions', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeReplicaGroupDrills' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '189140', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the primary or secondary disk in the async replication pair-consistent group. You can call the [DescribeRegions](~~354276~~) operation to query the most recent list of regions in which async replication is supported.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'GroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the replication pair-consistent group. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query a list of async replication pair-consistent groups, including group IDs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-xxxx'], ], [ 'name' => 'DrillId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the drill.'."\n", 'type' => 'string', 'required' => false, 'example' => 'pg-drill-xxxx'], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['title' => '', '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. When you specify NextToken, the PageSize and PageNumber request parameters do not take effect and the TotalCount response parameter is invalid.'."\n", 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2****'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The maximum number of entries to be returned. You can use this parameter together with NextToken.'."\n" ."\n" .'Valid values: 1 to 500.'."\n" ."\n" .'Default value: 10.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page. Valid values: 1 to 100.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '5'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribePairGroupDrillsResponse', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'Drills' => [ 'description' => 'The information of disaster recovery drills that were performed on the replication pair-consistent group.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'DrillId' => ['title' => '', 'description' => 'The ID of the drill.'."\n", 'type' => 'string', 'example' => 'pg-drill-xxx'], 'GroupId' => ['title' => '', 'description' => 'The ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'example' => 'pg-xxx'], 'Status' => [ 'title' => '', 'description' => 'The status of the drill. Valid values:'."\n" ."\n" .'* execute_failed'."\n" .'* executed'."\n" .'* executing'."\n" .'* clear_failed'."\n" .'* clearing'."\n", 'type' => 'string', 'enumValueTitles' => ['execute_failed' => 'execute_failed', 'executed' => 'executed', 'executing' => 'executing', 'clear_failed' => 'clear_failed', 'clearing' => 'clearing'], 'example' => 'executed', ], 'PairsInfo' => [ 'title' => '', 'description' => 'The information of replication pairs.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'PairId' => ['title' => '', 'description' => 'The ID of the replication pair.'."\n", 'type' => 'string', 'example' => 'pair-xxx'], 'DrillDiskId' => ['title' => '', 'description' => 'The ID of the drill disk.'."\n", 'type' => 'string', 'example' => 'd-xxx'], 'DrillDiskStatus' => ['title' => '', 'description' => 'The status of the drill disk. Valid values:'."\n" ."\n" .'* created'."\n" .'* deleted'."\n" .'* creating'."\n" .'* deleting'."\n" ."\n" .'> This parameter can also display error code details if your drill disk fails to be created or deleted.'."\n", 'type' => 'string', 'example' => 'created'], ], 'description' => '', 'title' => '', ], ], 'StartAt' => ['title' => '', 'description' => 'The beginning time of the drill. The value of this parameter is a timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1649750977'], 'RecoverPoint' => ['title' => '', 'description' => 'The recovery point of the drill. The value of this parameter is a timestamp. Unit: seconds.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1691114995'], 'StatusMessage' => ['title' => '', 'description' => 'The error message that appears if the drill fails to be executed.'."\n", 'type' => 'string', 'example' => 'GROUP_SYNCPOINT_NOT_FOUND'], ], 'description' => '', 'title' => '', ], 'title' => '', ], 'NextToken' => ['title' => '', 'description' => 'A pagination token. It can be used in the next request to retrieve a new page of results. If NextToken is empty, no next page exists.'."\n", 'type' => 'string', 'example' => 'AAAAAdDWBF2****'."\n"], 'PageNumber' => ['title' => '', 'description' => 'The page number.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"Drills\\": [\\n {\\n \\"DrillId\\": \\"pg-drill-xxx\\",\\n \\"GroupId\\": \\"pg-xxx\\",\\n \\"Status\\": \\"executed\\",\\n \\"PairsInfo\\": [\\n {\\n \\"PairId\\": \\"pair-xxx\\",\\n \\"DrillDiskId\\": \\"d-xxx\\",\\n \\"DrillDiskStatus\\": \\"created\\"\\n }\\n ],\\n \\"StartAt\\": 1649750977,\\n \\"RecoverPoint\\": 1691114995,\\n \\"StatusMessage\\": \\"GROUP_SYNCPOINT_NOT_FOUND\\"\\n }\\n ],\\n \\"NextToken\\": \\"AAAAAdDWBF2****\\\\n\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n \\n pg-drill-xxx\\n pg-xxx\\n executed\\n \\n pair-xxx\\n d-xxx\\n created\\n \\n 1649750977\\n 1691114995\\n GROUP_SYNCPOINT_NOT_FOUND\\n \\n AAAAAdDWBF2****\\n\\n 1\\n 10\\n 1\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'DescribeReplicaGroupDrills', 'summary' => 'Queries the disaster recovery drills that were performed on the replication pair-consistent group whose secondary disk resides in a specific region.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeReplicaGroupDrills', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#GroupId}'], ], ], ], ], ], 'DescribeSolutionInstanceConfiguration' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '189350', 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ 'name' => 'SolutionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the solution.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'sln-xxxxx'], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'title' => '', 'example' => 'cn-shanghai'], ], [ 'name' => 'Parameters', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The parameters.', 'type' => 'array', 'items' => [ 'description' => 'The information about the parameters.', 'type' => 'object', 'properties' => [ 'ParameterKey' => ['description' => 'The key of the parameter.', 'type' => 'string', 'required' => true, 'example' => '***', 'title' => ''], 'ParameterValue' => ['description' => 'The value of the parameter.'."\n" ."\n" .'> The Parameters parameter is optional. If you specify Parameters, you must specify ParameterValue.', 'type' => 'string', 'required' => true, 'example' => '***', 'title' => ''], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'maxItems' => 100, 'example' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotency 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-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribeSlnInstanceConfigurationResponse', 'description' => 'DescribeSlnInstanceConfigurationResponse.', 'type' => 'object', 'properties' => [ 'Data' => [ 'description' => 'The returned data.', 'type' => 'array', 'items' => [ 'description' => 'The returned data.', 'type' => 'object', 'additionalProperties' => ['description' => 'The returned data.', 'type' => 'any', 'example' => '[]', 'title' => ''], 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'AssumeRoleFail.solution', 'errorMessage' => 'Assume role fail, please check RamRole for EBS Laboratory already exist and policy is correct.', 'description' => 'Assume role fail, please check RamRole for EBS Laboratory already exist and policy is correct.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'DescribeSolutionInstanceConfiguration', 'summary' => 'Queries the default configurations of a solution.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSolutionInstanceConfiguration'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeSolutionInstanceConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": [\\n {\\n \\"key\\": \\"[]\\"\\n }\\n ],\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\"\\n}","type":"json"}]', ], 'DescribeUserTagKeys' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '253920', 'abilityTreeNodes' => ['FEATUREdisk2F270T'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'NextToken', 'in' => 'formData', 'schema' => ['description' => 'The query token returned by this call (Token).', 'type' => 'string', 'required' => false, 'example' => 'f07b150eadfa1d7a', 'title' => ''], ], [ 'name' => 'MaxResults', 'in' => 'formData', 'schema' => ['description' => 'Number of items per page in paginated queries. The maximum value is 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If no value is set or the set value is less than 10, the default is 10.'."\n" ."\n" .'- If the set value is greater than 100, the default is 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], [ 'name' => 'TagFilterKey', 'in' => 'formData', 'schema' => ['description' => 'The tagKey for filtering the query.', 'type' => 'string', 'required' => false, 'example' => 'tagKey', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['description' => 'The ID of the region to which the resource belongs. You can call [DescribeRegions](~~25609~~) to view the latest list of Alibaba Cloud regions.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribeLensUserTagKeyResponse', 'description' => 'DescribeLensUserTagKeyResponse', 'type' => 'object', 'properties' => [ 'TagKeys' => [ 'description' => 'List of matching tag keys.', 'type' => 'array', 'items' => ['description' => 'List of matching tag keys.', 'type' => 'string', 'example' => '{\'TagKey\': []}', 'title' => ''], 'title' => '', ], 'NextToken' => ['description' => 'The token for the next query. An empty NextToken indicates there are no more results.', 'type' => 'string', 'example' => 'f07b150eadfa1d7a', 'title' => ''], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', 'title' => ''], 'MaxResults' => ['description' => 'Number of items per page in paginated queries. The maximum value is 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If no value is set or the set value is less than 10, the default is 10.'."\n" ."\n" .'- If the set value is greater than 100, the default is 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TagKeys\\": [\\n \\"{\'TagKey\': []}\\"\\n ],\\n \\"NextToken\\": \\"f07b150eadfa1d7a\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\",\\n \\"MaxResults\\": 10\\n}","type":"json"}]', 'title' => 'DescribeUserTagKeys', 'summary' => 'Centralized Role: Query User Disk Snapshot tagKeys', 'description' => '## Interface Description'."\n" .'Query the tag key-value pairs of user\'s cloud disk and snapshot. The search scope can be narrowed down by using filterTagKey.', 'translator' => 'machine', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeUserTagKeys', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'DescribeUserTagValues' => [ 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '253922', 'abilityTreeNodes' => ['FEATUREdisk2F270T'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'TagKey', 'in' => 'formData', 'schema' => ['title' => '标签键。最多包含20个子项。', 'description' => 'Tag key.', 'type' => 'string', 'required' => false, 'example' => 'TestKey'], ], [ 'name' => 'NextToken', 'in' => 'formData', 'schema' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => 'Query token (Token). The value should be the NextToken parameter value from the previous call to this interface. This parameter is not required for the initial call. If NextToken is set, the PageSize and PageNumber request parameters become invalid, and the TotalCount in the response data is also invalid.', 'type' => 'string', 'required' => false, 'example' => 'AAAAAdDWBF2'], ], [ 'name' => 'MaxResults', 'in' => 'formData', 'schema' => ['title' => '分页查询时每页行数。最大值为100。'."\n" ."\n" .'默认值:'."\n" ."\n" .'- 当不设置值或设置的值小于10时,默认值为10。'."\n" ."\n" .'- 当设置的值大于100时,默认值为100。', 'description' => 'Number of items per page in a paginated query. The maximum value is 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If no value is set or the set value is less than 10, the default value is 10.'."\n" ."\n" .'- If the set value is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'TagFilterValue', 'in' => 'formData', 'schema' => ['description' => 'Tag content filter', 'type' => 'string', 'required' => false, 'example' => 'keyValue', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['title' => '一致性复制组所属的地域ID。', 'description' => 'The region ID of the consistency replication group.', 'type' => 'string', 'required' => false, 'example' => 'cn-beijing'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribeLensUserTagValueResponse', 'description' => 'DescribeLensUserTagValueResponse', 'type' => 'object', 'properties' => [ 'TagValues' => [ 'title' => '标签键对应的标签值。', 'description' => 'Tag values corresponding to the tag key.', 'type' => 'array', 'items' => ['title' => '标签键对应的标签值。', 'description' => 'Tag values corresponding to the tag key.', 'type' => 'string', 'example' => '[\'90349\']'], ], 'NextToken' => ['title' => '查询凭证(Token)。取值为上一次调用该接口返回的NextToken参数值,初次调用接口时无需设置该参数。如果设置了NextToken,则请求参数PageSize和PageNumber将失效,且返回数据中的TotalCount无效。', 'description' => 'Query token (Token). The value should be the NextToken parameter value from the previous call to this interface. This parameter is not required for the initial call. If NextToken is set, the PageSize and PageNumber request parameters become invalid, and the TotalCount in the response data is also invalid.', 'type' => 'string', 'example' => 'NextToken'], 'RequestId' => ['title' => '请求ID。无论调用接口成功与否,我们都会返回请求 ID。', 'description' => 'Request ID. We return the request ID regardless of whether the API call was successful or not.', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], 'MaxResults' => ['description' => 'Number of items per page in a paginated query. The maximum value is 100.'."\n" ."\n" .'Default value:'."\n" ."\n" .'- If no value is set or the set value is less than 10, the default value is 10.'."\n" ."\n" .'- If the set value is greater than 100, the default value is 100.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"TagValues\\": [\\n \\"[\'90349\']\\"\\n ],\\n \\"NextToken\\": \\"NextToken\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\",\\n \\"MaxResults\\": 10\\n}","type":"json"}]', 'title' => 'DescribeUserTagValues', 'summary' => 'Centralized Role: Query User Disk and Snapshot tagValues', 'description' => '## Interface Description'."\n" ."\n" .'> The dedicated block storage cluster feature is currently supported in the following regions: South China 2 (Heyuan), Indonesia (Jakarta), and South China 1 (Shenzhen).'."\n" ."\n" .'- The request parameters act as a filter, with a logical AND relationship. If any parameter is empty, the filter does not take effect.'."\n" .'- For paginated queries, it is recommended to use the MaxResults and NextToken parameters. Usage instructions: When querying the first page, set only MaxResults to limit the number of returned entries. The NextToken in the response will serve as the token for querying subsequent pages. When querying subsequent pages, set the NextToken parameter to the value obtained from the previous response, and set MaxResults to limit the number of returned entries.', 'translator' => 'machine', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeUserTagValues', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'FailoverDiskReplicaGroup' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '115797', 'abilityTreeNodes' => ['FEATUREdiskPPYCY9'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the secondary site of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'group-myreplica****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.NoPairInGroup', 'errorMessage' => 'The operation is not allowed because no pair in the group.', 'description' => 'The operation is not supported while the specified replication pair-consistent group has no replication pairs.'], ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => 'The operation is not supported while the state of the replication pair is not the same as that of the replication pair-consistent group.'], ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => 'The operation is not supported while the replication pair-consistent group and the replication pair do not belong to the same region and zone.'], ['errorCode' => 'OperationDenied.PairInAnotherGroup', 'errorMessage' => 'The operation is not allowed because pair is already in another group.', 'description' => 'The operation is not supported while the replication pair is added to another replication pair-consistent group.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', 'errorMessage' => 'Operation is not allowed on the primary site.', 'description' => 'The operation is not allowed on the primary site.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForStandby', 'errorMessage' => 'Operation is not allowed on the secondary site.', 'description' => 'The operation is not allowed on the secondary site.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'FailoverDiskReplicaGroup', 'summary' => 'Enables the failover feature for replication pairs in a replication pair-consistent group. When the primary disks of specific replication pairs in a replication pair-consistent group fail, you can call this operation to enable the read and write permissions on the secondary disks.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which the replication pair-consistent group feature is available, see [Overview](~~314563~~).'."\n" .'* The replication pair-consistent group must be in the **One-time Syncing** (`manual_syncing`), **Syncing** (`syncing`), **Normal** (`normal`), **Stopping** (`stopping`), **Stop Failed** (`stop_failed`), **Stopped** (`stopped`), **In Failover** (`failovering`), **Failover Failed** (`failover_failed`), or **Failovered** (`failovered`) state.'."\n" .'* After a failover is performed, the replication pair-consistent group enters the **Failovered** (`failovered`) state.'."\n" .'* Before you perform a failover, make sure that the first full data synchronization is completed between the primary site and secondary site.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:FailoverDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'FailoverDiskReplicaPair' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '71755', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the secondary disk in the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query region IDs of secondary disks in replication pairs.'."\n" ."\n" .'> The failover feature must be enabled for the region where the secondary disk is located.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', 'errorMessage' => 'Operation is not allowed on the primary site.', 'description' => 'The operation is not allowed on the primary site.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForStandby', 'errorMessage' => 'Operation is not allowed on the secondary site.', 'description' => 'The operation is not allowed on the secondary site.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'FailoverDiskReplicaPair', 'summary' => 'Enables the failover feature for replication pairs.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which async replication is available, see [Overview](~~314563~~).'."\n" .'* The replication pair for which you want to enable failover cannot be in the **Invalid** (`invalid`) or **Deleted** (`deleted`) state.'."\n" .'* After a failover is performed, the replication pair enters the **Failovered** (`failovered`) state.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:FailoverDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'GetReport' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '209319', 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ 'name' => 'ReportId', 'in' => 'formData', 'schema' => ['title' => 'ReportType=history时,必须传入ReportId,根据ReportId查询历史报告。', 'description' => 'When ReportType=history, ReportId is required to query historical reports based on ReportId.', 'type' => 'string', 'required' => false, 'example' => 'report-74fbea80e802xxxx'], ], [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['description' => 'Region name.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'cn-hangzhou'], ], [ 'name' => 'ReportType', 'in' => 'query', 'schema' => ['title' => '可选值:history/present', 'description' => 'Optional values: history/present.', 'type' => 'string', 'required' => false, 'example' => 'history'], ], [ 'name' => 'AppName', 'in' => 'query', 'schema' => ['title' => '可选值,只在ReportType=present时AppName才会生效', 'description' => 'Optional, AppName only takes effect when ReportType=present.', 'type' => 'string', 'required' => false, 'example' => 'App1'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'GetReportResponse', 'description' => 'GetReportResponse.', 'type' => 'object', 'properties' => [ 'Datas' => [ 'description' => 'Data Details.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Title' => ['description' => 'Data Title.', 'type' => 'string', 'example' => 'disk_count_percent_by_category', 'title' => ''], 'Data' => [ 'description' => 'Data.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Labels' => ['description' => 'Data Labels.', 'type' => 'object', 'example' => '{'."\n" .' "category": "cloud"'."\n" .'}', 'title' => ''], 'DataPoints' => ['description' => 'Data Points.', 'type' => 'object', 'example' => '{'."\n" .' "1726416000": 0.44,'."\n" .' "1726502400": 0.44,'."\n" .' "1726588800": 0.44,'."\n" .' "1726675200": 0.44,'."\n" .' "1726761600": 0.43,'."\n" .' "1726848000": 0.43,'."\n" .' "1726934400": 0.43,'."\n" .' "1727020800": 0.43'."\n" .'}', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'Request ID.', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'title' => 'Get User Cloud Disk Usage Report', 'summary' => 'Centralized Role: Obtain User Usage Report with reportId', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetReport'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:GetReport', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Datas\\": [\\n {\\n \\"Title\\": \\"disk_count_percent_by_category\\",\\n \\"Data\\": [\\n {\\n \\"Labels\\": {\\n \\"category\\": \\"cloud\\"\\n },\\n \\"DataPoints\\": {\\n \\"1726416000\\": 0.44,\\n \\"1726502400\\": 0.44,\\n \\"1726588800\\": 0.44,\\n \\"1726675200\\": 0.44,\\n \\"1726761600\\": 0.43,\\n \\"1726848000\\": 0.43,\\n \\"1726934400\\": 0.43,\\n \\"1727020800\\": 0.43\\n }\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","type":"json"}]', ], 'ListReplicaEdgeSupported' => [ 'summary' => 'Queries the destination regions and zones that support asynchronous replication for a specified zone.', 'methods' => ['get', 'post'], 'schemes' => ['https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '186462', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], 'tenantRelevance' => 'publicInformation', ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Azone', 'in' => 'query', 'schema' => ['description' => 'The zone ID.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou-h', 'title' => ''], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['description' => 'The token that is used to start the next query. Set this parameter to the value of NextToken that was returned by the last call. Do not set this parameter for the first call. If you set NextToken, PageSize and PageNumber are ignored. TotalCount is also invalid in the response. This parameter is not enabled.', 'type' => 'string', 'title' => '', 'required' => false, 'example' => 'e71d8a535bd9c****'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['description' => 'The maximum number of entries to return on each page. Valid values: 1 to 500. This parameter is not enabled.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'type' => 'object', 'properties' => [ 'SupportedRegions' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'RegionId' => ['description' => 'The region ID.', 'type' => 'string', 'title' => '', 'example' => 'cn-hangzhou'], 'Zones' => [ 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'SupportRtc' => ['description' => 'Indicates whether replication time control is supported.', 'type' => 'boolean', 'title' => '', 'example' => 'false'], 'ZoneId' => ['description' => 'The zone ID.', 'type' => 'string', 'title' => '', 'example' => 'cn-hangzhou-i'], ], 'description' => 'The zone information.', 'title' => '', 'example' => '', ], 'description' => 'The set of zone information.', 'title' => '', 'example' => '', ], ], 'description' => '', 'title' => '', 'example' => '', ], 'description' => 'The set of region information.', 'title' => '', 'example' => '', ], 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'title' => '', 'example' => '17EE62D8-064E-5404-8B0D-72122478****'], 'NextToken' => ['description' => 'The token that is used to start the next query. If NextToken is empty, no more results are available.', 'type' => 'string', 'example' => 'e71d8a535bd9c****', 'title' => ''], 'MaxResults' => ['description' => 'The maximum number of entries to return on each page.'."\n" ."\n" .'Valid values: 1 to 500.'."\n" ."\n" .'Default value: 10.', 'type' => 'integer', 'format' => 'int32', 'example' => '10', 'title' => ''], ], 'title' => '', 'description' => 'ListReplicaPairEdgeResponse', 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'title' => 'ListReplicaEdgeSupported', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"SupportedRegions\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Zones\\": [\\n {\\n \\"SupportRtc\\": false,\\n \\"ZoneId\\": \\"cn-hangzhou-i\\"\\n }\\n ]\\n }\\n ],\\n \\"RequestId\\": \\"17EE62D8-064E-5404-8B0D-72122478****\\",\\n \\"NextToken\\": \\"e71d8a535bd9c****\\",\\n \\"MaxResults\\": 10\\n}","type":"json"}]', ], 'ListReports' => [ 'summary' => 'Queries the historical report list for a specified application using a centralized role.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '200638', 'abilityTreeNodes' => ['FEATUREdisk2F270T'], ], 'parameters' => [ [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The pagination token. Set this parameter to the value of NextToken returned in the previous API call.', 'type' => 'string', 'required' => false, 'example' => 'a6792e832ff0XXXXX'], ], [ 'name' => 'MaxResults', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The maximum number of entries to return when using token-based pagination.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], ], [ 'name' => 'PageSize', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The number of entries per page in a paged query.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '100'], ], [ 'name' => 'PageNumber', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The page number in a paged query.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '1'], ], [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~354276~~) to query the regions supported by EBS Lens.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The application ID.', 'type' => 'string', 'required' => false, 'example' => 'app-xxx', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'DescribeAppHistoryReportsResponse', 'type' => 'object', 'properties' => [ 'HistoryReports' => [ 'title' => '', 'description' => 'historyReports', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'AppName' => ['description' => 'The application name.', 'type' => 'string', 'example' => 'default', 'title' => ''], 'ReportId' => ['description' => 'The report ID.', 'type' => 'string', 'example' => 'report-e19c7b597f5fXX', 'title' => ''], 'ReportTime' => ['description' => 'The time when the report was generated (UTC).', 'type' => 'string', 'example' => '2024-10-07T02:09:17Z', 'title' => ''], 'SubscribePeriod' => ['description' => 'The subscription period of the report.', 'type' => 'string', 'example' => 'Weekly', 'title' => ''], 'ReportName' => ['description' => 'The report name.', 'type' => 'string', 'example' => 'default-2024-09-30~2024-10-07-Usage Report', 'title' => ''], ], 'description' => '', 'title' => '', 'example' => '', ], 'example' => '', ], 'NextToken' => ['title' => '', 'description' => 'The pagination token. Set this parameter to the value of NextToken returned in the previous API call.', 'type' => 'string', 'example' => 'a6792e832ff0XXXX'], 'PageNumber' => ['title' => '', 'description' => 'The page number in a paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '1'], 'PageSize' => ['title' => '', 'description' => 'The number of entries per page in a paged query.', 'type' => 'integer', 'format' => 'int32', 'example' => '10'], 'TotalCount' => ['title' => '', 'description' => 'The total number of entries.', 'type' => 'integer', 'format' => 'int64', 'example' => '1'], 'RequestId' => ['description' => 'The request ID generated by Alibaba Cloud for this request.', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'staticInfo' => ['returnType' => 'synchronous'], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"HistoryReports\\": [\\n {\\n \\"AppName\\": \\"default\\",\\n \\"ReportId\\": \\"report-e19c7b597f5fXX\\",\\n \\"ReportTime\\": \\"2024-10-07T02:09:17Z\\",\\n \\"SubscribePeriod\\": \\"Weekly\\",\\n \\"ReportName\\": \\"default-2024-09-30~2024-10-07-Usage Report\\"\\n }\\n ],\\n \\"NextToken\\": \\"a6792e832ff0XXXX\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Query usage report list', 'changeSet' => [ ['createdAt' => '2025-06-10T02:34:55.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2025-05-15T01:56:18.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListReports'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:ListReports', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ListTagResources' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'list', 'abilityTreeCode' => '140645', 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The ID list of the resource. You can specify up to 50 resource IDs in each call.', 'type' => 'array', 'items' => ['description' => 'The ID of resource N. Valid values of N: 1 to 50.'."\n", 'type' => 'string', 'required' => false, 'example' => 'pair-cn-c4d2t7f****', 'title' => ''], 'required' => false, 'example' => 'disk-123', 'maxItems' => 51, ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The information about the tags.'."\n" ."\n" .'You can specify at most 20 tags in each call.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'Key' => ['title' => '', 'description' => 'The key of tag N used for exact search of EBS resources. The tag key must be 1 to 128 characters in length. Valid values of N: 1 to 20.'."\n" ."\n" .'The `Tag.N` parameter pair (Tag.N.Key and Tag.N.Value) is used for exact search of EBS resources that have specified tags added. Each tag is a key-value pair.'."\n" ."\n" .'* If you specify only `Tag.N.Key`, all EBS resources whose tags contain the specified tag key are returned.'."\n" .'* If you specify only `Tag.N.Value`, the `InvalidParameter.TagValue` error is returned.'."\n" .'* If you specify multiple tag key-value pairs at the same time, only EBS resources that match all tag key-value pairs are returned.'."\n", 'type' => 'string', 'required' => false, 'example' => 'tag-key'], 'Value' => ['title' => '', 'description' => 'The value of tag N used for exact search of EBS resources. The tag value must be 1 to 128 characters in length. Valid values of N: 1 to 20.'."\n", 'type' => 'string', 'required' => false, 'example' => 'tag-value'], ], 'required' => false, 'description' => 'The tags that you want to attach to the resource.', 'title' => '', ], 'required' => false, 'maxItems' => 21, ], ], [ 'name' => 'NextToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The token used to start the next query.'."\n", 'type' => 'string', 'required' => false, 'example' => 'token123'], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the resource. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The type of the resource. Valid values:'."\n" ."\n" .'* dedicatedblockstoragecluster: dedicated block storage cluster'."\n" .'* diskreplicapair: replication pair'."\n" .'* diskreplicagroup: replication pair-consistent group', 'type' => 'string', 'required' => true, 'example' => 'diskreplicagroup'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that the value 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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'ListTagResourcesResponse', 'description' => 'ListTagResourcesResponse', 'type' => 'object', 'properties' => [ 'NextToken' => ['title' => '', 'description' => 'The token used to start the next query.'."\n", 'type' => 'string', 'example' => 'caeba0bbb2be03f84eb48b699f0a****'], 'TagResources' => [ 'title' => '', 'description' => 'Details about the resources and tags, including resource IDs, resource types, and tag key-value pairs.'."\n", 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['title' => '', 'description' => 'The tag key of the resource.'."\n", 'type' => 'string', 'example' => 'TestKey'], 'TagValue' => ['title' => '', 'description' => 'The tag value of the resource.'."\n", 'type' => 'string', 'example' => 'TestValue'], 'ResourceId' => ['title' => '', 'description' => 'The ID of the resource.'."\n", 'type' => 'string', 'example' => 'pair-cn-c4d2t7f****'], 'ResourceType' => ['title' => '', 'description' => 'The type of the resource. Valid values:'."\n" ."\n" .'* dedicatedblockstoragecluster: dedicated block storage cluster'."\n" .'* diskreplicapair: replication pair'."\n" .'* diskreplicagroup: replication pair-consistent group', 'type' => 'string', 'example' => 'pair'], ], 'description' => 'The details about the resource to which the tags are added.'."\n", 'title' => '', ], ], 'RequestId' => ['title' => '', 'description' => 'The ID of the request. The request ID is returned regardless of whether the call is successful.'."\n", 'type' => 'string', 'example' => '484256DA-D816-44D2-9D86-B6EE4D5B****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => ''], ['errorCode' => 'NumberExceed.ResourceIds', 'errorMessage' => 'The ResourceIds parameter number is exceed , Valid : 50', 'description' => ''], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'NumberExceed.Tags', 'description' => ''], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', 'description' => ''], ['errorCode' => 'IdempotentParameterMismatch', 'errorMessage' => 'The specified parameter has changed while using an already used clientToken.', 'description' => 'The request and a previous request contains the same client token but different parameters.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NextToken\\": \\"caeba0bbb2be03f84eb48b699f0a****\\",\\n \\"TagResources\\": [\\n {\\n \\"TagKey\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\",\\n \\"ResourceId\\": \\"pair-cn-c4d2t7f****\\",\\n \\"ResourceType\\": \\"pair\\"\\n }\\n ],\\n \\"RequestId\\": \\"484256DA-D816-44D2-9D86-B6EE4D5B****\\"\\n}","type":"json"}]', 'title' => 'ListTagResources', 'summary' => 'Queries the tags that are added to EBS resources, or queries the IDs and tags of resources in a non-default resource group.', 'description' => 'Specify at least one of the following parameters or parameter pairs in a request to determine a query object:'."\n" ."\n" .'* `ResourceId.N`'."\n" .'* `Tag.N` parameter pair (`Tag.N.Key` and `Tag.N.Value`)'."\n" ."\n" .'If you set `Tag.N` and `ResourceId.N` at the same time, the EBS resources that match both the parameters are returned.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:ListTagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'ModifyApp' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '193442', 'abilityTreeNodes' => ['FEATUREdisk2F270T', 'FEATUREdiskLP80G7'], ], 'parameters' => [ [ 'name' => 'AppName', 'in' => 'query', 'allowEmptyValue' => true, 'schema' => ['title' => '', 'description' => 'The name of the app.', 'type' => 'string', 'required' => false, 'example' => 'App1'], ], [ 'name' => 'AppTags', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The custom tags.', 'type' => 'array', 'items' => [ 'type' => 'object', 'properties' => [ 'TagKey' => ['description' => 'The tag key.', 'type' => 'string', 'required' => false, 'example' => 'key', 'title' => ''], 'TagValue' => ['description' => 'The tag value.', 'type' => 'string', 'required' => false, 'example' => 'value', 'title' => ''], ], 'required' => false, 'description' => '', 'title' => '', 'example' => '', ], 'required' => true, 'example' => 'default', 'maxItems' => 100, ], ], [ 'name' => 'SubscribeStatus', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The subscription status of the app usage report. Valid values:'."\n" ."\n" .'- UnSubscribe'."\n" .'- Subscribe.', 'type' => 'string', 'required' => true, 'example' => 'Subscribe'], ], [ 'name' => 'SubscribePeriod', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The send interval of the app usage report. Valid values:'."\n" .'- Weekly'."\n" .'- Biweekly'."\n" .'- Monthly.', 'type' => 'string', 'required' => true, 'example' => 'Weekly'], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The description of the app.', 'type' => 'string', 'required' => false, 'example' => 'This is description.'], ], [ 'name' => 'ReportSendEnabled', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Specifies whether to send reports to email and internal messages.', 'type' => 'boolean', 'required' => false, 'example' => 'true'], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => false, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'Owner', 'in' => 'query', 'schema' => ['description' => 'The owner.', 'type' => 'string', 'required' => false, 'example' => 'dev789`', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'A string generated by the server that serves as a request identifier for the client.', 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], [ 'name' => 'AppId', 'in' => 'query', 'schema' => ['description' => 'The app ID.', 'type' => 'string', 'required' => false, 'example' => 'app-xxx', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'LensResponse', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The request ID.', 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****', 'title' => ''], 'Code' => ['description' => 'The response code.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'UserCode' => ['description' => 'The user code.', 'type' => 'string', 'example' => 'OK', 'title' => ''], 'Message' => ['description' => 'The returned message.', 'type' => 'string', 'example' => 'successful', 'title' => ''], 'Success' => ['description' => 'Indicates whether the request was successful. Valid values: true: The request was successful. false: The request failed.', 'type' => 'boolean', 'example' => 'true', 'title' => ''], 'HttpStatusCode' => ['description' => 'The HTTP status code.', 'type' => 'integer', 'format' => 'int32', 'example' => '200', 'title' => ''], 'DynamicCode' => ['description' => 'The error code.', 'type' => 'string', 'example' => '200', 'title' => ''], 'DynamicMessage' => ['description' => 'The dynamic message. This parameter is not in use. Ignore this parameter.', 'type' => 'string', 'example' => '-', 'title' => ''], 'AccessDeniedDetail' => ['description' => 'The details about the access denial.', 'type' => 'string', 'example' => 'None', 'title' => ''], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'title' => 'Modify an app', 'summary' => 'Centralized role: Modifies an app.', 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\",\\n \\"Code\\": \\"OK\\",\\n \\"UserCode\\": \\"OK\\",\\n \\"Message\\": \\"successful\\",\\n \\"Success\\": true,\\n \\"HttpStatusCode\\": 200,\\n \\"DynamicCode\\": \\"200\\",\\n \\"DynamicMessage\\": \\"-\\",\\n \\"AccessDeniedDetail\\": \\"None\\"\\n}","type":"json"}]', ], 'ModifyDedicatedBlockStorageClusterAttribute' => [ 'methods' => ['post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '138430', 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the dedicated block storage cluster. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-heyuan'], ], [ 'name' => 'DbscId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the dedicated block storage cluster.'."\n", 'type' => 'string', 'required' => true, 'example' => 'dbsc-cn-od43bf****'], ], [ 'name' => 'DbscName', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The new name of the dedicated block storage cluster.'."\n", 'type' => 'string', 'required' => true, 'example' => 'my-test-dbsc'], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The new description of dedicated block storage cluster.'."\n", 'type' => 'string', 'required' => false, 'example' => 'test'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests.'."\n" ."\n" .'The ClientToken value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How do I ensure idempotence ](~~25693~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'description' => '', 'type' => 'object', 'properties' => [ 'RequestId' => ['description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '11B55F58-D3A4-4A9B-9596-342420D0****', 'title' => ''], ], 'title' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => ''], ['errorCode' => 'MissingParameter.ResourceType', 'errorMessage' => 'The parameter - ResourceType should not be null', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"11B55F58-D3A4-4A9B-9596-342420D0****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n 11B55F58-D3A4-4A9B-9596-342420D0****\\n","errorExample":""}]', 'title' => 'ModifyDedicatedBlockStorageClusterAttribute', 'summary' => 'Modifies the information of a dedicated elastic block storage cluster.', 'description' => 'You can call this operation to modify the information of a dedicated block storage cluster. The information includes the name and description of the cluster.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyDedicatedBlockStorageClusterAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], ], ], 'ModifyDiskReplicaGroup' => [ 'summary' => 'Modifies the name, description, or Recovery Point Objective (RPO) of a replication pair-consistent group.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '115799', 'abilityTreeNodes' => ['FEATUREdiskPPYCY9'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair-consistent group.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group. Call [DescribeDiskReplicaGroups](~~426614~~) to query the IDs of replication pair-consistent groups.', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****', 'title' => ''], ], [ 'name' => 'GroupName', 'in' => 'query', 'schema' => ['description' => 'The name of the replication pair-consistent 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://`. The name can contain digits, colons (:), underscores (\\_), and hyphens (-).', 'type' => 'string', 'required' => false, 'example' => 'myreplicagrouptest', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the replication pair-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' => 'RPO', 'in' => 'query', 'schema' => ['description' => 'The recovery point objective (RPO) of the replication pair-consistent group. Unit: seconds. A value of 900 is supported.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token to ensure the idempotence of the request. Generate a unique value for this parameter from your client. 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-42665544****', 'title' => ''], ], [ 'name' => 'Bandwidth', 'in' => 'query', 'schema' => ['description' => 'The bandwidth. Unit: Kbps.'."\n" ."\n" .'> This parameter is not available.', 'type' => 'integer', 'format' => 'int64', 'title' => '', 'required' => false, 'example' => 'null'], ], [ 'name' => 'EnableRtc', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable replication time control (RTC). Valid values:'."\n" ."\n" .'- false: RTC is disabled.'."\n" ."\n" .'- true: RTC is enabled.'."\n" ."\n" .'> If this parameter is set to true, RTC is enabled for the replication pair-consistent group. RTC is also enabled for all asynchronous replication pairs that are added to the group.', 'type' => 'boolean', 'title' => '', 'required' => false, 'example' => 'true'], ], ], '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' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.GroupHasPair', 'errorMessage' => 'The group cannot be deleted due to not empty.', 'description' => 'The replication pair-consistent group contains replication pairs and cannot be deleted.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', 'errorMessage' => 'Operation is not allowed on the primary site.', 'description' => 'The operation is not allowed on the primary site.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForStandby', 'errorMessage' => 'Operation is not allowed on the secondary site.', 'description' => 'The operation is not allowed on the secondary site.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","type":"json"}]', 'title' => 'ModifyDiskReplicaGroup', 'description' => '## Description'."\n" ."\n" .'- For information about the regions that support the replication pair-consistent group feature, see [Overview of asynchronous replication](~~314563~~).'."\n" ."\n" .'- The replication pair-consistent group must be in the **Created** (`created`) or **Stopped** (`stopped`) state.', 'changeSet' => [ ['createdAt' => '2025-07-07T11:22:39.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-03-30T09:09:55.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-08-16T11:40:00.000Z', 'description' => 'Request parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifyDiskReplicaGroup'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'ModifyDiskReplicaPair' => [ 'summary' => 'Modifies an async replication pair.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'riskType' => 'none', 'chargeType' => 'free', 'abilityTreeCode' => '44716', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the primary or secondary disk in the replication pair. You can call [DescribeRegions](~~354276~~) to query the regions that support async replication.', 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair.', 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', 'title' => ''], ], [ 'name' => 'PairName', 'in' => 'query', 'schema' => ['description' => 'The name of the replication pair.', 'type' => 'string', 'required' => false, 'example' => 'TestReplicaPair', 'title' => ''], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['description' => 'The description of the replication pair.', 'type' => 'string', 'required' => false, 'example' => 'This is description.', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'A client token to ensure the idempotence of the request. Generate a value for this parameter from your client. Make sure that the value 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-42665544****', 'title' => ''], ], [ 'name' => 'Bandwidth', 'in' => 'query', 'schema' => ['description' => 'The bandwidth for async replication, in Kbps.'."\n" ."\n" .'> This parameter is not yet available.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '10240', 'title' => ''], ], [ 'name' => 'RPO', 'in' => 'query', 'schema' => ['description' => 'The recovery point objective (RPO) of the replication pair-consistent group. Unit: seconds. Currently, only a value of 900 is supported.', 'type' => 'integer', 'format' => 'int64', 'required' => false, 'example' => '900', 'title' => ''], ], [ 'name' => 'EnableRtc', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable replication time control (RTC). Valid values:'."\n" ."\n" .'- false: Disables RTC.'."\n" ."\n" .'- true: Enables RTC.'."\n" ."\n" .'Default value: false.'."\n" ."\n" .'> If a replication pair is part of a replication group, its RTC setting is the same as the setting of the group.', 'type' => 'boolean', 'title' => '', 'required' => false, 'example' => 'true'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Response schema', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], 'example' => '', ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', 'errorMessage' => 'Operation is not allowed on the primary site.', 'description' => 'The operation is not allowed on the primary site.'], ['errorCode' => 'OperationDenied.OperateNotAllowedForStandby', 'errorMessage' => 'Operation is not allowed on the secondary site.', 'description' => 'The operation is not allowed on the secondary site.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","type":"json"}]', 'title' => 'ModifyDiskReplicaPair', 'description' => '## Description'."\n" ."\n" .'- For information about the regions that support the asynchronous replication feature, see [Overview of asynchronous replication](~~314563~~).'."\n" ."\n" .'- You can modify the name or description of a replication pair only when the pair is in the **Created** (`created`) or **Stopped** (`stopped`) state.', 'changeSet' => [ ['createdAt' => '2025-07-07T11:22:38.000Z', 'description' => 'Request parameters changed'], ['createdAt' => '2023-03-30T09:09:55.000Z', 'description' => 'Error codes changed'], ['createdAt' => '2022-06-23T11:05:57.000Z', 'description' => 'Error codes changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifyDiskReplicaPair'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'QueryDedicatedBlockStorageClusterDiskThroughputStatus' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '207585', 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ 'name' => 'QosRequestId', 'in' => 'formData', 'schema' => [ 'description' => 'The ID of the request of SetDedicatedBlockStorageClusterDiskThroughput api.', 'type' => 'string', 'required' => true, 'enumValueTitles' => [], 'example' => 'A37597B5-BB99-19B3-85EA-4C2B91F0****', 'title' => '', ], ], [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['description' => 'The region ID of the dedicated block storage cluster.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The 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-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'QueryDbscDiskQosStatusResponse', 'description' => 'QueryDbscDiskQosStatusResponse', 'type' => 'object', 'properties' => [ 'Status' => [ 'description' => 'The status of the throughput after setting the throughput by SetDedicatedBlockStorageClusterDiskThroughput api.'."\n" ."\n" .'- SUCCESS: The throughput has been successfully set.'."\n" .'- RUNNING: The throughput is currently being set.'."\n" .'- WAIT(): The throughput is waiting to be set.'."\n" .'- FAIL(): The throughput setting has failed.', 'type' => 'string', 'enumValueTitles' => ['SUCCESS' => '成功', 'RUNNING' => '正常运行', 'WAIT' => '待执行', 'FAIL' => '失败'], 'example' => 'RUNNING', 'title' => '', ], 'RequestId' => ['title' => '', 'description' => 'The ID of the request.', 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource does not exist.'], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => 'An internal error has occurred.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"RUNNING\\",\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","type":"json"}]', 'title' => 'QueryDedicatedBlockStorageClusterDiskThroughputStatus', 'summary' => 'Query the throughput status of a dedicated block storage cluster disk which has been set through the SetDedicatedBlockStorageClusterDiskThroughput API.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:QueryDedicatedBlockStorageClusterDiskThroughputStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'QueryDedicatedBlockStorageClusterInventoryData' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'read', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'get', 'abilityTreeCode' => '149411', 'abilityTreeNodes' => ['FEATUREdisk1O4P8E'], ], 'parameters' => [ [ 'name' => 'DbscId', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'The ID of the dedicated block storage cluster.'."\n", 'type' => 'string', 'required' => true, 'example' => 'dbsc-xxx'], ], [ 'name' => 'Period', 'in' => 'formData', 'schema' => [ 'title' => '', 'description' => 'The time interval (seconds) between data retrieval points.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'enumValueTitles' => [60 => '60', 3600 => '3600', 86400 => '86400'], 'example' => '60', ], ], [ 'name' => 'StartTime', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'Start timestamp of trend data.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1606303800'], ], [ 'name' => 'EndTime', 'in' => 'formData', 'schema' => ['title' => '', 'description' => 'End timestamp of trend data.', 'type' => 'integer', 'format' => 'int64', 'required' => true, 'example' => '1606403800'], ], [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['description' => 'The region ID of the dedicated block storage cluster.', 'type' => 'string', 'required' => true, 'example' => 'cn-shenzhen', '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 value, but you must ensure that it is unique among different requests.'."\n" ."\n" .'The ClientToken value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How do I ensure idempotence ](~~25693~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'DescribeDbscInventoryDataResponse', 'description' => 'DescribeDbscInventoryDataResponse', 'type' => 'object', 'properties' => [ 'DbscId' => ['title' => '', 'description' => 'The ID of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'dbsc-xxx'], 'DbscName' => ['title' => '', 'description' => 'The name of the dedicated block storage cluster.'."\n", 'type' => 'string', 'example' => 'myDBSCCluster'], 'DiskCategory' => ['title' => '', 'description' => 'The type of the disk. Valid values:'."\n" ."\n" .'* cloud_essd: enhanced SSD (ESSD).', 'type' => 'string', 'example' => 'cloud_essd'], 'TotalCount' => ['title' => '', 'description' => 'The total number of entries returned.'."\n", 'type' => 'integer', 'format' => 'int32', 'example' => '60'], 'Data' => [ 'title' => '', 'description' => 'The returned data.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The information about the array object.'."\n", 'type' => 'object', 'properties' => [ 'MonitorItems' => [ 'description' => 'The returned metrics.', 'type' => 'object', 'properties' => [ 'AvailableSize' => ['description' => 'Available capacity size of the dedicated block storage cluster.', 'type' => 'integer', 'format' => 'int64', 'example' => '61360', 'title' => ''], 'TotalSize' => ['description' => 'Total capacity size of the dedicated block storage cluster.', 'type' => 'integer', 'format' => 'int64', 'example' => '61440', 'title' => ''], ], 'title' => '', ], 'Timestamp' => ['title' => '', 'description' => 'The timestamp when the data is collected.', 'type' => 'string', 'example' => '1606403800'], 'ResourceId' => ['title' => '', 'description' => 'The ID list of the resource.', 'type' => 'string', 'example' => 'dbsc-xxx'], ], 'title' => '', ], ], 'RequestId' => ['title' => '', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'F1A4258A-0C8C-5329-B495-BC5AD7AD****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidTime.Malformed', 'errorMessage' => 'The specified parameter StartTime or EndTime is not valid.', 'description' => ''], ['errorCode' => 'InvalidParameter.EndTime', 'errorMessage' => 'The specified parameter EndTime is earlier than StartTime.', 'description' => ''], ['errorCode' => 'InvalidPeriod.ValueNotSupported', 'errorMessage' => 'The specified parameter Period is not valid', 'description' => ''], ['errorCode' => 'InvalidParameter.TooManyDataQueried', 'errorMessage' => 'Too many data queried.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DbscId\\": \\"dbsc-xxx\\",\\n \\"DbscName\\": \\"myDBSCCluster\\",\\n \\"DiskCategory\\": \\"cloud_essd\\",\\n \\"TotalCount\\": 60,\\n \\"Data\\": [\\n {\\n \\"MonitorItems\\": {\\n \\"AvailableSize\\": 61360,\\n \\"TotalSize\\": 61440\\n },\\n \\"Timestamp\\": \\"1606403800\\",\\n \\"ResourceId\\": \\"dbsc-xxx\\"\\n }\\n ],\\n \\"RequestId\\": \\"F1A4258A-0C8C-5329-B495-BC5AD7AD****\\"\\n}","type":"json"}]', 'title' => 'QueryDedicatedBlockStorageClusterInventoryData', 'summary' => 'Queries the capacity trend data of a dedicated Elastic Block Storage (EBS) cluster within a specific time period, including the available capacity and total capacity.', 'description' => 'Period is the time interval between data retrieval points. When set to 60 (minute interval), a maximum of 1440 data points can be returned; when set to 3600 (hour interval), a maximum of 744 data points can be returned; and when set to 86400 (day interval), a maximum of 366 data points can be returned.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:QueryDedicatedBlockStorageClusterInventoryData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], ], ], 'RemoveDiskReplicaPair' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '115802', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group.'."\n" ."\n" .'You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the IDs of replication pair-consistent groups.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.GroupStatusCannotRemovePair', 'errorMessage' => 'The pair cannot be removed in group current status.', 'description' => 'The replication pair cannot be removed from the replication pair-consistent group while the group is in the current state.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.NoPairInGroup', 'errorMessage' => 'The operation is not allowed because no pair in the group.', 'description' => 'The operation is not supported while the specified replication pair-consistent group has no replication pairs.'], ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => 'The operation is not supported while the replication pair-consistent group and the replication pair do not belong to the same region and zone.'], ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => 'The operation is not supported while the state of the replication pair is not the same as that of the replication pair-consistent group.'], ['errorCode' => 'OperationDenied.PairInAnotherGroup', 'errorMessage' => 'The operation is not allowed because pair is already in another group.', 'description' => 'The operation is not supported while the replication pair is added to another replication pair-consistent group.'], ['errorCode' => 'OperationDenied.PairNotInGroup', 'errorMessage' => 'The operation is not allowed because pair is not in any group.', 'description' => 'The operation is not supported while the specified replication pair belongs to no replication pair-consistent groups.'], ['errorCode' => 'OperationDenied.PairStatusCannotRemoveFromGroup', 'errorMessage' => 'The pair cannot be removed in pair current status.', 'description' => 'The replication pair cannot be removed from the replication pair-consistent group while the pair is in the current state.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'RemoveDiskReplicaPair', 'summary' => 'Removes a replication pair from a replication pair-consistent group. After a replication pair is removed from a replication pair-consistent group, the pair is disassociated from the group but is not deleted.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which the replication pair-consistent group feature is available, see [Overview](~~314563~~).'."\n" .'* The replication pair-consistent group from which you want to remove a replication pair must be in the **Created** (`created`), **Stopped** (`stopped`), or **Invalid** (`invalid`) state.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:RemoveDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'ReprotectDiskReplicaGroup' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '115794', 'abilityTreeNodes' => ['FEATUREdiskAQUAFH', 'FEATUREdiskVW208V'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the IDs of replication pair-consistent groups.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the IDs of replication pair-consistent groups.', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****', '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-42665544****', 'title' => ''], ], [ 'name' => 'ReverseReplicate', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the reverse replication sub-feature. Valid values: true and false. Default value: true.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', '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.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => ''], ['errorCode' => 'OperationDenied.NoPairInGroup', 'errorMessage' => 'The operation is not allowed because no pair in the group.', 'description' => ''], ['errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', 'errorMessage' => 'Operation is not allowed on the primary site.', 'description' => ''], ['errorCode' => 'OperationDenied.OperateNotAllowedForStandby', 'errorMessage' => 'Operation is not allowed on the secondary site.', 'description' => ''], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'ReprotectDiskReplicaGroup', 'summary' => 'Enables the reverse replication feature for replication pairs that belong to a replication pair-consistent group. After reverse replication is enabled, data stored on the original secondary disks is replicated to the original primary disks. When a reverse replication is being performed, the primary and secondary sites of the replication pair-consistent group remain unchanged, but data is replicated from the secondary site to the primary site.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which the replication pair-consistent group feature is available, see [Overview](~~314563~~).'."\n" .'* The replication pair-consistent group for which you want to enable reverse replication must be in the **Failovered** (`failovered`) state. You can call the `FailoverDiskReplicaPair` operation to enable failover.'."\n" .'* Before a reverse replication is performed, the primary disks must be detached from its associated Elastic Compute Service (ECS) instance and must be in the Unattached state. You can call the [DetachDisk](~~25516~~) operation to detach the disks.'."\n" .'* After you enable reverse replication, you must call the `StartDiskReplicaPair` operation again to enable the async replication feature before data can be replicated from the original secondary disks to the original primary disks.'."\n" .'* You can set the ReverseReplicate parameter to false to cancel the **Failovered** (`failovered`) state and restore the original replication direction.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ReprotectDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'ReprotectDiskReplicaPair' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '71806', 'abilityTreeNodes' => ['FEATUREdiskAQUAFH', 'FEATUREdiskVW208V'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the secondary disk in the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query region IDs of secondary disks in replication pairs.'."\n" ."\n" .'> The reverse replication feature must be enabled from the region where the secondary disk is located.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-shanghai', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'ReverseReplicate', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to enable the reverse replication sub-feature. Valid values: true and false. Default value: true.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'true', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => ''], ['errorCode' => 'OperationDenied.NoPairInGroup', 'errorMessage' => 'The operation is not allowed because no pair in the group.', 'description' => ''], ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => ''], ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => ''], ['errorCode' => 'OperationDenied.PairNotInGroup', 'errorMessage' => 'The operation is not allowed because pair is not in any group.', 'description' => ''], ['errorCode' => 'OperationDenied.OperateNotAllowedForPrimary', 'errorMessage' => 'Operation is not allowed on the primary site.', 'description' => ''], ['errorCode' => 'OperationDenied.OperateNotAllowedForStandby', 'errorMessage' => 'Operation is not allowed on the secondary site.', 'description' => ''], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'ReprotectDiskReplicaPair', 'summary' => 'Enables the reverse replication feature for a replication pair.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which async replication is available, see [Overview](~~314563~~).'."\n" .'* The replication pair for which you want to enable reverse replication must be in the **Failovered** (`failovered`) state. You can call the [FailoverDiskReplicaPair](~~354358~~) operation to enable failover.'."\n" .'* The primary disk must be detached from its associated Elastic Compute Service (ECS) instance and is in the Unattached state. You can call the [DetachDisk](~~25516~~) operation to detach the disk.'."\n" .'* After you enable reverse replication, you must call the [StartDiskReplicaPair](~~354205~~) operation again to activate the replication pair before data can be replicated from the original secondary disk to the original primary disk.'."\n" .'* You can set the ReverseReplicate parameter to false to cancel the **Failovered** (`failovered`) state and restore the original replication direction.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ReprotectDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'SetDedicatedBlockStorageClusterDiskThroughput' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'DiskId', 'in' => 'formData', 'schema' => ['description' => 'The ID of the disk.'."\n", 'type' => 'string', 'required' => true, 'example' => 'd-bp67acfmxazb4p****', 'title' => ''], ], [ 'name' => 'RegionId', 'in' => 'formData', 'schema' => ['description' => 'The region ID of disk.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'Bps', 'in' => 'formData', 'schema' => ['description' => 'Target throughput.', 'type' => 'integer', 'format' => 'int32', 'required' => true, 'example' => '100', 'title' => ''], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The 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-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Response', 'description' => 'Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '17EE62D8-064E-5404-8B0D-72122478****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 429 => [ ['errorCode' => 'BLOCK.LimitedRequest', 'errorMessage' => 'Request was denied due to user flow control.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"17EE62D8-064E-5404-8B0D-72122478****\\"\\n}","type":"json"}]', 'title' => 'SetDedicatedBlockStorageClusterDiskThroughput', 'summary' => 'In the elastic type dedicated block storage cluster, you can easily achieve the specified throughput (Bps) for the target disk. You only need to set the cloud disk ID and the target throughput, simplifying the process of configuring.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:SetDedicatedBlockStorageClusterDiskThroughput', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'StartDiskReplicaGroup' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => ['operationType' => 'update'], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the IDs of replication pair-consistent groups.', 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****', '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 value, but you must make sure that the value 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-42665544****', 'title' => ''], ], [ 'name' => 'OneShot', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to immediately synchronize data once. Valid values:'."\n" ."\n" .'* true: immediately synchronizes data once.'."\n" .'* false: synchronizes data based on the RPO of the replication pair-consistent group.'."\n" ."\n" .'Default value: false.', 'type' => 'boolean', 'required' => false, 'example' => 'false', '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.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationDenied.StandbyDeviceAttached', 'errorMessage' => 'The secondary disk is attached.', 'description' => 'The secondary disk is attached to the instance at the secondary site. Stop the instance or detach the disk from the instance.'], ], 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.ManualSyncLimit', 'errorMessage' => 'One shot start manual syncing too frequently, please try again later.', 'description' => 'The requirements of the cooldown period after manual synchronization operations are not met.'], ['errorCode' => 'OperationDenied.NoPairInGroup', 'errorMessage' => 'The operation is not allowed because no pair in the group.', 'description' => 'The operation is not supported while the specified replication pair-consistent group has no replication pairs.'], ['errorCode' => 'OperationDenied.PairGroupStatusConflict', 'errorMessage' => 'The operation is not allowed due to pair and group status are not consistent.', 'description' => 'The operation is not supported while the state of the replication pair is not the same as that of the replication pair-consistent group.'], ['errorCode' => 'OperationDenied.PairGroupAZoneConflict', 'errorMessage' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'description' => 'The operation is not supported while the replication pair-consistent group and the replication pair do not belong to the same region and zone.'], ['errorCode' => 'OperationDenied.PairNotInGroup', 'errorMessage' => 'The operation is not allowed because pair is not in any group.', 'description' => 'The operation is not supported while the specified replication pair belongs to no replication pair-consistent groups.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'StartDiskReplicaGroup', 'summary' => 'Enables the async replication feature for replication pairs that belong to a replication pair-consistent group. The first time the async replication feature is enabled for the replication pairs, the system performs a full synchronization to synchronize all data from disks at the primary site (primary disks) to disks at the secondary site (secondary disks). Then, the system periodically synchronizes incremental data based on the recovery point objective (RPO) of the replication pair-consistent group.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which the replication pair-consistent group feature is available, see [Overview](~~314563~~).'."\n" .'* If you set the `OneShot` to `false`, the replication pair-consistent group must be in the **Created** (`created` ), **Synchronizing** (`syncing` ), **Normal** (`normal` ), or **Stopped** (`stopped`) state.'."\n" .'* If you set `OneShot` to `true`, the replication pair-consistent group must be in the **Created** (`created` ), **One-time Syncing** (`manual_syncing` ), or **Stopped** (`stopped`) state. The time interval between two consecutive one-time synchronizations must be longer than one half of the recovery point objective (RPO).'."\n" .'* After a replication pair-consistent group is activated, the group enters the **Initial Syncing** (`initial_syncing`) state and the system performs the first async replication to replicate all data from the primary disks to secondary disks.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:StartDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'StartDiskReplicaPair' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '48741', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the primary or secondary disk in the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query the region information of replication pairs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], [ 'name' => 'OneShot', 'in' => 'query', 'schema' => ['description' => 'Specifies whether to immediately synchronize data. Valid values:'."\n" ."\n" .'* true: immediately synchronizes data.'."\n" .'* false: synchronizes data based on the recovery point objective (RPO).'."\n" ."\n" .'Default value: false.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'OperationDenied.StandbyDeviceAttached', 'errorMessage' => 'The secondary disk is attached.', 'description' => 'The secondary disk is attached to the instance at the secondary site. Stop the instance or detach the disk from the instance.'], ], 403 => [ ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied.ManualSyncLimit', 'errorMessage' => 'One shot start manual syncing too frequently, please try again later.', 'description' => 'The requirements of the cooldown period after manual synchronization operations are not met.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n A37597A6-BB99-19B3-85EA-4C2B91F0****\\n","errorExample":""}]', 'title' => 'StartDiskReplicaPair', 'summary' => 'Activates the async replication feature for a specific replication pair.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which async replication is available, see [Overview](~~314563~~).'."\n" .'* Only replication pairs that are in the **Created** (`created`) or **Stopped** (`stopped`) state can be activated.'."\n" .'* After a replication pair is activated, it enters the **Initial Syncing** (`initial_syncing`) state and the system performs the first asynchronous replication to replicate all data from the primary disk to the secondary disk.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:StartDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'StartPairDrill' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '186458', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the secondary disk in the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query the region in which the secondary disk of the replication pair resides.'."\n" ."\n" .'> You must enable the disaster recovery drill feature in the region in which the secondary site resides.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'PairId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query a list of replication pairs, including replication pair IDs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-xxxx'], ], [ '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'StartPairDrillResponse', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'DrillId' => ['title' => '', 'description' => 'The drill ID.'."\n", 'type' => 'string', 'example' => 'drill-xxx'], 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.RecoverPointNotFound', 'errorMessage' => 'Recover point is not found.', 'description' => 'No recovery points are available for the replication pair or replication pair-consistent group.'], ['errorCode' => 'OperationDenied.StartDrillShouldOnDestRegion', 'errorMessage' => 'Operation should be executed on the secondary region.', 'description' => 'This operation must be performed at the secondary site.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"DrillId\\": \\"drill-xxx\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n drill-xxx\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'StartPairDrill', 'summary' => 'Starts a disaster recovery drill to ensure the continued replication and clone the data from the last recovery point of the secondary disk to a new disk. This helps you test the completeness and correctness of applications that are deployed on the disaster recovery site on a regular basis.', 'description' => 'After the disaster recovery drill is complete on the secondary disk, a pay-as-you-go drill disk that has the same capacity and category as the secondary disk is created in the zone where the secondary disk resides. The drill disk contains last-recovery-point data that can be used to test the completeness and correctness of applications.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:StartPairDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#PairId}'], ], ], ], ], ], 'StartReplicaGroupDrill' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'deprecated' => false, 'systemTags' => [ 'operationType' => 'create', 'abilityTreeCode' => '189135', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the region where the secondary site in the replication pair-consistent group is located. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the region where the secondary site in the replication pair-consistent group is located.'."\n" ."\n" .'> You must enable the disaster recovery drill feature in the region in which the secondary site resides.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'GroupId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the replication pair-consistent group ID. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation the most recent list of async replication pair-consistent groups, including group IDs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-xxxx'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'StartPairGroupDrillResponse', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'DrillId' => ['title' => '', 'description' => 'The drill ID.'."\n", 'type' => 'string', 'example' => 'pg-drill-xxxx'], 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'OperationDenied.RecoverPointNotFound', 'errorMessage' => 'Recover point is not found.', 'description' => 'No recovery points are available for the replication pair or replication pair-consistent group.'], ['errorCode' => 'OperationDenied.StartDrillShouldOnDestRegion', 'errorMessage' => 'Operation should be executed on the secondary region.', 'description' => 'This operation must be performed at the secondary site.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"DrillId\\": \\"pg-drill-xxxx\\",\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n pg-drill-xxxx\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'StartReplicaGroupDrill', 'summary' => 'Starts a disaster recovery drill in a replication pair-consistent group to ensure the continued replication and restores data from the latest recovery point of secondary disks to new disks. This helps test the completeness and correctness of applications that are deployed on the disaster recovery site on a regular basis.', 'description' => 'After the disaster recovery drill is complete on secondary disks, a pay-as-you-go drill disk is created in the zone where the secondary disk of each replication pair resides. The latest-recovery-point data is restored to the drill disks to test the completeness and correctness of applications.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:StartReplicaGroupDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#GroupId}'], ], ], ], ], ], 'StopDiskReplicaGroup' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '115796', 'abilityTreeNodes' => ['FEATUREdiskVW208V', 'FEATUREdiskAQUAFH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the replication pair-consistent group.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing', 'title' => ''], ], [ 'name' => 'ReplicaGroupId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair-consistent group. You can call the [DescribeDiskReplicaGroups](~~426614~~) operation to query the IDs of replication pair-consistent groups.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pg-myreplica****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'Schema of Response'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => 'C123F94F-4E38-19AE-942A-A8D6F44F****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C123F94F-4E38-19AE-942A-A8D6F44F****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C123F94F-4E38-19AE-942A-A8D6F44F****\\n","errorExample":""}]', 'title' => 'StopDiskReplicaGroup', 'summary' => 'Stops a replication pair-consistent group. This operation stops all replication pairs in the replication pair-consistent group.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which the replication pair-consistent group feature is available, see [Overview](~~314563~~).'."\n" .'* The replication pair-consistent group that you want to stop must be in the **One-time Syncing** (`manual_syncing`), **Syncing** (`syncing`), **Normal** (`normal`), **Stopping** (`stopping`), **Stop Failed** (`stop_failed`), or **Stopped** (`stopped`) state.'."\n" .'* When a replication pair-consistent group is stopped, it enters the **Stopped** (`stopped`) state. If a replication pair-consistent group cannot be stopped, the state of the group remains unchanged or changes to **Stop Failed** (`stop_failed`). In this case, try again later.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:StopDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], ], ], 'StopDiskReplicaPair' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'none', 'abilityTreeCode' => '48742', 'abilityTreeNodes' => ['FEATUREdiskVW208V'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['description' => 'The region ID of the primary or secondary disk in the replication pair. You can call the [DescribeDiskReplicaPairs](~~354206~~) operation to query the region information of replication pairs.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou', 'title' => ''], ], [ 'name' => 'ReplicaPairId', 'in' => 'query', 'schema' => ['description' => 'The ID of the replication pair.'."\n", 'type' => 'string', 'required' => true, 'example' => 'pair-cn-dsa****', '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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Schema of Response', 'description' => 'The schema of the response.'."\n", 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => 'Id of the request', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => 'A37597A6-BB99-19B3-85EA-4C2B91F0****'], ], ], ], ], 'errorCodes' => [ 403 => [ ['errorCode' => 'OperationDenied.InvalidStatus', 'errorMessage' => 'The operation is not allowed in current status.', 'description' => 'The operation is not supported in the current state.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ], [ ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A37597A6-BB99-19B3-85EA-4C2B91F0****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n A37597A6-BB99-19B3-85EA-4C2B91F0****\\n","errorExample":""}]', 'title' => 'StopDiskReplicaPair', 'summary' => 'Stops a replication pair.', 'description' => '## [](#)Usage notes'."\n" ."\n" .'* For information about the regions in which async replication is available, see [Overview](~~314563~~).'."\n" .'* Only replication pairs that are in the **Initial Syncing** (`initial_syncing`), **Syncing** (`syncing`), **One-time Syncing** (`manual_syncing`), or **Normal** (`normal`) state can be stopped. When a replication pair is stopped, it enters the Stopped (`stopped`) state. The secondary disk rolls back to the point in time when the last async replication was complete and drops all the data that is being replicated from the primary disk.'."\n", 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'none', 'ramAction' => [ 'action' => 'ebs:StopDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], ], ], 'TagResources' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => ['operationType' => 'create'], 'parameters' => [ [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The ID list of the resources. You can specify up to 50 IDs in each request.', 'type' => 'array', 'items' => ['description' => 'The ID of resource N. Valid values of N: 1 to 50.'."\n", 'type' => 'string', 'required' => false, 'example' => 'pair-cn-c4d2t7f****', 'title' => ''], 'required' => true, 'example' => 'disk-123', 'maxItems' => 51, ], ], [ 'name' => 'Tag', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The resource tags. You can specify up to 20 tags.'."\n", 'type' => 'array', 'items' => [ 'description' => 'The value of tag N used for exact search of EBS resources. The tag value must be 1 to 128 characters in length. Valid values of N: 1 to 20.'."\n", 'type' => 'object', 'properties' => [ 'Key' => ['title' => '', 'description' => 'The key of tag N to add to 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 contain `http://` or `https://`. It cannot start with `acs:` or `aliyun`.'."\n", 'type' => 'string', 'required' => true, 'example' => 'tag-key'], 'Value' => ['title' => '', 'description' => 'The value of tag N to add to 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 `acs:` or contain `http://` or `https://`.'."\n", 'type' => 'string', 'required' => true, 'example' => 'tag-value'], ], 'required' => false, 'title' => '', ], 'required' => true, 'maxItems' => 21, ], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the resource. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The type of the resource. Valid values:'."\n" ."\n" .'* dedicatedblockstoragecluster: dedicated block storage cluster'."\n" .'* diskreplicapair: replication pair'."\n" .'* diskreplicagroup: replication pair-consistent group', 'type' => 'string', 'required' => true, 'example' => 'diskreplicagroup'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that the value is unique among different requests. The **ClientToken** value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see [How to ensure idempotence](~~25693~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'TagResponse', 'description' => 'TagResponse', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The ID of the request. The request ID is returned regardless of whether the call is successful.'."\n", 'type' => 'string', 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => ''], ['errorCode' => 'NumberExceed.ResourceIds', 'errorMessage' => 'The ResourceIds parameter number is exceed , Valid : 50', 'description' => ''], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'NumberExceed.Tags', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => ''], ['errorCode' => 'MissingParameter.ResourceType', 'errorMessage' => 'The parameter - ResourceType should not be null', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n 473469C7-AA6F-4DC5-B3DB-A3DC0DE3****\\n","errorExample":""}]', 'title' => 'TagResources', 'summary' => 'Creates tags and adds the tags to Elastic Block Storage (EBS) resources.', 'description' => 'Before you add tags to a resource, Alibaba Cloud checks the number of existing tags of the resource. If the maximum number of tags is reached, an error message is returned. For more information, see the "Tag limits" section in [Limits](~~25412~~).', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:TagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/{#SolutionInstanceId}'], ], ], ], ], ], 'UnbindEnterpriseSnapshotPolicy' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '159100', 'abilityTreeNodes' => ['FEATUREdiskAAH44P'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID . You can call the [DescribeRegions](~~354276~~) operation to query the most recent list of regions in which snapshot policy is supported.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['title' => 'the id of the snapshot policy', 'description' => 'The id of the policy.', 'type' => 'string', 'required' => true, 'example' => 'esp-xxs'], ], [ 'name' => 'DiskTargets', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => 'the disk targets', 'description' => 'The list of disks.', 'type' => 'array', 'items' => ['description' => 'The id of a disk.', 'type' => 'string', 'required' => false, 'example' => 'd-xxx', 'title' => ''], 'required' => false, 'maxItems' => 10, ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'The client token that is used to ensure the idempotency 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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****', 'title' => ''], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'Response', 'description' => 'Response', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.'."\n", 'type' => 'string', 'example' => '061DE1AB-08BA-5ACD-A03A-440117C6939A'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"061DE1AB-08BA-5ACD-A03A-440117C6939A\\"\\n}","errorExample":""},{"type":"xml","example":"\\n xxx\\n","errorExample":""}]', 'title' => 'UnbindEnterpriseSnapshotPolicy', 'summary' => 'Unbind disks from a enterprise-level snapshot policy.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:UnbindEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], ], ], 'UntagResources' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'delete', 'abilityTreeCode' => '140644', 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ 'name' => 'ResourceId', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The ID list of the resource. You can specify up to 50 resource IDs in each call.', 'type' => 'array', 'items' => ['description' => 'The ID of resource N. Valid values of N: 1 to 50.'."\n", 'type' => 'string', 'required' => false, 'example' => 'pair-cn-c4d2t7f****', 'title' => ''], 'required' => true, 'example' => 'disk-123', 'maxItems' => 51, ], ], [ 'name' => 'TagKey', 'in' => 'query', 'style' => 'repeatList', 'schema' => [ 'title' => '', 'description' => 'The list of tag keys. You can specify up to 20 tag keys in the list.'."\n", 'type' => 'array', 'items' => ['description' => 'The key of tag N. Valid values of N: 1 to 20.'."\n", 'type' => 'string', 'required' => false, 'example' => 'TestKey', 'title' => ''], 'required' => false, 'example' => 'disk-123', 'maxItems' => 21, ], ], [ 'name' => 'All', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'Specifies whether to remove all tags from the resource. This parameter is valid only when the TagKey.N parameter is not specified. Valid values:'."\n" ."\n" .'* true: removes all tags from the resource.'."\n" .'* false: does not remove all tags from the resource.'."\n" ."\n" .'Default value: false.'."\n", 'type' => 'boolean', 'required' => false, 'example' => 'false'], ], [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID of the resource. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'ResourceType', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The type of the resource. Valid values:'."\n" ."\n" .'* dedicatedblockstoragecluster: dedicated block storage cluster'."\n" .'* diskreplicapair: the replication pair.'."\n" .'* diskreplicagroup: replication pair-consistent group', 'type' => 'string', 'required' => true, 'example' => 'diskreplicapair'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that it 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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '0c593ea1-3bea-11e9-b96b-88e9fe63****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'TagResponse', 'description' => 'TagResponse', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The ID of the request. The request ID is returned regardless of whether the call is successful.'."\n", 'type' => 'string', 'example' => 'C46FF5A8-C5F0-4024-8262-B16B6392****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ['errorCode' => 'Duplicate.TagKey', 'errorMessage' => 'The Tag.N.Key contain duplicate key.', 'description' => ''], ['errorCode' => 'NumberExceed.ResourceIds', 'errorMessage' => 'The ResourceIds parameter number is exceed , Valid : 50', 'description' => ''], ['errorCode' => 'NumberExceed.Tags', 'errorMessage' => 'NumberExceed.Tags', 'description' => ''], ['errorCode' => 'OperationDenied.QuotaExceed', 'errorMessage' => 'The quota of tags on resource is beyond permitted range.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'InvalidResourceId.NotFound', 'errorMessage' => 'The specified ResourceIds are not found in our records.', 'description' => ''], ['errorCode' => 'InvalidResourceType.NotFound', 'errorMessage' => 'The ResourceType provided does not exist in our records.', 'description' => ''], ['errorCode' => 'InvalidRegionId.NotFound', 'errorMessage' => 'The specified RegionId does not exist.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C46FF5A8-C5F0-4024-8262-B16B6392****\\"\\n}","errorExample":""},{"type":"xml","example":"\\n C46FF5A8-C5F0-4024-8262-B16B6392****\\n","errorExample":""}]', 'title' => 'UntagResources', 'summary' => 'Removes tags from specified Elastic Block Storage (EBS) resources.', 'description' => '* You can remove up to 20 tags at a time.'."\n" .'* After a tag is removed from an EBS resource, the tag is automatically deleted if the tag is not added to any instance.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:UntagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], ], 'UpdateEnterpriseSnapshotPolicy' => [ 'summary' => 'Modifies the configuration of an enterprise-level snapshot policy.', 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'readAndWrite', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '159103', 'abilityTreeNodes' => ['FEATUREdisk1W6OYH'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The region ID. You can call [DescribeRegions](~~25609~~) to query the most recent region list.', 'type' => 'string', 'required' => true, 'example' => 'cn-hangzhou'], ], [ 'name' => 'PolicyId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The snapshot policy ID.', 'type' => 'string', 'required' => true, 'example' => 'esp-xxx'], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the policy to modify.', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], [ 'name' => 'State', 'in' => 'query', 'schema' => [ 'title' => '', 'description' => 'The status of the snapshot policy. Valid values:'."\n" ."\n" .'- ENABLED'."\n" .'- DISABLED', 'enumValueTitles' => ['DISABLED' => 'DISABLED', 'ENABLED' => 'ENABLED'], 'type' => 'string', 'example' => 'ENABLED', 'required' => false, ], ], [ 'name' => 'Desc', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The description of the snapshot policy.', 'type' => 'string', 'required' => false, 'example' => 'xxx'], ], [ 'name' => 'Schedule', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The schedule rule.', 'type' => 'object', 'properties' => [ 'CronExpression' => ['title' => '', 'description' => 'The execution cycle and time of the policy. A cron expression is used.'."\n" ."\n" .'For example, `0 0 4 1/1 * ?` specifies that the snapshot operation is performed at 04:00 every day, starting from the first day of each month.', 'type' => 'string', 'required' => true, 'example' => '0 0 */24 * * *'], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'RetainRule', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The retention rule.', 'type' => 'object', 'properties' => [ 'Number' => ['title' => '', 'description' => 'The number of snapshots to retain. Valid values: 1 to 256.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '10'], 'TimeInterval' => ['title' => '', 'description' => 'The time interval of the retention rule. The unit is specified by the TimeUnit parameter. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '14'], 'TimeUnit' => [ 'title' => '', 'description' => 'The unit of the retention time. Valid values:'."\n" ."\n" .'- DAYS'."\n" .'- WEEKS', 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], 'type' => 'string', 'required' => false, 'example' => 'DAYS', ], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'SpecialRetainRules', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The special retention rules.', 'type' => 'object', 'properties' => [ 'Enabled' => [ 'title' => '', 'description' => 'Specifies whether to enable special retention. Valid values:'."\n" ."\n" .'- true'."\n" .'- false', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'false', ], 'Rules' => [ 'title' => '', 'description' => 'The list of special retention rules. Multiple rules are supported.', 'type' => 'array', 'items' => [ 'description' => 'The special retention rules.', 'type' => 'object', 'properties' => [ 'SpecialPeriodUnit' => [ 'title' => '', 'description' => 'The period unit for special retention snapshots. For example, if this parameter is set to WEEKS, the first snapshot of each week is given special retention. The retention duration is determined by the TimeUnit and TimeInterval parameters. Valid values:'."\n" ."\n" .'- WEEKS'."\n" .'- MONTHS'."\n" .'- YEARS', 'enumValueTitles' => ['MONTHS' => 'MONTHS', 'YEARS' => 'YEARS', 'WEEKS' => 'WEEKS'], 'type' => 'string', 'example' => 'WEEKS', 'required' => false, ], 'TimeInterval' => ['title' => '', 'description' => 'The time interval of the retention rule. The unit is specified by the TimeUnit parameter. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '30'], 'TimeUnit' => [ 'title' => '', 'description' => 'The unit of the retention time for special snapshots. Valid values:'."\n" ."\n" .'- DAYS'."\n" .'- WEEKS', 'enumValueTitles' => ['WEEKS' => 'WEEKS', 'DAYS' => 'DAYS'], 'type' => 'string', 'example' => 'DAYS', 'required' => false, ], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'CrossRegionCopyInfo', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The cross-region copy destination information.', 'type' => 'object', 'properties' => [ 'Enabled' => [ 'title' => '', 'description' => 'Specifies whether to enable cross-region replication. Valid values:'."\n" ."\n" .'- true'."\n" .'- false', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'false', ], 'Regions' => [ 'title' => '', 'description' => 'The destination region information.', 'type' => 'array', 'items' => [ 'description' => 'The copy destination region information.', 'type' => 'object', 'properties' => [ 'RegionId' => ['title' => '', 'description' => 'The destination region ID for snapshot replication. You can call [DescribeDiskReplicaPairs](~~354206~~) to query the region information of existing asynchronous replication relationships.', 'type' => 'string', 'required' => false, 'example' => 'cn-hangzhou'], 'RetainDays' => ['title' => '', 'description' => 'The number of days to retain snapshots in the destination region. The value must be greater than 1.', 'type' => 'integer', 'format' => 'int32', 'required' => false, 'example' => '7'], ], 'required' => false, 'title' => '', 'example' => '', ], 'required' => false, 'example' => '', ], ], 'required' => false, 'example' => '', ], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['description' => 'Ensures the idempotence of the request. Generate a parameter value from your client to ensure that the value is unique across different requests. The ClientToken value 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-42665544****', 'title' => ''], ], [ 'name' => 'StorageRule', 'in' => 'query', 'style' => 'json', 'schema' => [ 'title' => '', 'description' => 'The advanced snapshot feature.', 'type' => 'object', 'properties' => [ 'EnableImmediateAccess' => [ 'title' => '', 'description' => 'Specifies whether to enable instant access for snapshots. Valid values:'."\n" ."\n" .'- true'."\n" .'- false', 'enumValueTitles' => ['true' => 'true', 'false' => 'false'], 'type' => 'boolean', 'required' => false, 'example' => 'false', ], ], 'required' => false, 'example' => '', ], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => '', 'description' => 'The response.', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The request ID.', 'type' => 'string', 'example' => 'FED145A8-7D5F-5C60-B054-4EB2899A5996'], ], 'example' => '', ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => 'The specified parameter value is invalid.'], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => 'english description'], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => 'The parameter must be specified.'], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => 'You are not authorized to create service-linked roles.'], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => 'The operation is not supported.'], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => 'The specified resource 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.'], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => 'The request has timed out. Try again later.'], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FED145A8-7D5F-5C60-B054-4EB2899A5996\\"\\n}","type":"json"}]', 'gatewayOptions' => [ 'gatewayProtocols' => [], ], 'title' => 'Modify an enterprise-level snapshot policy', 'changeSet' => [ ['createdAt' => '2024-10-08T07:16:34.000Z', 'description' => 'Response parameters changed'], ], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEnterpriseSnapshotPolicy'], ], 'product' => ['code' => 'disk', 'title' => '块存储'], ], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:UpdateEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], ], ], 'UpdateSolutionInstanceAttribute' => [ 'methods' => ['get', 'post'], 'schemes' => ['http', 'https'], 'security' => [ [ 'AK' => [], ], ], 'operationType' => 'write', 'deprecated' => false, 'systemTags' => [ 'operationType' => 'update', 'abilityTreeCode' => '156758', 'abilityTreeNodes' => ['FEATUREdiskFDS0SW'], ], 'parameters' => [ [ 'name' => 'RegionId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the region where the dedicated block storage cluster resides. You can call the [DescribeRegions](~~25609~~) operation to query the most recent region list.'."\n", 'type' => 'string', 'required' => true, 'example' => 'cn-beijing'], ], [ 'name' => 'SolutionInstanceId', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The ID of the instance.', 'type' => 'string', 'required' => true, 'example' => 'inst-***'], ], [ 'name' => 'Name', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The name of the instance.', 'type' => 'string', 'required' => false, 'example' => 'defaultName'], ], [ 'name' => 'Description', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The description of the instance.', 'type' => 'string', 'required' => false, 'example' => 'defaultDescription'], ], [ 'name' => 'ClientToken', 'in' => 'query', 'schema' => ['title' => '', 'description' => 'The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that it 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~~).'."\n", 'type' => 'string', 'required' => false, 'example' => '123e4567-e89b-12d3-a456-42665544****'], ], ], 'responses' => [ 200 => [ 'schema' => [ 'title' => 'UpdateSlnInstanceAttributeResponse', 'description' => 'UpdateSlnInstanceAttributeResponse', 'type' => 'object', 'properties' => [ 'RequestId' => ['title' => '', 'description' => 'The ID of the request.'."\n", 'type' => 'string', 'example' => '20758A-585D-4A41-A9B2-28DA8F4F****'], ], ], ], ], 'errorCodes' => [ 400 => [ ['errorCode' => 'InvalidParameter', 'errorMessage' => 'The parameter %s is invalid.', 'description' => ''], ['errorCode' => 'InvalidParameter.Conflict', 'errorMessage' => 'The specified parameter %s and %s are not blank at the same time.', 'description' => ''], ['errorCode' => 'InvalidParameter.Format', 'errorMessage' => 'Specified parameter format is not valid.', 'description' => ''], ['errorCode' => 'MissingParameter', 'errorMessage' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'description' => ''], ], 403 => [ ['errorCode' => 'Forbidden', 'errorMessage' => 'User is not authorized to operate.', 'description' => ''], ['errorCode' => 'Forbidden.Action', 'errorMessage' => 'User is not authorized to operate this action.', 'description' => ''], ['errorCode' => 'InvalidAccountStatus.NotEnoughBalance', 'errorMessage' => 'Your account does not have enough balance.', 'description' => ''], ['errorCode' => 'LastTokenProcessing', 'errorMessage' => 'The last token request is processing.', 'description' => ''], ['errorCode' => 'NoPermission.SLR', 'errorMessage' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'description' => ''], ['errorCode' => 'OperationDenied', 'errorMessage' => 'The operation is not allowed.', 'description' => ''], ], [ ['errorCode' => 'InvalidApi.NotFound', 'errorMessage' => 'Specified api is not found, please check your url and method.', 'description' => ''], ['errorCode' => 'NoSuchResource.SlnInst', 'errorMessage' => 'The specified solution instance is not found.', 'description' => ''], ['errorCode' => 'NoSuchResource', 'errorMessage' => 'The specified resource does not exist.', 'description' => ''], ], 500 => [ ['errorCode' => 'InternalError', 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', 'description' => ''], ], 504 => [ ['errorCode' => 'RequestTimeout', 'errorMessage' => 'The request is timeout, please try again later.', 'description' => ''], ], ], 'eventInfo' => [ 'enable' => false, 'eventNames' => [], ], 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"20758A-585D-4A41-A9B2-28DA8F4F****\\"\\n}","type":"json"}]', 'title' => 'UpdateSolutionInstanceAttribute', 'summary' => 'Updates the attributes of a solution instance.', 'changeSet' => [], 'ramActions' => [ [ 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:UpdateSolutionInstanceAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/{#SolutionInstanceId}'], ], ], ], ], ], ], 'endpoints' => [ ['regionId' => 'cn-qingdao', 'regionName' => 'China (Qingdao)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-qingdao.aliyuncs.com', 'endpoint' => 'ebs.cn-qingdao.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-qingdao.aliyuncs.com'], ['regionId' => 'cn-beijing', 'regionName' => 'China (Beijing)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-beijing.aliyuncs.com', 'endpoint' => 'ebs.cn-beijing.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-beijing.aliyuncs.com'], ['regionId' => 'cn-zhangjiakou', 'regionName' => 'China (Zhangjiakou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-zhangjiakou.aliyuncs.com', 'endpoint' => 'ebs.cn-zhangjiakou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-zhangjiakou.aliyuncs.com'], ['regionId' => 'cn-zhengzhou-jva', 'regionName' => 'Zhengzhou (China Unicom Joint Venture)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-zhengzhou-jva.aliyuncs.com', 'endpoint' => 'ebs.cn-zhengzhou-jva.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-zhengzhou-jva.aliyuncs.com'], ['regionId' => 'cn-huhehaote', 'regionName' => 'China (Hohhot)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-huhehaote.aliyuncs.com', 'endpoint' => 'ebs.cn-huhehaote.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-huhehaote.aliyuncs.com'], ['regionId' => 'cn-wulanchabu', 'regionName' => 'China (Ulanqab)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-wulanchabu.aliyuncs.com', 'endpoint' => 'ebs.cn-wulanchabu.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-wulanchabu.aliyuncs.com'], ['regionId' => 'cn-hangzhou', 'regionName' => 'China (Hangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-hangzhou.aliyuncs.com', 'endpoint' => 'ebs.cn-hangzhou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-hangzhou.aliyuncs.com'], ['regionId' => 'cn-shanghai', 'regionName' => 'China (Shanghai)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-shanghai.aliyuncs.com', 'endpoint' => 'ebs.cn-shanghai.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-shanghai.aliyuncs.com'], ['regionId' => 'cn-nanjing', 'regionName' => 'China (Nanjing - Local Region)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-nanjing.aliyuncs.com', 'endpoint' => 'ebs.cn-nanjing.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-nanjing.aliyuncs.com'], ['regionId' => 'cn-fuzhou', 'regionName' => 'China (Fuzhou - Local Region)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-fuzhou.aliyuncs.com', 'endpoint' => 'ebs.cn-fuzhou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-fuzhou.aliyuncs.com'], ['regionId' => 'cn-shenzhen', 'regionName' => 'China (Shenzhen)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-shenzhen.aliyuncs.com', 'endpoint' => 'ebs.cn-shenzhen.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-shenzhen.aliyuncs.com'], ['regionId' => 'cn-heyuan', 'regionName' => 'China (Heyuan)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-heyuan.aliyuncs.com', 'endpoint' => 'ebs.cn-heyuan.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-heyuan.aliyuncs.com'], ['regionId' => 'cn-guangzhou', 'regionName' => 'China (Guangzhou)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-guangzhou.aliyuncs.com', 'endpoint' => 'ebs.cn-guangzhou.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-guangzhou.aliyuncs.com'], ['regionId' => 'cn-chengdu', 'regionName' => 'China (Chengdu)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-chengdu.aliyuncs.com', 'endpoint' => 'ebs.cn-chengdu.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-chengdu.aliyuncs.com'], ['regionId' => 'cn-wuhan-lr', 'regionName' => 'China (Wuhan - Local Region)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-wuhan-lr.aliyuncs.com', 'endpoint' => 'ebs.cn-wuhan-lr.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-wuhan-lr.aliyuncs.com'], ['regionId' => 'cn-hongkong', 'regionName' => 'China (Hong Kong)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.cn-hongkong.aliyuncs.com', 'endpoint' => 'ebs.cn-hongkong.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-hongkong.aliyuncs.com'], ['regionId' => 'ap-northeast-1', 'regionName' => 'Japan (Tokyo)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-northeast-1.aliyuncs.com', 'endpoint' => 'ebs.ap-northeast-1.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-northeast-1.aliyuncs.com'], ['regionId' => 'ap-northeast-2', 'regionName' => 'South Korea (Seoul)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-northeast-2.aliyuncs.com', 'endpoint' => 'ebs.ap-northeast-2.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-northeast-2.aliyuncs.com'], ['regionId' => 'ap-southeast-1', 'regionName' => 'Singapore', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-southeast-1.aliyuncs.com', 'endpoint' => 'ebs.ap-southeast-1.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-southeast-1.aliyuncs.com'], ['regionId' => 'ap-southeast-2', 'regionName' => 'Australia (Sydney) Closed', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-southeast-2.aliyuncs.com', 'endpoint' => 'ebs.ap-southeast-2.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-southeast-2.aliyuncs.com'], ['regionId' => 'ap-southeast-3', 'regionName' => 'Malaysia (Kuala Lumpur)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-southeast-3.aliyuncs.com', 'endpoint' => 'ebs.ap-southeast-3.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-southeast-3.aliyuncs.com'], ['regionId' => 'ap-southeast-5', 'regionName' => 'Indonesia (Jakarta)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-southeast-5.aliyuncs.com', 'endpoint' => 'ebs.ap-southeast-5.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-southeast-5.aliyuncs.com'], ['regionId' => 'ap-southeast-6', 'regionName' => 'Philippines (Manila)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-southeast-6.aliyuncs.com', 'endpoint' => 'ebs.ap-southeast-6.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-southeast-6.aliyuncs.com'], ['regionId' => 'ap-southeast-7', 'regionName' => 'Thailand (Bangkok)', 'areaId' => 'asiaPacific', 'areaName' => 'Asia Pacific', 'public' => 'ebs.ap-southeast-7.aliyuncs.com', 'endpoint' => 'ebs.ap-southeast-7.aliyuncs.com', 'vpc' => 'ebs-vpc.ap-southeast-7.aliyuncs.com'], ['regionId' => 'us-east-1', 'regionName' => 'US (Virginia)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ebs.us-east-1.aliyuncs.com', 'endpoint' => 'ebs.us-east-1.aliyuncs.com', 'vpc' => 'ebs-vpc.us-east-1.aliyuncs.com'], ['regionId' => 'us-west-1', 'regionName' => 'US (Silicon Valley)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ebs.us-west-1.aliyuncs.com', 'endpoint' => 'ebs.us-west-1.aliyuncs.com', 'vpc' => 'ebs-vpc.us-west-1.aliyuncs.com'], ['regionId' => 'eu-west-1', 'regionName' => 'UK (London)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ebs.eu-west-1.aliyuncs.com', 'endpoint' => 'ebs.eu-west-1.aliyuncs.com', 'vpc' => 'ebs-vpc.eu-west-1.aliyuncs.com'], ['regionId' => 'eu-central-1', 'regionName' => 'Germany (Frankfurt)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ebs.eu-central-1.aliyuncs.com', 'endpoint' => 'ebs.eu-central-1.aliyuncs.com', 'vpc' => 'ebs-vpc.eu-central-1.aliyuncs.com'], ['regionId' => 'na-south-1', 'regionName' => 'Mexico', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ebs.na-south-1.aliyuncs.com', 'endpoint' => 'ebs.na-south-1.aliyuncs.com', 'vpc' => ''], ['regionId' => 'us-southeast-1', 'regionName' => 'US(Atlanta)', 'areaId' => 'europeAmerica', 'areaName' => 'Europe & Americas', 'public' => 'ebs.us-southeast-1.aliyuncs.com', 'endpoint' => 'ebs.us-southeast-1.aliyuncs.com', 'vpc' => ''], ['regionId' => 'me-east-1', 'regionName' => 'UAE (Dubai)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'ebs.me-east-1.aliyuncs.com', 'endpoint' => 'ebs.me-east-1.aliyuncs.com', 'vpc' => ''], ['regionId' => 'me-central-1', 'regionName' => 'Saudi Arabia (Riyadh)', 'areaId' => 'middleEast', 'areaName' => 'Middle East', 'public' => 'ebs.me-central-1.aliyuncs.com', 'endpoint' => 'ebs.me-central-1.aliyuncs.com', 'vpc' => 'ebs-vpc.me-central-1.aliyuncs.com'], ['regionId' => 'cn-hangzhou-finance', 'regionName' => 'China East 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'ebs.cn-hangzhou-finance.aliyuncs.com', 'endpoint' => 'ebs.cn-hangzhou-finance.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-hangzhou-finance.aliyuncs.com'], ['regionId' => 'cn-shanghai-finance-1', 'regionName' => 'China East 2 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'ebs.cn-shanghai-finance-1.aliyuncs.com', 'endpoint' => 'ebs.cn-shanghai-finance-1.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-shanghai-finance-1.aliyuncs.com'], ['regionId' => 'cn-shenzhen-finance-1', 'regionName' => 'China South 1 Finance', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'ebs.cn-shenzhen-finance-1.aliyuncs.com', 'endpoint' => 'ebs.cn-shenzhen-finance-1.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-shenzhen-finance-1.aliyuncs.com'], ['regionId' => 'cn-beijing-finance-1', 'regionName' => 'China North 2 Finance (Preview)', 'areaId' => 'industryCloud', 'areaName' => 'Industry Cloud', 'public' => 'ebs.cn-beijing-finance-1.aliyuncs.com', 'endpoint' => 'ebs.cn-beijing-finance-1.aliyuncs.com', 'vpc' => 'ebs-vpc.cn-beijing-finance-1.aliyuncs.com'], ], 'errorCodes' => [ ['code' => 'AliCroup2CloudUserCannotBuyNotInnerCommodity', 'message' => 'There is no group cloud commodity label, and users within the group are not allowed to purchase.', 'http_code' => 403, 'description' => 'There is no group cloud commodity label, and users within the group are not allowed to purchase.'], ['code' => 'App.NumberExceed', 'message' => 'The number of apps exceeded.', 'http_code' => 400, 'description' => ''], ['code' => 'BLOCK.LimitedRquest', 'message' => 'BLOCK.LimitedRequest', 'http_code' => 429, 'description' => ''], ['code' => 'ControllerDevice.AlreadyAttached', 'message' => 'The specified disk as controller channel already attached.', 'http_code' => 400, 'description' => 'Specifies that the disk is in the mounted state'], ['code' => 'DocumentConvertFailed.ExceedFileSizeLimit', 'message' => 'The conversion has been failed, exceed file size limit.', 'http_code' => 400, 'description' => 'english description1'], ['code' => 'Duplicate.TagKey', 'message' => 'The Tag.N.Key contain duplicate key.', 'http_code' => 400, 'description' => ''], ['code' => 'Forbidden', 'message' => 'User is not authorized to operate.', 'http_code' => 403, 'description' => 'You are not authorized to manage the resource. Check the account permissions or contact the Alibaba Cloud account.'], ['code' => 'Forbidden.Action', 'message' => 'User is not authorized to operate this action.', 'http_code' => 403, 'description' => 'You are not authorized to perform this operation. Check the account permissions or contact the Alibaba Cloud account.'], ['code' => 'IdempotentParameterMismatch', 'message' => 'The specified parameter has changed while using an already used clientToken.', 'http_code' => 400, 'description' => 'The request and a previous request contains the same client token but different parameters.'], ['code' => 'IncorrectDiskStatus.CreatingSnapshot', 'message' => 'A previous snapshot creation is in process.', 'http_code' => 403, 'description' => ''], ['code' => 'InternalError', 'message' => 'The request processing has failed due to some unknown error, exception or failure.', 'http_code' => 500, 'description' => 'An internal error has occurred.'], ['code' => 'InternalInvokeError', 'message' => 'The internal invoking has failed.', 'http_code' => 400, 'description' => 'Service not available, please try again after a while'], ['code' => 'InvalidAccountStatus.NotEnoughBalance', 'message' => 'Your account does not have enough balance.', 'http_code' => 403, 'description' => ''], ['code' => 'InvalidDiskCategory.NotSupported', 'message' => 'The specified disk category is not supported.', 'http_code' => 403, 'description' => ''], ['code' => 'InvalidDiskSize.NotSupported', 'message' => 'The specified parameter size is not valid.', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidMetric', 'message' => 'The metric is invalid.', 'http_code' => 400, 'description' => 'Invalid indicator name.'], ['code' => 'InvalidParameter', 'message' => 'The parameter %s is invalid.', 'http_code' => 400, 'description' => 'The specified parameter value is invalid.'], ['code' => 'InvalidParameter.Conflict', 'message' => 'The specified parameter %s and %s are not blank at the same time.', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidParameter.EndTime', 'message' => 'The specified parameter EndTime is earlier than StartTime.', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidParameter.Format', 'message' => 'Specified parameter format is not valid.', 'http_code' => 400, 'description' => 'english description'], ['code' => 'InvalidParameter.TooManyDataQueried', 'message' => 'Too many data queried.', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidParameter.TooManyDataQueried', 'message' => 'Too many data queried in request.', 'http_code' => 400, 'description' => 'Query too much data.'], ['code' => 'InvalidPayMethod', 'message' => 'The specified pay method is not valid.', 'http_code' => 403, 'description' => ''], ['code' => 'InvalidPeriod.ValueNotSupported', 'message' => 'The specified parameter Period is not valid', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidPeriod.ValueNotSupported', 'message' => 'The specified parameter "Period" is not valid.', 'http_code' => 400, 'description' => 'The \'Period\' field is invalid.'], ['code' => 'InvalidRegionId.NotFound', 'message' => 'The specified RegionId does not exist.', 'http_code' => 404, 'description' => ''], ['code' => 'InvalidResourceGroup.NotFound', 'message' => 'The ResourceGroup provided does not exist in our records.', 'http_code' => 404, 'description' => ''], ['code' => 'InvalidResourceId.NotFound', 'message' => 'The specified ResourceId is not found in our records.', 'http_code' => 404, 'description' => ''], ['code' => 'InvalidResourceId.NotFound', 'message' => 'The specified ResourceIds are not found in our records.', 'http_code' => 404, 'description' => ''], ['code' => 'InvalidResourceType.NotFound', 'message' => 'The ResourceType provided does not exist in our records.', 'http_code' => 404, 'description' => ''], ['code' => 'InvalidTime.Malformed', 'message' => 'The specified parameter StartTime or EndTime is not valid.', 'http_code' => 400, 'description' => ''], ['code' => 'InvalidTime.Malformed', 'message' => 'The specified parameter "StartTime" or "EndTime" is not valid.', 'http_code' => 400, 'description' => 'The "StartTime" or "EndTime" parameter field format is incorrect.'], ['code' => 'InvalidZoneId.NotFound', 'message' => 'The specified ZoneId does not exist.', 'http_code' => 404, 'description' => ''], ['code' => 'INVALID_COMPONENT', 'message' => 'The order configuration parameters do not meet the validation criteria. Please reselect the parameters.', 'http_code' => 403, 'description' => 'The order configuration parameters do not meet the validation criteria. Please reselect the parameters.'], ['code' => 'LastTokenProcessing', 'message' => 'The last token request is processing.', 'http_code' => 403, 'description' => 'The value of clientToken is used in another request that is being processed. Try again later.'], ['code' => 'MissingParameter', 'message' => 'The input parameter %s that is mandatory for processing this request is not supplied.', 'http_code' => 400, 'description' => 'The parameter must be specified.'], ['code' => 'MissingParameter.ResourceGroup', 'message' => 'The parameter - Resource Group should not be null', 'http_code' => 404, 'description' => ''], ['code' => 'MissingParameter.ResourceIdsOrTags', 'message' => 'You must specify ResourceId.N or Tags', 'http_code' => 404, 'description' => ''], ['code' => 'MissingParameter.ResourceType', 'message' => 'The parameter - ResourceType should not be null', 'http_code' => 404, 'description' => ''], ['code' => 'NoPermission.SLR', 'message' => 'The RAM user does not have the permission to create service linked role: AliyunServiceLinkedRoleForEBS.', 'http_code' => 403, 'description' => 'You are not authorized to create service-linked roles.'], ['code' => 'NoSuchResource', 'message' => 'The specified resource does not exist.', 'http_code' => 404, 'description' => 'The specified resource does not exist.'], ['code' => 'NoSuchResource.Disk', 'message' => 'The specified disk does not exist.', 'http_code' => 404, 'description' => 'The disk does not exist.'], ['code' => 'NoSuchResource.Pair', 'message' => 'The specified replica pair does not exist.', 'http_code' => 404, 'description' => 'The replication pair does not exist.'], ['code' => 'NoSuchResource.SlnInst', 'message' => 'The specified solution instance is not found.', 'http_code' => 404, 'description' => ''], ['code' => 'NoSuchResource.Solution', 'message' => 'The specified solution is not found.', 'http_code' => 404, 'description' => ''], ['code' => 'NotOnSale.Region', 'message' => 'The specified region is not on sale.', 'http_code' => 403, 'description' => ''], ['code' => 'NotOnSale.Zone', 'message' => 'The specified zone is not on sale.', 'http_code' => 403, 'description' => ''], ['code' => 'NumberExceed.ResourceIds', 'message' => 'The ResourceIds parameter number is exceed , Valid : 50', 'http_code' => 400, 'description' => ''], ['code' => 'NumberExceed.Tags', 'message' => 'NumberExceed.Tags', 'http_code' => 400, 'description' => ''], ['code' => 'OperationDenied', 'message' => 'The operation is not allowed.', 'http_code' => 403, 'description' => 'The operation is not supported.'], ['code' => 'OperationDenied.GroupHasPair', 'message' => 'The group cannot be deleted due to not empty.', 'http_code' => 403, 'description' => 'The replication pair-consistent group contains replication pairs and cannot be deleted.'], ['code' => 'OperationDenied.GroupStatusCannotAddPair', 'message' => 'The pair cannot be added in group current status.', 'http_code' => 403, 'description' => 'The replication pair cannot be added to the replication pair-consistent group while the group is in the current state.'], ['code' => 'OperationDenied.GroupStatusCannotRemovePair', 'message' => 'The pair cannot be removed in group current status.', 'http_code' => 403, 'description' => 'The replication pair cannot be removed from the replication pair-consistent group while the group is in the current state.'], ['code' => 'OperationDenied.GroupTotalDiskCapacityLimit', 'message' => 'The disk space in the replication pair-consistent group exceeds the upper limit.', 'http_code' => 403, 'description' => 'The disk space in the replication pair-consistent group exceeds the upper limit.'], ['code' => 'OperationDenied.InvalidStatus', 'message' => 'The operation is not allowed in current status.', 'http_code' => 403, 'description' => 'The operation is not supported in the current state.'], ['code' => 'OperationDenied.ManualSyncLimit', 'message' => 'One shot start manual syncing too frequently, please try again later.', 'http_code' => 403, 'description' => 'The requirements of the cooldown period after manual synchronization operations are not met.'], ['code' => 'OperationDenied.NoPairInGroup', 'message' => 'The operation is not allowed because no pair in the group.', 'http_code' => 403, 'description' => 'The operation is not supported while the specified replication pair-consistent group has no replication pairs.'], ['code' => 'OperationDenied.OperateNotAllowedForPrimary', 'message' => 'Operation is not allowed on the primary site.', 'http_code' => 403, 'description' => 'The operation is not allowed on the primary site.'], ['code' => 'OperationDenied.OperateNotAllowedForStandby', 'message' => 'Operation is not allowed on the secondary site.', 'http_code' => 403, 'description' => 'The operation is not allowed on the secondary site.'], ['code' => 'OperationDenied.PairGroupAZoneConflict', 'message' => 'The operation is not allowed due to pair and group having different RegionId or ZoneId.', 'http_code' => 403, 'description' => 'The operation is not supported while the replication pair-consistent group and the replication pair do not belong to the same region and zone.'], ['code' => 'OperationDenied.PairGroupStatusConflict', 'message' => 'The operation is not allowed due to pair and group status are not consistent.', 'http_code' => 403, 'description' => 'The operation is not supported while the state of the replication pair is not the same as that of the replication pair-consistent group.'], ['code' => 'OperationDenied.PairInAnotherGroup', 'message' => 'The operation is not allowed because pair is already in another group.', 'http_code' => 403, 'description' => 'The operation is not supported while the replication pair is added to another replication pair-consistent group.'], ['code' => 'OperationDenied.PairInitializing', 'message' => 'The operation is not allowed due to pair initializing, please try again later.', 'http_code' => 403, 'description' => 'The operation is not supported while the replication pair is being initialized. Try again later.'], ['code' => 'OperationDenied.PairNotInGroup', 'message' => 'The operation is not allowed because pair is not in any group.', 'http_code' => 403, 'description' => 'The operation is not supported while the specified replication pair belongs to no replication pair-consistent groups.'], ['code' => 'OperationDenied.PairsExceedInGroup', 'message' => 'The operation is not allowed due to too much pair in the group.', 'http_code' => 403, 'description' => 'The operation is not supported while the maximum number of replication pairs in the replication pair-consistent group has been exceeded.'], ['code' => 'OperationDenied.PairStatusCannotAddToGroup', 'message' => 'The pair cannot be added in pair current status.', 'http_code' => 403, 'description' => 'The replication pair cannot be added to the replication pair-consistent group while the pair is in the current state.'], ['code' => 'OperationDenied.PairStatusCannotRemoveFromGroup', 'message' => 'The pair cannot be removed in pair current status.', 'http_code' => 403, 'description' => 'The replication pair cannot be removed from the replication pair-consistent group while the pair is in the current state.'], ['code' => 'OperationDenied.QuotaExceed', 'message' => 'The operation is not allowed due to quota exceed.', 'http_code' => 403, 'description' => 'The quota for performing this operation has been exceeded.'], ['code' => 'OperationDenied.QuotaExceed', 'message' => 'The quota of tags on resource is beyond permitted range.', 'http_code' => 400, 'description' => ''], ['code' => 'OperationDenied.QuotaExceed', 'message' => 'The operation is denied due to quota exceed.', 'http_code' => 403, 'description' => 'Your request exceeded the quota limit.'], ['code' => 'OperationDenied.RecoverPointNotFound', 'message' => 'Recover point is not found.', 'http_code' => 403, 'description' => 'No recovery points are available for the replication pair or replication pair-consistent group.'], ['code' => 'OperationDenied.StandbyDeviceAttached', 'message' => 'The secondary disk is attached.', 'http_code' => 400, 'description' => 'The secondary disk is attached to the instance at the secondary site. Stop the instance or detach the disk from the instance.'], ['code' => 'OperationDenied.StartDrillShouldOnDestRegion', 'message' => 'Operation should be executed on the secondary region.', 'http_code' => 403, 'description' => 'This operation must be performed at the secondary site.'], ['code' => 'OperationDenied.TooMuchEmptyGroup', 'message' => 'Operation failed because of too many empty groups.', 'http_code' => 403, 'description' => 'You have created excessive empty replication pair-consistent groups.'], ['code' => 'RequestTimeout', 'message' => 'The request is timeout, please try again later.', 'http_code' => 504, 'description' => 'The request has timed out. Try again later.'], ['code' => 'AssumeRoleFail.solution', 'message' => 'Assume role fail, please check RamRole for EBS Laboratory already exist and policy is correct.', 'http_code' => 403, 'description' => 'Assume role fail, please check RamRole for EBS Laboratory already exist and policy is correct.'], ], 'changeSet' => [], 'flowControl' => [ 'flowControlList' => [ ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskReplicaPairs'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateSolutionInstanceAttribute'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifyDiskReplicaGroup'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListTagResources'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteDiskReplicaGroup'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UntagResources'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskReplicaPairProgress'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifyDiskReplicaPair'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartReplicaGroupDrill'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CancelLensService'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'SetDedicatedBlockStorageClusterDiskThroughput'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ClearReplicaGroupDrill'], ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeMetricData'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ClearPairDrill'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryDedicatedBlockStorageClusterInventoryData'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribePairDrills'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskMonitorDataList'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ApplyLensService'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartDiskReplicaPair'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskEvents'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopDiskReplicaGroup'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartPairDrill'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskMonitorData'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateEnterpriseSnapshotPolicy'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UpdateEnterpriseSnapshotPolicy'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'UnbindEnterpriseSnapshotPolicy'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeEnterpriseSnapshotPolicy'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ReprotectDiskReplicaGroup'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDedicatedBlockStorageCluster'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'RemoveDiskReplicaPair'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ReprotectDiskReplicaPair'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDiskReplicaGroup'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'AddDiskReplicaPair'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'FailoverDiskReplicaPair'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ModifyDedicatedBlockStorageClusterAttribute'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'BindEnterpriseSnapshotPolicy'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'FailoverDiskReplicaGroup'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeRegions'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteDiskReplicaPair'], ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'GetReport'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDedicatedBlockStorageClusters'], ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ListReports'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDedicatedBlockStorageClusterDisks'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StopDiskReplicaPair'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'CreateDiskReplicaPair'], ['threshold' => '-1', 'countWindow' => 1, 'regionId' => '*'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeSolutionInstanceConfiguration'], ['threshold' => '10', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeReplicaGroupDrills'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeDiskReplicaGroups'], ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeEvents'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUserTagValues'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeLensServiceStatus'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'QueryDedicatedBlockStorageClusterDiskThroughputStatus'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'TagResources'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'ChangeResourceGroup'], ['threshold' => '25', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DeleteEnterpriseSnapshotPolicy'], ['threshold' => '12', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeLensMonitorDisks'], ['threshold' => '40', 'countWindow' => 1, 'regionId' => '*', 'api' => 'StartDiskReplicaGroup'], ['threshold' => '5', 'countWindow' => 1, 'regionId' => '*', 'api' => 'DescribeUserTagKeys'], ], 'product' => ['code' => 'disk', 'title' => 'ebs'], ], 'ram' => [ 'productCode' => 'EBS', 'productName' => 'Elastic Block Storage', 'ramCodes' => ['ebs'], 'ramLevel' => 'RESOURCE', 'ramConditions' => [], 'ramActions' => [ [ 'apiName' => 'UnbindEnterpriseSnapshotPolicy', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:UnbindEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], [ 'apiName' => 'ReprotectDiskReplicaGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ReprotectDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'ModifyDedicatedBlockStorageClusterAttribute', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyDedicatedBlockStorageClusterAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], [ 'apiName' => 'DescribeLensServiceStatus', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeLensServiceStatus', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'RemoveDiskReplicaPair', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:RemoveDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'CreateEnterpriseSnapshotPolicy', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/*'], ], ], ], [ 'apiName' => 'DescribeEnterpriseSnapshotPolicy', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/*'], ], ], ], [ 'apiName' => 'DeleteEnterpriseSnapshotPolicy', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], [ 'apiName' => 'DescribeSolutionInstanceConfiguration', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeSolutionInstanceConfiguration', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'FailoverDiskReplicaGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:FailoverDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'StartDiskReplicaGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:StartDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'StartDiskReplicaPair', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:StartDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'DescribeDiskReplicaPairProgress', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDiskReplicaPairProgress', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'DescribePairDrills', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribePairDrills', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#PairId}'], ], ], ], [ 'apiName' => 'StopDiskReplicaPair', 'description' => '', 'operationType' => 'none', 'ramAction' => [ 'action' => 'ebs:StopDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'QueryDedicatedBlockStorageClusterDiskThroughputStatus', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:QueryDedicatedBlockStorageClusterDiskThroughputStatus', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeDedicatedBlockStorageClusters', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDedicatedBlockStorageClusters', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/*'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], [ 'apiName' => 'FailoverDiskReplicaPair', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:FailoverDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'UpdateSolutionInstanceAttribute', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:UpdateSolutionInstanceAttribute', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/{#SolutionInstanceId}'], ], ], ], [ 'apiName' => 'ApplyLensService', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ApplyLensService', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'BindEnterpriseSnapshotPolicy', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:BindEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], [ 'apiName' => 'CreateDedicatedBlockStorageCluster', 'description' => '', 'operationType' => 'create', 'additionalActions' => [ ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], 'ramAction' => [ 'action' => 'ebs:CreateDedicatedBlockStorageCluster', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/*'], ], ], ], [ 'apiName' => 'CreateDiskReplicaGroup', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/*'], ], ], ], [ 'apiName' => 'TagResources', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:TagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/{#SolutionInstanceId}'], ], ], ], [ 'apiName' => 'DescribeEvents', 'description' => '', 'operationType' => 'none', 'ramAction' => [ 'action' => 'ebs:DescribeEvents', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeReplicaGroupDrills', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeReplicaGroupDrills', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#GroupId}'], ], ], ], [ 'apiName' => 'DescribeUserTagValues', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeUserTagValues', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ReprotectDiskReplicaPair', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ReprotectDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'StopDiskReplicaGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:StopDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'DescribeApps', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeApps', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DeleteApp', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DeleteDiskReplicaPair', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'DescribeUserTagKeys', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeUserTagKeys', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeMetricData', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeMetricData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListReports', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:ListReports', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'UpdateEnterpriseSnapshotPolicy', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:UpdateEnterpriseSnapshotPolicy', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ], ], ], [ 'apiName' => 'ListReplicaEdgeSupported', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:ListReplicaEdgeSupported', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeDiskReplicaGroups', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeDiskReplicaGroups', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/*'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'QueryDedicatedBlockStorageClusterInventoryData', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:QueryDedicatedBlockStorageClusterInventoryData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], [ 'apiName' => 'ChangeResourceGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ChangeResourceGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#dedicatedblockstorageclusterId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#diskreplicagroupId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#diskreplicapairId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/{#SolutionInstanceId}'], ], ], ], [ 'apiName' => 'DescribeLensMonitorDisks', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeLensMonitorDisks', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeRegions', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeRegions', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ListTagResources', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:ListTagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CreateDiagnoseReport', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateDiagnoseReport', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'AddDiskReplicaPair', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:AddDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'CreateDiskReplicaPair', 'description' => '', 'operationType' => 'create', 'additionalActions' => [ ['action' => 'ram:CreateServiceLinkedRole', 'validationType' => 'always'], ], 'ramAction' => [ 'action' => 'ebs:CreateDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/*'], ], ], ], [ 'apiName' => 'DeleteDiskReplicaGroup', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:DeleteDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'CreateApp', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:CreateApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ModifyDiskReplicaGroup', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyDiskReplicaGroup', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ], ], ], [ 'apiName' => 'UntagResources', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:UntagResources', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/{#SolutionInstanceId}'], ], ], ], [ 'apiName' => 'StartReplicaGroupDrill', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:StartReplicaGroupDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#GroupId}'], ], ], ], [ 'apiName' => 'DescribeDedicatedBlockStorageClusterDisks', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDedicatedBlockStorageClusterDisks', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ], ], ], [ 'apiName' => 'GetReport', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:GetReport', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeDiskReplicaPairs', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDiskReplicaPairs', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/*'], ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'DescribeDiskMonitorData', 'description' => '', 'operationType' => 'get', 'ramAction' => [ 'action' => 'ebs:DescribeDiskMonitorData', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'DescribeDiagnoseReport', 'description' => '', 'operationType' => 'list', 'ramAction' => [ 'action' => 'ebs:DescribeDiagnoseReport', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'StartPairDrill', 'description' => '', 'operationType' => 'create', 'ramAction' => [ 'action' => 'ebs:StartPairDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#PairId}'], ], ], ], [ 'apiName' => 'ModifyApp', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyApp', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'CancelLensService', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:CancelLensService', 'authLevel' => 'operate', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], [ 'apiName' => 'ClearPairDrill', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:ClearPairDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#PairId}'], ], ], ], [ 'apiName' => 'ClearReplicaGroupDrill', 'description' => '', 'operationType' => 'delete', 'ramAction' => [ 'action' => 'ebs:ClearReplicaGroupDrill', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#GroupId}'], ], ], ], [ 'apiName' => 'ModifyDiskReplicaPair', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:ModifyDiskReplicaPair', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ], ], ], [ 'apiName' => 'SetDedicatedBlockStorageClusterDiskThroughput', 'description' => '', 'operationType' => 'update', 'ramAction' => [ 'action' => 'ebs:SetDedicatedBlockStorageClusterDiskThroughput', 'authLevel' => 'resource', 'actionConditions' => [], 'resources' => [ ['validationType' => 'always', 'product' => 'EBS', 'resourceType' => 'All Resource', 'arn' => '*'], ], ], ], ], 'resourceTypes' => [ ['validationType' => 'always', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/{#EnterpriseSnapshotPolicyId}'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#ReplicaGroupId}'], ['validationType' => 'always', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/{#DedicatedBlockStorageClusterId}'], ['validationType' => 'always', 'resourceType' => 'EnterpriseSnapshotPolicy', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:enterprisesnapshotpolicy/*'], ['validationType' => 'always', 'resourceType' => 'Solution', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solution/*'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#ReplicaPairId}'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#PairId}'], ['validationType' => 'always', 'resourceType' => 'DedicatedBlockStorageCluster', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:dedicatedblockstoragecluster/*'], ['validationType' => 'always', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/{#SolutionInstanceId}'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/*'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#GroupId}'], ['validationType' => 'always', 'resourceType' => 'App', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:app/*'], ['validationType' => 'always', 'resourceType' => 'App', 'arn' => 'acs:ebs::{#accountId}:app/*'], ['validationType' => 'always', 'resourceType' => 'Lens', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:lens/*'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaGroup', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicagroup/{#diskreplicagroupId}'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/{#diskreplicapairId}'], ['validationType' => 'always', 'resourceType' => 'DiskReplicaPair', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:diskreplicapair/*'], ['validationType' => 'always', 'resourceType' => 'SolutionInstance', 'arn' => 'acs:ebs:{#regionId}:{#accountId}:solutioninstance/*'], ['validationType' => 'always', 'resourceType' => 'Disk', 'arn' => 'acs:ebs::{#accountId}:lens/*'], ], ], ];